Custom version of AS, intended to track the original source and fix some issues.
You need a C development toolchain, including make
. You also need Git. You need to copy a file from Makefile.def-samples
directory according to your platform to a file named Makefile.def
on the same level as Makefile
. You can then run the following commands:
make binaries
make install
Where the later will probably require administrative privileges. This has been tested on the following environments:
- Windows 10 Home and Windows Server 2019 (32- and 64-bit builds)
- Ubuntu 20.04 (64-bit build)
- Mac OS Catalina 10.15 (64-bit build)
This is only relevant for Sonic disassemblies based on older versions of the Sonic Retro community disassemblies.
More recent versions of AS have made a few changes that impact older disassemblies. Here are the changes and how to deal with them:
- AS by default will look for includes in the directory of the current file being assembled. This has an effect on files being included by other files inside a sibdirectory. In the S2 Git disassembly, this issue was dealt with in this commit, which just adds the disassembly's directory to the command line.
moveq
no longer silently sign-extends a value; instead, it gives an error if you do use a value that cannot be represented as a byte sign-extended to 32-bits. In the S2 Git disassembly, this issue was dealt with in this commit in the S2 Git disassembly.phase
/dephase
were changed to be a stack: you now need a matchingdephase
for everyphase
. This issue was dealt with in this commit in the S2 Git disassembly.- Adding a character constant to an integer results in a character constant, which can overflow the limits of a character and give an error. This issue was dealt with in this commit in the S2 Git disassembly.