English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 18 December 2019, 11:50   #1
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 1,628
Rygar AGA - Source Code Released & Discussion

Not sure what happened to the previous posts but here's a xmas gift for the coders.

https://www.amigagamedev.com/Downloa...170_src.tar.gz

Enjoy.
mcgeezer is offline  
Old 18 December 2019, 12:47   #2
Solo Kazuki
Registered User
Solo Kazuki's Avatar
 
Join Date: Sep 2004
Location: Poland
Posts: 714
You mean about your new project?
It was moved here.
Solo Kazuki is offline  
Old 18 December 2019, 12:54   #3
DamienD
Global Moderator

DamienD's Avatar
 
Join Date: Aug 2005
Location: London / Sydney
Age: 43
Posts: 16,468
Quote:
Originally Posted by mcgeezer View Post
Not sure what happened to the previous posts but <snip>
Quote:
Originally Posted by Solo Kazuki View Post
You mean about your new project?
It was moved here.
Exactly

Last edited by DamienD; 18 December 2019 at 13:00.
DamienD is offline  
Old 18 December 2019, 13:07   #4
Antiriad_UK
OCS forever!

Antiriad_UK's Avatar
 
Join Date: Mar 2019
Location: Birmingham, UK
Posts: 169
Quote:
Originally Posted by mcgeezer View Post
Not sure what happened to the previous posts but here's a xmas gift for the coders.

https://www.amigagamedev.com/Downloa...170_src.tar.gz

Enjoy.
I thought you said you weren't releasing the source?
Antiriad_UK is online now  
Old 18 December 2019, 13:15   #5
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 1,628
Quote:
Originally Posted by Antiriad_UK View Post
I thought you said you weren't releasing the source?
Not sure if i said that, just wouldnt release it straight away.
mcgeezer is offline  
Old 18 December 2019, 20:09   #6
phx
Natteravn

phx's Avatar
 
Join Date: Nov 2009
Location: Herford / Germany
Posts: 1,566
Quote:
Originally Posted by mcgeezer View Post
Not sure what happened to the previous posts but here's a xmas gift for the coders.
A great gesture! That's how homebrew game development should be done in 2019.
You should have started a new thread for it, otherwise the announcement disappears quickly in the Rygar-Mega-Thread.

Do you want to explain the "Vasm bugs" in the source to me? Maybe I could fix something.

Which NDK did you use for the system headers? NDK3.9 didn't work for me:
Code:
$ vasmm68k_mot -m68020 -x -I/usr/local/vbcc/sdk/NDK_3.9/include_i main.asm 
vasm 1.8g (c) in 2002-2019 Volker Barthelmann
vasm M68k/CPU32/ColdFire cpu backend 2.3f (c) 2002-2019 Frank Wille
vasm motorola syntax module 3.13 (c) 2002-2019 Frank Wille
vasm test output module 1.0 (c) 2002 Volker Barthelmann

error 68 in line 1 of "APTR": repeatedly defined symbol <ThisTask>
    called from line 79 of "/usr/local/vbcc/sdk/NDK_3.9/include_i/exec/execbase.i"
    included from line 32 of "/usr/local/vbcc/sdk/NDK_3.9/include_i/exec/exec.i"
    included from line 408 of "main.asm"
>\1        EQU     SOFFSET

error 68 in line 7 of "s/const.asm": repeatedly defined symbol <ExecBase>
    included from line 417 of "main.asm"
>ExecBase:    equ    4

error 68 in line 2 of "s/memory.asm": repeatedly defined symbol <MEMF_ANY>
    included from line 424 of "main.asm"
>MEMF_ANY:       equ     0
...
EDIT: Ok, I see. You used your own one, from the "Include" directory. Maybe you should have written in Readme.txt which options to use for the build.

Last edited by phx; 18 December 2019 at 20:12. Reason: :P
phx is offline  
Old 18 December 2019, 22:00   #7
DamienD
Global Moderator

DamienD's Avatar
 
Join Date: Aug 2005
Location: London / Sydney
Age: 43
Posts: 16,468
Quote:
Originally Posted by phx View Post
You should have started a new thread for it, otherwise the announcement disappears quickly in the Rygar-Mega-Thread.
Good idea and done
DamienD is offline  
Old 19 December 2019, 00:57   #8
dlfrsilver
CaptainM68K-SPS France
dlfrsilver's Avatar
 
