These commands instructs the disassembly tool how to map a certain memory section into disassembly output. The literal1 and literal2 values specify the memory range. Be aware, literal1 is inclusive, but literal2 is exclusive.
Command | Description |
---|---|
MD literal1 literal2 |
Creates a disassembly section — this section of memory is represented as a flow id Z80 instructions. |
MB literal1 literal2 |
Creates a byte section. The contents of this memory area is displayed as bytes with the .defb pragma. |
MW literal1 literal2 |
Creates a word section. The contents of this memory area is displayed as bytes with the .defw pragma. |
MS literal1 literal2 |
Skip section — the view displays a simple .skip pragma for the section. |
MC literal1 literal2 |
Calculator section. The disassembler takes these bytes into account as the byte code of the ZX Spectrum’s RST #28 calculator. |
MG literal1 literal2 |
Creates a .defg section. The contents of this memory area is displayed as single bytes with the .defg pragma. |
MG1 literal1 literal2 |
The same as MG |
MG2 literal1 literal2 |
Creates a .defg section. The contents of this memory area is displayed with the .defg pragma as a group of two bytes. |
MG3 literal1 literal2 |
Creates a .defg section. The contents of this memory area is displayed with the .defg pragma as a group of three bytes. |
MG4 literal1 literal2 |
Creates a .defg section. The contents of this memory area is displayed with the .defg pragma as a group of four bytes. |
The IDE saves the memory map you set up with these commands into the annotations file of your project. The ZX Spectrum ROMs within SpectNetIDE ship with their memory map set, but you can change them, too.
If your change regards to ROM addresses, the .disann
file of the specific ROM file is changed; otherwise, memory map modifications go to your default annotation file (Annotations.disann
in a new project).
Hint: When you define memory maps, avoid those that overlap the ROM/RAM boundary.