IsoFrieze / SMWDisX

SMW Disassembly X
143 stars 15 forks source link

Compiling instructions... #15

Open chrisroode opened 1 year ago

chrisroode commented 1 year ago

Hello, I cloned this repository, and after searching the web, I decided to try compiling the assembly with asar to see if I had a working setup. I got a long list of fatal errors, making me think I'm not configured right. Can you add your compiling instructions so I can help troubleshooting this?

Here's the std output.

$asar smw.asm macros.asm:133: error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:125): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:127): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:129): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:138): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:140): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:142): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:147): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:149): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:151): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:176): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:178): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:180): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:185): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:187): error: (Edefine_not_found): Define '_VER' wasn't found. macros.asm:14 (called from bank_00.asm:189): error: (Edefine_not_found): Define '_VER' wasn't found. bank_00.asm:598: error: (Edefine_not_found): Define '_VER' wasn't found. bank_00.asm:622: error: (Edefine_not_found): Define '_VER' wasn't found. bank_00.asm:1261: error: (Edefine_not_found): Define '_VER' wasn't found. bank_00.asm:2090: error: (Edefine_not_found): Define '_VER' wasn't found. bank_00.asm:2693: error: (Edefine_not_found): Define '_VER' wasn't found. bank_00.asm:2693: error: (Elimit_reached): Over 20 errors detected. Aborting. A fatal error was detected while assembling the patch. Assembling aborted. Your ROM has not been modified. $

I'm building on macOS Catalina. asar passed it's unit tests.

MacaylaMarvelous81 commented 1 year ago

I think the 'How to Assemble' section in the README used to work as instructions, but it seems to be out of date. If you want to use asar directly, you need to define _VER, like this:

asar -wno1009 -wno1018 --fix-checksum=off --symbols=nocash --define _VER=!__VER_U smw.asm SMW_U.smc

It used to be defined in smw.asm, but it was removed in 0aa2baf since PATCH.bat was made to assemble all versions at once. The sh script also seems to be out of date.