Join Date: Dec 2004
Location: Melun nearby Paris/France
Age: 42
Posts: 8,317
Send a message via MSN to dlfrsilver
Quote:
Originally Posted by mcgeezer View Post
Not sure if i said that, just wouldnt release it straight away.
Thank you very much graeme for releasing the source code

Very appreciated !
dlfrsilver is offline  
Old 19 December 2019, 01:02   #9
robinsonb5
Registered User
 
Join Date: Mar 2012
Location: Norfolk, UK
Posts: 655
Wow - that's a classy move - massive respect!
robinsonb5 is offline  
Old 19 December 2019, 22:19   #10
jotd
This cat is no more
jotd's Avatar
 
Join Date: Dec 2004
Location: FRANCE
Age: 48
Posts: 3,526
I looked at the module replay part for my game, and made it work, thanks to the source.
jotd is offline  
Old 20 December 2019, 10:59   #11
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 1,628
Quote:
Originally Posted by phx View Post
Do you want to explain the "Vasm bugs" in the source to me? Maybe I could fix something.
It may just have been me having a senior moment but I do remember something odd with this.

Code:
HITPOINT_FRAMES;        dc.w    0		; queue of frames
			dc.l	0		;bug in VASM

HITPOINT_FRAMES_Q;        dc.w    0		; queue of frames
			
HITPOINT_RESTORE_PTRS:  dc.l    0,0

			;CNOP	0,4



HITPOINT_XPOS:          dc.w    0		; queue of x positions
			dc.l	0		; bug in VASM
			
HITPOINT_YPOS:          dc.w    0		; queue of y positions
			dc.l	0
In the code I wasn't able to reference HITPOINT_YPOS or HOTPOINT_FRAMES_Q unless I declared that long word as padding.

I was under a lot of time pressure for the compo so I just needed to get it working and that was the solution I came up with, chances are it isn't a VASM bug but it certainly had me stumped.

To check you'd need to assemble the code:

Code:
C:\Development\ToolChain\vasm.exe -kick1hunks -Fhunkexe -I C:\Development\Rygar\Include -o C:\Temp\test.exe C:\Development\Rygar\main.asm
mcgeezer is offline  
Old 20 December 2019, 11:11   #12
Pyromania
Moderator

Pyromania's Avatar
 
Join Date: Jan 2002
Location: Chicago, IL
Posts: 2,252
@mcgeezer

Respect, what a very nice gesture to the community.
Pyromania is offline  
Old 20 December 2019, 15:42   #13
phx
Natteravn

phx's Avatar
 
Join Date: Nov 2009
Location: Herford / Germany
Posts: 1,566
Quote:
Originally Posted by mcgeezer View Post
It may just have been me having a senior moment but I do remember something odd with this.
Maybe we should more often check the eyesight in our age. Or use a different font.

There is a semicolon behind HITPOINT_FRAMES and HITPOINT_FRAMES_Q, which has the effect that the "dc.w 0" is ignored. You can clearly see it in the vasm debug output (remove the -Fhunkexe option for it):
Code:
    b2de: symbol: HITPOINT_FRAMES LAB (0xb2de) sec=DATA
    b2de: data(4): 00 00 00 00
    b2e2: symbol: HITPOINT_FRAMES_Q LAB (0xb2e2) UNUSED sec=DATA
    b2e2: symbol: HITPOINT_RESTORE_PTRS LAB (0xb2e2) sec=DATA
    b2e2: data(4): 00 00 00 00
As you see there is only the longword defined after the HITPOINT_FRAMES label. The word is missing.

Quote:
Code:
C:\Development\ToolChain\vasm.exe -kick1hunks -Fhunkexe -I C:\Development\Rygar\Include -o C:\Temp\test.exe C:\Development\Rygar\main.asm
BTW, I also needed the options -m68020 and -DDISABLE_ENEMY_COLLISION=0 to avoid some errors: For example MOVEC (68010) instruction and DISABLE_ENEMY_COLLISION is undefined.
phx is offline  
Old 20 December 2019, 15:56   #14
mcgeezer
Registered User

 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 1,628
Quote:
Originally Posted by phx View Post
Maybe we should more often check the eyesight in our age. Or use a different font.

