@@ -46,16 +46,28 @@ FORMATS {
4646}
4747
4848SEGMENTS {
49+ # Interpreter ZP variables
4950 ZEROPAGE: load = ZP, type = zp, optional = yes;
51+ # ZP variables used by the IDE and compiler
5052 IDEZP: load = ZP, type = zp, optional = yes;
53+ # 4 bytes for the binary header written when compiling from the IDE
5154 PREHEAD: load = PREMAIN, type = rw, optional = yes, define = yes;
55+ # The jump-table of the interpreter
5256 JUMPTAB: load = MAIN, type = ro, define = yes, align = $100;
57+ # The interpreter functions
5358 RUNTIME: load = MAIN, type = rw, define = yes;
59+ # The interpreter data
5460 DATA: load = MAIN, type = rw, define = yes;
61+ # The program bytecode
5562 BYTECODE: load = MAIN, type = rw, define = yes;
63+ # This is only for the IDE, main IDE assembly code
5664 CODE: load = MAIN, type = rw, define = yes;
65+ # Unused, available for including data that should be page aligned.
5766 ALIGNDATA:load = MAIN, type = ro, optional = yes, define = yes, align = $100;
67+ # BSS, used for P/M graphics state
5868 BSS: load = MAIN, type = bss, optional = yes, define = yes;
69+ # HEAP, used to store program variables
5970 HEAP: load = MAIN, type = bss, optional = yes, define = yes, align = $100;
71+ # The interpreter main loop, loaded in ZP.
6072 INTERP: load = INTERP, type = rw;
6173}
0 commit comments