- 1. Introduction
- 2. Assembler Directives
- 2.1.
.8BIT
- 2.2.
.16BIT
- 2.3.
.24BIT
- 2.4.
.ACCU 8
- 2.5.
.INDEX 8
- 2.6.
.ASM
- 2.7.
.ENDASM
- 2.8.
.DBRND 20, 0, 10
- 2.9.
.DWRND 20, 0, 10
- 2.10.
.DBCOS 0.2, 10, 3.2, 120, 1.3
- 2.11.
.DBSIN 0.2, 10, 3.2, 120, 1.3
- 2.12.
.DWCOS 0.2, 10, 3.2, 1024, 1.3
- 2.13.
.DWSIN 0.2, 10, 3.2, 1024, 1.3
- 2.14.
.NAME "NAME OF THE ROM"
- 2.15.
.ROMBANKS 2
- 2.16.
.RAMSIZE 0
- 2.17.
.EMPTYFILL $C9
- 2.18.
.CARTRIDGETYPE 1
- 2.19.
.COUNTRYCODE 1
- 2.20.
.VERSION 1
- 2.21.
.DESTINATIONCODE 1
- 2.22.
.NINTENDOLOGO
- 2.23.
.GBHEADER
- 2.24.
.SMSHEADER
- 2.25.
.LICENSEECODEOLD $1A
- 2.26.
.LICENSEECODENEW "1A"
- 2.27.
.COMPUTEGBCHECKSUM
- 2.28.
.COMPUTESMSCHECKSUM
- 2.29.
.COMPUTESNESCHECKSUM
- 2.30.
.SMSTAG
- 2.31.
.SDSCTAG 1.0, "DUNGEON MAN", "A wild dungeon exploration game", "Ville Helin"
- 2.32.
.COMPUTEGBCOMPLEMENTCHECK
- 2.33.
.INCDIR "/usr/programming/gb/include/"
- 2.34.
.INCLUDE "cgb_hardware.i"
- 2.35.
.INCBIN "sorority.bin"
- 2.36.
.INPUT NAME
- 2.37.
.BACKGROUND "parallax.gb"
- 2.38.
.UNBACKGROUND $1000 $1FFF
- 2.39.
.FAIL
- 2.40.
.FCLOSE FP_DATABIN
- 2.41.
.FOPEN "data.bin" FP_DATABIN
- 2.42.
.FREAD FP_DATABIN DATA
- 2.43.
.FSIZE FP_DATABIN SIZE
- 2.44.
.MACRO TEST
- 2.45.
.ENDM
- 2.46.
.SHIFT
- 2.47.
.FASTROM
- 2.48.
.SLOWROM
- 2.49.
.SMC
- 2.50.
.HIROM
- 2.51.
.LOROM
- 2.52.
.BASE $80
- 2.53.
.BLOCK "Block1"
- 2.54.
.ENDB
- 2.55.
.BANK 0 SLOT 1
- 2.56.
.SLOT 1
- 2.57.
.ROMBANKSIZE $4000
- 2.58.
.ORG $150
- 2.59.
.ORGA $150
- 2.60.
.DS 256, $10
- 2.61.
.DSB 256, $10
- 2.62.
.DSTRUCT waterdrop INSTANCEOF water DATA "tingle", 40, 120
- 2.63.
.DSW 128, 20
- 2.64.
.DB 100, $30, %1000, "HELLO WORLD!"
- 2.65.
.BYT 100, $30, %1000, "HELLO WORLD!"
- 2.66.
.DBM filtermacro 1, 2, "encrypt me"
- 2.67.
.SYM SAUSAGE
- 2.68.
.SYMBOL SAUSAGE
- 2.69.
.BR
- 2.70.
.BREAKPOINT
- 2.71.
.ASCIITABLE
- 2.72.
.ENDA
- 2.73.
.ASCTABLE
- 2.74.
.ASC "HELLO WORLD!"
- 2.75.
.DW 16000, 10, 255
- 2.76.
.WORD 16000, 10, 255
- 2.77.
.DWM filtermacro 1, 2, 3
- 2.78.
.DEFINE IF $FF0F
- 2.79.
.DEF IF $FF0F
- 2.80.
.EQU IF $FF0F
- 2.81.
.REDEFINE IF $0F
- 2.82.
.REDEF IF $0F
- 2.83.
.IF DEBUG == 2
- 2.84.
.IFDEF IF
- 2.85.
.IFEXISTS "main.s"
- 2.86.
.UNDEFINE DEBUG
- 2.87.
.UNDEF DEBUG
- 2.88.
.IFNDEF IF
- 2.89.
.IFDEFM \2
- 2.90.
.IFNDEFM \2
- 2.91.
.IFEQ DEBUG 2
- 2.92.
.IFNEQ DEBUG 2
- 2.93.
.IFLE DEBUG 2
- 2.94.
.IFLEEQ DEBUG 2
- 2.95.
.IFGR DEBUG 2
- 2.96.
.IFGREQ DEBUG 2
- 2.97.
.ELSE
- 2.98.
.ENDIF
- 2.99.
.REPEAT 6
- 2.100.
.REPT 6
- 2.101.
.ENDR
- 2.102.
.ENUM $C000
- 2.103.
.ENDE
- 2.104.
.STRUCT enemy_object
- 2.105.
.ENDST
- 2.106.
.MEMORYMAP
- 2.107.
.ENDME
- 2.108.
.ROMBANKMAP
- 2.109.
.ENDRO
- 2.110.
.SEED 123
- 2.111.
.SECTION "Init" FORCE
- 2.112.
.RAMSECTION "Vars" BANK 0 SLOT 1 ALIGN 4
- 2.113.
.ENDS
- 2.114.
.ROMGBC
- 2.115.
.ROMGBCONLY
- 2.116.
.ROMDMG
- 2.117.
.ROMSGB
- 2.118.
.EXPORT work_x
- 2.119.
.PRINTT "Here we are...\n"
- 2.120.
.PRINTV DEC DEBUG+1
- 2.121.
.OUTNAME "other.o"
- 2.122.
.SNESHEADER
- 2.123.
.ENDSNES
- 2.124.
.SNESNATIVEVECTOR
- 2.125.
.ENDNATIVEVECTOR
- 2.126.
.SNESEMUVECTOR
- 2.127.
.ENDEMUVECTOR
- 2.1.
- 3. Assembler Syntax
- 4. Error Messages
- 5. Supported ROM/RAM/Cartridge Types (WLA-GB)
- 6. Bugs
- 7. Files
- 8. Temporary Files
- 9. Compiling
- 10. Linking
- 11. Arithmetics
- 12. Binary to DB Conversion
- 13. Things you should know about coding for…
- 14. WLA Flags
- 15. Extra compile time definitions
- 16. Good things to know about WLA
- 17. WLA DX’s architectural overview
- 18. Legal Note