There is a semicolon behind HITPOINT_FRAMES and HITPOINT_FRAMES_Q, which has the effect that the "dc.w 0" is ignored. You can clearly see it in the vasm debug output (remove the -Fhunkexe option for it):
Code:
    b2de: symbol: HITPOINT_FRAMES LAB (0xb2de) sec=DATA
    b2de: data(4): 00 00 00 00
    b2e2: symbol: HITPOINT_FRAMES_Q LAB (0xb2e2) UNUSED sec=DATA
    b2e2: symbol: HITPOINT_RESTORE_PTRS LAB (0xb2e2) sec=DATA
    b2e2: data(4): 00 00 00 00
As you see there is only the longword defined after the HITPOINT_FRAMES label. The word is missing.


BTW, I also needed the options -m68020 and -DDISABLE_ENEMY_COLLISION=0 to avoid some errors: For example MOVEC (68010) instruction and DISABLE_ENEMY_COLLISION is undefined.


Ummmm that may have been it, it was so long ago I very much doubt it is a bug in vasm... I effectively labelled the lines of code where there were problems.

In the source you downloaded is DISABLE_ENEMY_COLLISION not defined in the source of the main file?

Code:
ENABLE_DEBUG:           equ     0       ; Enables system up debugging with MonAm
FAST_LOAD:              equ    	1              ; Read from floppy
ENABLE_MULTIDRIVE:	equ	0		; Must be set to 1 for release.
DISABLE_ENEMY_COLLISION equ     0              ; Rygar can't be killed                                 
DEBUG_UNLIMITED_LIVES:  equ     0
DEBUG_OBS_DISABLE:      equ     0            ; Rygar can move through obstacles
DISABLE_GRAVITY:        equ     0                                    ; Disable gravity - useful for round debugging.
ENABLE_CHEAT:		equ	0

Glad you got it assembled though and agree I missed the target architecture argument (I have a rotten cold at the moment so I'm not firing on all cyclinders).

Graeme
mcgeezer is offline  
Old 20 December 2019, 17:05   #15
phx
Natteravn

phx's Avatar
 
Join Date: Nov 2009
Location: Herford / Germany
Posts: 1,566
Quote:
Originally Posted by mcgeezer View Post
In the source you downloaded is DISABLE_ENEMY_COLLISION not defined in the source of the main file?
No. It's definitely missing.

(I'm wondering if vasm's IFEQ directive shouldn't treat an undefined symbol as zero by default. Maybe it should, if other assemblers do the same...)

Quote:
(I have a rotten cold at the moment so I'm not firing on all cyclinders).
Hope you get well soon! Would be too bad over the holidays...
phx is offline  
Old 20 December 2019, 17:16   #16
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 1,582
Quote:
Originally Posted by mcgeezer View Post
(I have a rotten cold at the moment so I'm not firing on all cyclinders).
Get well soon!
And thanks for the complete source code. I'll definitely take a look
Quote:
Originally Posted by phx View Post
(I'm wondering if vasm's IFEQ directive shouldn't treat an undefined symbol as zero by default. Maybe it should, if other assemblers do the same...)
Hmm, that might be useful actually. It would probably need to throw a warning to prevent typo-confusion, though.
roondar is offline  
Old 21 December 2019, 08:36   #17
turrican3
Moon 1969 = amiga 1985

turrican3's Avatar
 
Join Date: Apr 2007
Location: belgium
Age: 44
Posts: 3,632
respect for what you did thanks mcgizzer, i hope it will help to create new games fromit.
turrican3 is offline  
Old 21 December 2019, 10:58   #18
wairnair
Registered User

 
Join Date: Jul 2017
Location: Budapest
Posts: 302
Much appreciated, thank you
wairnair is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Discussion: Rygar AGA Edition mcgeezer Coders. Contest 1710 03 February 2020 15:56
Adebug for Amiga source code released frost242 News 5 25 January 2018 18:24
DPaint 1 source code released Jope News 18 27 July 2015 03:37
X-Copy source code released! mr.vince News 29 13 March 2013 09:16
Modplug Tracker source code released Kodoichi Amiga scene 3 27 January 2004 00:29

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 20:39.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.
Page generated in 0.09677 seconds with 13 queries