<--  back   Last regenerated: 2017-07-25 18:23:10 kio

zasm - Z80 Assembler – Version 4.0

Targets

#target ACE

#target ACE
Assembler directives: #code
Including C Source Files: #code
#code VRAM_COPY, $2000, $400 Assembler directives: #code
Including C Source Files: #code
#code VRAM, $2400, $400 Assembler directives: #code
Including C Source Files: #code
#code CRAM_COPY, $2800, $400 Assembler directives: #code
Including C Source Files: #code
#code CRAM, $2C00, $400 Assembler directives: #code
Including C Source Files: #code
#code RAM_COPIES, $3000, $C00 Assembler directives: #code
Including C Source Files: #code
#code SYSVARS, $3C00, $40 Assembler directives: #code
Including C Source Files: #code
#code RAM, $3C40, ramsize - $840

This target creates a snapshot file for use with a Jupiter Ace emulator.

This format may be reworked to remove the necessity to include the empty mirror pages

The ram of the Jupiter Ace starts with several copies of the video ram and the character ram, before the usable area at address $3C00 is reached.

The Command Line Options: --z80
Pseudo instructions: .z80, .z180 and .8080
Targets: #target Z80
Z80 registers and some settings are stored in the first page at $2000. Since all system variable locations are included in this file, there is probably no need to define a Assembler directives: #data
Including C Source Files: #data
#data segment, except Assembler directives: #if, #elif, #else, #endif
Pseudo instructions: if, endif
if you include c sources.

Allowed ram sizes are 3k, 3+16=19k and 3+32=35k. This results in a total of $2000, $6000 or $A000 bytes in all code segments, including mirrors.

See the Jupiter Ace .ace template file: template_ace.asm

Basic layout of the ace file:

#target ACE
Assembler directives: #code
Including C Source Files: #code
#code VRAM_COPY, $2000, $400 ; ; this is a "copy" of the video ram at $2400. ; it should be empty except for the Command Line Options: --z80
Pseudo instructions: .z80, .z180 and .8080
Targets: #target Z80
Z80 registers which are stuffed in here. ; see the template file for the layout of this data. ; Assembler directives: #code
Including C Source Files: #code
#code VRAM, $2400, $400 ; ; this is the actually loaded data for the video ram. ; you may put here a greeting message (in ascii) which is instantaneous visible. ; Assembler directives: #code
Including C Source Files: #code
#code CRAM_COPY, $2800, $400 ; ; a copy of the character ram which follows. must be empty. ; Assembler directives: #code
Including C Source Files: #code
#code CRAM, $2C00, $400 ; ; the character ram. ; simply #insert the file "#insert: Examples:
#assert: Example:
incbin: Examples:
Examples/jupiter_ace_character_ram.bin" here. ; Assembler directives: #code
Including C Source Files: #code
#code RAM_COPIES, $3000, $C00 ; ; 3 copies of the ram at $3C00. must be empty ; Assembler directives: #code
Including C Source Files: #code
#code SYSVARS, $3C00, $40 ; ; the Forth system variables. must be Pseudo instructions: defl, set and '='
Labels: SET
set up properly. ; see the template file for the layout. For the values ask someone else... :-| ; Assembler directives: #if, #elif, #else, #endif
Pseudo instructions: if, endif
If you can give some advice or a sample setup please send email to Kio. Thanks! ; Assembler directives: #if, #elif, #else, #endif
Pseudo instructions: if, endif
if you don't use the Forth rom then you may use the whole rom as you like. ; Assembler directives: #code
Including C Source Files: #code
#code RAM, $3C40, ramsize - $840 ; ; the free ram after the system variables.

Valid HTML   Valid CSS