Rev 129 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download
# file opened: dir_align.asm
1 0000 DEVICE ZXSPECTRUM48
2 0000 org $8000
3 8000 ; 17 bytes block of "default" memory values
4 8000 41 42 43 44 db "ABCDEFGHIJKLMNOPZ"
4 8004 45 46 47 48
4 8008 49 4A 4B 4C
4 800C 4D 4E 4F 50
4 8010 5A
5 8011
dir_align.asm(6): error: [ALIGN] Illegal align: 0
6 8011 ALIGN 0 ; error
dir_align.asm(7): error: [ALIGN] Illegal align fill-byte: 1,-1
7 8011 ALIGN 1,-1 ; error
dir_align.asm(8): error: [ALIGN] Illegal align fill-byte: 1,256
8 8011 ALIGN 1,256 ; error
dir_align.asm(9): error: [ALIGN] Illegal align: 3
9 8011 ALIGN 3 ; error
dir_align.asm(10): error: [ALIGN] Illegal align: 5,10
10 8011 ALIGN 5,10 ; error
dir_align.asm(11): error: [ALIGN] Illegal align: $10000
11 8011 ALIGN $10000 ; error
12 8011
13 8011 ; re-run over the initial values again with different ALIGN directives
14 8011 org $8000
15 8000 61 db 'a' ; [8000] = 'a'
16 8001 ALIGN 1 ; effective nothing should happen here
17 8001 ALIGN 1, '!' ; and neighter here
18 8001 42 ALIGN 2 ; this should advance to $8002 + preserve memory
19 8002 62 62 ALIGN 4, 'b' ; [8002] = [8003] = 'b'
dir_align.asm(20): error: [ALIGN] Illegal align: 7, '!'
20 8004 ALIGN 7, '!' ; error
21 8004 45 46 47 48 ALIGN 8 ; advance to 8008, preserve memory
22 8008 63 63 63... ALIGN 16, 'c' ; [8008..800F] = 'c'
23 8010 ALIGN ; should not make any difference (already at MOD 4 address)
24 8010
25 8010 ; the final result should be "aBbbEFGHccccccccZ"
26 8010
27 8010 SAVEBIN "dir_align.bin", $8000, 17 ; modified area is saved into BIN file
28 8010
dir_align.asm(29): error: [ALIGN] fill-byte expected after comma: ALIGN 1,
29 8010 ALIGN 1, ; error
30 8010
# file closed: dir_align.asm
Value Label
------ - -----------------------------------------------------------