sikthehedgehog / dragon

Dragon's Castle
zlib License
28 stars 1 forks source link

Find a suitable alternative to asm68k #2

Open sikthehedgehog opened 8 years ago

sikthehedgehog commented 8 years ago

Currently the game needs to be built with asm68k which was leaked from the Psy-Q devkit long ago. The legality of that is questionable, so it'd be wise to switch to another assembler :P But we need to find one that happens to be compatible with the particular syntax here (since aside from the basics, 68000 assemblers tend to differ a lot, e.g. how local labels are defined).

As far as I'm aware asmx should be compatible enough with asm68k to be worth trying... if it wasn't for the fact that it's a buggy mess that I recall correctly (I once tried to do something with it, and it was already bugging up with the TMSS disable code, like bytes weren't even in the correct order). If we want to switch to this then somebody may need to fix those bugs first.

PS: just reading that maybe there was something wrong with the arguments passed to asmx back then? I honestly forgot what I used at the time but I should recheck, maybe that wasn't a pure blob and I didn't realize back then.

Edit2: Oh, and if you go with asmx, ABSOLUTELY DON'T FORGET TO ALWAYS PASS -b 0 as an option. If you don't it generates S-Records in 68k mode, which is annoying :v

sikthehedgehog commented 8 years ago

Just gave it a try again (after fixing some obvious warnings) and... the TMSS code bug appeared again. Ugh. Also after messing a bit I noticed that it spazzes out if I write #"SEGA" instead of #'SEGA'. I wonder if making it understand double quotes is easy to implement into it?

Not sure how hard it'd be to fix up asmx to be on par with asm68k, but I guess it's the most feasible option (the alternatives are rewriting essentially the entire game to conform to a new syntax, or to build a whole new assembler from scratch, unless somebody has another suggestion).