Blame | Last modification | View Log | Download
# file opened: slot_by_address.asm1 0000 DEVICE NONE ; set "none" explicitly, to avoid "global device" featureslot_by_address.asm(2): warning: SLOT only allowed in real device emulation mode (See DEVICE)2 0000 SLOT $4000 ;; warning about non-device modeslot_by_address.asm(3): warning: MMU is allowed only in real device emulation mode (See DEVICE)3 0000 MMU $4000, 1 ;; warning about non-device mode4 0000 DEVICE ZXSPECTRUM1285 00006 0000 ; mark banks content with values for checking results7 0000 MMU 0, 0, 07 0000 30 30 DW '00'8 0002 MMU 0, 1, 08 0000 31 31 DW '11'9 0002 MMU 0, 2, 09 0000 32 32 DW '22'10 0002 MMU 0, 3, 010 0000 33 33 DW '33'11 0002 MMU 0, 4, 011 0000 34 34 DW '44'12 0002 MMU 0, 5, 012 0000 35 35 DW '55'13 0002 MMU 0, 6, 013 0000 36 36 DW '66'14 0002 MMU 0, 7, 014 0000 37 37 DW '77'15 0002 ; remap ZX128 to banks 0:1:2:316 0002 MMU 0 3, 017 0002 ASSERT '00' == {$0000} && '11' == {$4000} && '22' == {$8000} && '33' == {$C000}18 000219 0002 ; test SLOT with valid values20 0002 SLOT $000020 0002 PAGE 421 0002 SLOT $400021 0002 PAGE 522 0002 SLOT $800022 0002 PAGE 623 0002 SLOT $C00023 0002 PAGE 724 0002 ASSERT '44' == {$0000} && '55' == {$4000} && '66' == {$8000} && '77' == {$C000}25 000226 0002 ; test MMU with valid values27 0002 MMU $0000 w, 128 0002 MMU $4000 w, 229 0002 MMU $8000 w, 330 0002 MMU $C000 w, 431 0002 ASSERT '11' == {$0000} && '22' == {$4000} && '33' == {$8000} && '44' == {$C000}32 000233 0002 MMU $0000 $C000, 234 0002 ASSERT '22' == {$0000} && '33' == {$4000} && '44' == {$8000} && '55' == {$C000}35 000236 0002 ; test with invalid value (address of start of slot must be exact)slot_by_address.asm(37): error: [SLOT] Slot number must be in range 0..3, or exact starting address of slot37 0002 SLOT $1000slot_by_address.asm(38): error: [SLOT] Slot number must be in range 0..3, or exact starting address of slot38 0002 SLOT 4slot_by_address.asm(39): error: [MMU] Slot number(s) must be in range 0..3 (or exact starting address of slot) and form a range39 0002 MMU $1000, 0slot_by_address.asm(40): error: [MMU] Slot number(s) must be in range 0..3 (or exact starting address of slot) and form a range40 0002 MMU 4, 041 0002# file closed: slot_by_address.asmValue Label------ - -----------------------------------------------------------