; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦

; enum MB02_HW_PORTS
DMA:             equ 0Bh
FDC:             equ 0Fh
MOT:             equ 13h
RAM:             equ 17h
FDT:             equ 2Fh
REZ:             equ 33h
FDS:             equ 4Fh
FDD:             equ 6Fh

; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦

; enum ZX_HW_PORTS
ULA:             equ 0FEh

; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦

; enum ZX128_HW_PORTS
PAGE:            equ 7FFDh

;
; File Name   : D:\!Archive\sinclair\mb02_docs\mb02_rom\mb02.rom
; Format      : Binary File
; Base Address: 0000h Range: 0000h - 0800h Loaded length: 0800h

; Processor       : z80 []
; Target assembler: Zilog Macro Assembler

; ===========================================================================

; Segment type: Pure code
                segment ROM_CODE

; --------------- S U B R O U T I N E ---------------------------------------


startup:
                di
                ld      a, 0C3h         ; Z80DMA command: WR6: Reset
                out     (DMA), a
                ld      a, 0D0h         ; WD2797 command: ForceInterrupt(Terminate without Interrupt)
                out     (FDC), a
                xor     a
                ld      i, a
                out     (MOT), a        ; Stop all floppy motors and disable selection of the any floppy drive
                out     (ULA), a        ; Set black border
                ld      hl, 5AFFh
                ld      de, 5AFEh
                ld      bc, 1AFFh
                ld      (hl), a
                lddr                    ; Clear videoram (black screen)
                in      a, (ULA)
                cpl
                and     1Fh             ; Check any key
                jr      nz, prepare_depack

ram_test_start:
                ld      de, 608h
                ld      bc, PAGE
                out     (c), a

ram_test_loop:                          ; CODE XREF: startup+33j startup+37j
                                        ; startup+4Aj
                cpl
                ld      (hl), a
                xor     (hl)
                ld      (hl), a
                xor     (hl)
                jr      nz, ram_fault
                inc     l
                jp      nz, ram_test_loop
                inc     h
                jp      nz, ram_test_loop
                ld      h, 0C0h         ; RAM pages start address
                ld      a, e
                cp      d
                jr      nz, no_page5    ; Don't test RAM page 5 again
                dec     e

no_page5:                               ; CODE XREF: startup+3Ej
                cp      3               ; Don't test RAM page 2 again
                jr      nz, no_page2
                dec     e

no_page2:                               ; CODE XREF: startup+43j
                xor     a
                dec     e
                out     (c), e
                jr      nz, ram_test_loop

prepare_depack:                         ; CODE XREF: startup+21j
                ld      sp, 0C000h
                ld      hl, 6Ah
                ld      de, depacker
                ld      bc, 796h
                push    de
                ldir
                ret
; End of function startup


; --------------- S U B R O U T I N E ---------------------------------------


ram_fault:                              ; CODE XREF: startup+30j ram_fault+Cj
                ld      a, e
                out     (ULA), a

delay1:                                 ; CODE XREF: ram_fault+3j
                djnz    $
                cpl
                out     (ULA), a
                ld      b, 7

delay2:                                 ; CODE XREF: ram_fault+Aj
                djnz    $
                jr      ram_fault
; End of function ram_fault

; end of 'ROM_CODE'

; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
; ===========================================================================

; Segment type: Pure code
                segment RAM_CODE
                org 842Bh

depacker:                               ; DATA XREF: startup+52o
                ld      hl, 8BAEh
                ld      de, 8BFDh

loc_8431:                               ; CODE XREF: RAM_CODE:8437j
                                        ; RAM_CODE:8454j
                dec     hl
                dec     de
                ld      a, (hl)
                ld      (de), a
                sub     2Dh ; '-'
                jr      nz, loc_8431
                dec     hl
                or      (hl)
                jr      z, loc_8451
                dec     hl
                push    hl
                ld      l, (hl)
                ld      c, a
                and     7
                ld      h, a
                inc     hl
                add     hl, de
                xor     c
                rrca
                rrca
                rrca
                add     a, 3
                ld      c, a
                lddr
                inc     de
                pop     hl

loc_8451:                               ; CODE XREF: RAM_CODE:843Bj
                sbc     hl, de
                add     hl, de
                jr      nz, loc_8431
                ld      hl, 8BFDh
                ld      de, 980Fh

loc_845C:                               ; CODE XREF: RAM_CODE:8462j
                                        ; RAM_CODE:847Fj
                dec     hl
                dec     de
                ld      a, (hl)
                ld      (de), a
                sub     1Ah
                jr      nz, loc_845C
                dec     hl
                or      (hl)
                jr      z, loc_847C
                dec     hl
                push    hl
                ld      l, (hl)
                ld      c, a
                and     7
                ld      h, a
                inc     hl
                add     hl, de
                xor     c
                rrca
                rrca
                rrca
                add     a, 3
                ld      c, a
                lddr
                inc     de
                pop     hl

loc_847C:                               ; CODE XREF: RAM_CODE:8466j
                sbc     hl, de
                add     hl, de
                jr      nz, loc_845C
                jp      9779h           ; Starting address after unpacking
; end of 'RAM_CODE'

; ===========================================================================

; Segment type: Regular
                segment RAM_DATA
                org 8484h
                db 0C3h,0CAh, 95h,   4, 14h, 20h, 2Dh, 67h, 1Ah, 51h, 20h
                db  0Eh,   8, 2Dh,   8,0D8h,   2, 38h, 2Dh,0F2h,0FFh,0D6h
                db  0Ch, 2Dh,0B4h, 13h, 1Ah,0BAh,0B9h, 1Ah,0F9h, 19h, 1Ah
                db    3,0CFh, 19h, 1Ah,   1,0B3h, 19h, 1Ah,0BAh, 99h, 1Ah
                db 0A5h, 59h, 1Ah,   6,0F8h, 1Ah, 9Eh, 29h, 1Ah, 75h, 43h
                db  1Ah,   6,   8, 1Ah, 59h, 0Dh, 1Ah,0FCh,   0,0F8h, 5Ch
                db    8, 2Dh,0F8h,0E4h, 1Ah, 75h, 9Bh, 1Ah, 6Eh,0FBh, 1Ah
                db  9Eh, 59h, 1Ah, 36h, 63h, 1Ah,0CEh, 64h, 1Ah, 89h, 81h
                db  1Ah, 90h, 59h, 55h,   8, 2Dh, 89h,0F9h, 1Ah, 73h, 8Ch
                db  1Ah,   8,   7, 3Eh, 18h, 1Ah, 48h, 61h, 18h, 1Ah, 1Fh
                db  5Ah, 18h, 1Ah, 0Fh, 76h,   8, 2Dh, 1Bh,0FCh,   8, 2Dh
                db  37h, 10h, 1Ah,   1,   6, 58h, 1Ah, 18h, 22h, 18h, 1Ah
                db  48h, 4Dh, 69h, 69h, 69h, 69h, 76h,   8, 2Dh, 3Fh,   6
                db  38h, 1Ah,   0, 0Ch, 1Ah,0FCh, 0Bh, 1Ah, 92h, 25h, 1Ah
                db  75h,0FBh, 1Ah,0DEh,0F8h, 1Ah, 75h, 23h, 1Ah,   1,0B7h
                db  17h, 1Ah, 80h, 8Bh,0F8h, 1Ah,0D6h, 61h, 1Ah, 36h, 33h
                db  1Ah,0CFh, 51h, 1Ah, 0Dh, 99h, 2Fh, 13h, 1Ah,   7, 18h
                db 0C8h, 79h, 1Ah,0CFh, 59h, 1Ah,0BAh, 39h, 1Ah,0C3h,0C1h
                db  19h, 1Ah,0DBh,0C1h, 19h, 1Ah, 9Eh,   9, 1Ah,0C1h,0C9h
                db  1Ah,0BAh, 86h, 28h, 2Dh,0FFh,0E7h, 1Ah,   7,0BAh, 59h
                db  1Ah, 1Fh,0B3h, 21h, 1Ah, 45h, 18h, 1Ah,   7, 14h, 18h
                db  1Ah,0ACh, 11h, 1Ah,0C0h,0FFh,   1,   6, 20h, 1Ah,0A5h
                db    9, 1Ah, 22h, 38h, 1Ah, 4Fh, 7Bh, 11h, 1Ah, 4Fh,   6
                db 0B0h, 1Ah,0C0h,   6, 38h, 1Ah, 89h, 19h, 1Ah,0FFh, 5Fh
                db    2,   8, 2Dh, 7Bh,0F9h, 1Ah, 3Eh,   8, 1Ah,0A5h, 19h
                db  1Ah,   7, 24h,0E7h,0BDh,0B0h,0C0h,   3, 0Ch, 3Dh, 83h
                db  31h,0F0h,0C0h,   3,   7, 18h, 66h, 11h, 1Ah,   1, 98h
                db  33h, 66h,   9, 1Ah, 0Fh, 19h,0E3h, 3Dh, 5Fh, 41h, 1Ah
                db  3Ch,0CEh, 6Ch,   0, 3Ch, 31h, 1Ah,   0, 36h,0D8h, 0Dh
                db  10h, 1Ah, 36h,0CEh, 70h, 5Fh,   9, 1Ah, 36h,0C3h, 78h
                db  58h,   9, 1Ah, 3Ch,0DEh, 6Ch, 43h,0A1h, 1Ah, 3Ch,0F9h
                db  26h, 23h, 2Dh,0D3h,0EAh, 1Ah,   7, 48h,   0,   8, 1Ah
                db  4Dh, 48h, 30h, 18h, 1Ah, 0Fh, 0Dh, 18h, 1Ah,   3, 3Ch
                db  1Bh, 18h, 1Ah, 18h,   6,0A8h, 1Ah,0C1h,0FFh,   0,   0
                db  3Dh, 10h, 1Ah,   0,   0, 18h, 1Ah, 4Fh, 7Ah,0CFh, 1Ah
                db 0E7h, 19h, 1Ah, 80h,   6, 58h, 1Ah,   3, 73h, 15h, 1Ah
                db 0C0h, 4Fh, 63h, 11h, 1Ah, 4Fh,   3,   7, 3Ch,0E3h, 39h
                db 0B0h,0C0h,   3,   5, 98h,0B3h, 31h,0B0h, 1Bh, 38h, 1Ah
                db  1Bh, 67h, 3Ch, 14h,   8, 1Ah, 1Bh, 65h,0BCh,   6, 68h
                db  1Ah,   3,0FFh, 17h, 1Ah,0C0h,0CCh, 31h, 2Dh, 96h,0B1h
                db  1Ah,   9,0A2h,0F9h, 1Ah, 71h,0D7h, 1Ah, 6Bh, 34h, 1Ah
                db 0BCh, 30h, 1Ah, 78h, 79h, 52h, 10h, 1Ah, 79h, 50h,0B0h
                db  1Bh, 10h, 2Dh, 30h, 1Ah,   8, 88h, 1Ah,0BFh, 13h, 1Ah
                db 0FFh, 82h, 41h, 12h, 24h, 1Ah, 82h, 78h, 7Ch,   0, 18h
                db  1Ah, 78h,   8, 60h, 1Ah,   0,   0,   2, 23h, 38h, 1Ah
                db    8, 78h, 1Ah, 1Fh, 5Dh, 16h, 1Ah,   0,   8, 20h, 1Ah
                db    1,0FFh, 82h,0E2h, 29h, 1Ah,   2,0A3h, 33h, 1Ah,0BFh
                db 0AFh, 23h, 1Ah,0FDh, 4Ch, 2Bh, 1Ah,   1, 9Ch, 33h, 67h
                db  39h, 2Dh, 0Dh,0AFh, 1Ah,   5, 15h,0F3h, 92h, 56h, 39h
                db  2Dh,   0,0F8h, 1Ah, 63h, 46h, 1Ah, 60h, 92h, 1Ah,0BCh
                db 0B0h, 1Ah, 20h, 9Eh, 1Ah, 77h, 80h,0BCh, 78h, 18h,   0
                db    8, 18h,   0, 25h, 14h, 1Ah, 68h, 28h, 1Ah, 41h, 12h
                db  24h,   8,   0,   8,   8,   0,   4,0F6h, 3Dh, 1Ah,   2
                db  22h, 21h, 11h, 22h, 0Eh, 31h, 9Ch,   8,0C6h, 1Ch, 65h
                db  99h, 31h, 1Ah,   3,0E2h, 14h, 20h, 1Ah, 21h, 24h, 92h
                db  40h, 29h, 38h, 1Ah, 22h, 14h,   8, 1Ah, 48h,   9, 27h
                db  24h,0F2h, 14h, 40h, 1Ah, 24h, 11h, 22h, 14h, 18h, 1Ah
                db  82h,0A2h, 35h, 1Ah,   2, 22h, 44h, 12h, 24h,   9, 4Ah
                db  4Ah,   9, 29h, 24h, 92h, 2Ch, 16h, 1Ah,0BCh, 98h, 1Ah
                db  78h, 0Dh, 1Ah, 77h, 88h, 3Ch, 78h, 16h, 31h, 84h, 1Ch
                db 0C6h, 9Ah, 67h, 61h, 45h, 1Ah,   8, 28h, 1Ah, 2Dh, 12h
                db  3Dh, 1Ah, 34h,   0,   0,   0, 40h, 30h, 20h, 10h,0C1h
                db  83h,0C3h, 80h, 14h, 30h, 1Ah, 4Ch, 93h, 0Dh, 1Ah, 10h
                db  20h, 31h, 22h, 42h, 41h,   0,   0, 80h, 82h,   0,   0
                db  20h,   0,   0,   0, 84h,0CBh, 3Bh,0ACh,0CBh, 1Ch, 70h
                db  52h, 14h, 27h,   1,   6, 19h,0C0h,0C6h, 65h, 86h, 71h
                db  96h, 81h,   8, 2Dh, 45h,   0, 81h, 24h, 91h, 12h, 44h
                db  92h, 20h, 12h, 14h, 24h, 81h,   1, 20h, 80h,0C6h, 92h
                db  48h, 22h, 49h,   0,   0, 81h, 24h, 89h, 10h, 44h, 92h
                db  20h, 11h, 32h, 60h, 41h,   7, 18h, 80h,0AAh, 92h, 46h
                db  23h,0C8h,   0,   0, 85h, 24h, 8Ah, 10h, 43h, 12h, 28h
                db  10h,0D1h,0A8h, 41h,   9,   4,0A0h,0AAh, 92h, 41h, 2Ah
                db    8,   0,   0, 49h, 24h, 86h, 10h, 44h, 12h, 28h, 12h
                db  24h, 44h, 81h, 29h, 24h,0A0h, 92h, 92h, 49h, 2Ah, 48h
                db    0,   0, 30h,0C7h,   4, 38h,0E7h, 3Bh, 10h, 79h,0C3h
                db  83h,   3,0E6h, 98h, 41h,0D6h, 67h, 66h, 11h, 9Ch,   0
                db    0,   0,   4, 14h,   0,   8,0BEh, 2Ch, 1Ah, 3Fh, 34h
                db  1Ah, 0Eh,   8,   0,0F5h,0F8h,0D9h,   9, 2Dh,   0, 88h
                db  1Ah, 47h, 7Fh,   0, 78h, 1Ah,0FFh,0FEh,   2, 30h, 2Dh
                db    0,0F8h, 1Ah, 5Ah, 43h, 1Ah,   2,0FAh, 4Dh,   9, 2Dh
                db 0F9h,0D2h, 1Ah, 3Dh, 99h,0F7h,0EFh, 9Fh, 83h, 33h,0CCh
                db 0DFh,   6, 1Bh, 1Ah,   7,0CFh, 3Eh,0CCh, 3Dh, 9Bh,   7
                db  0Ah, 1Ah, 37h,0ECh, 20h, 10h, 2Dh, 71h,   8, 1Ah, 19h
                db 0DBh,   6, 0Ch,0C6h,   3, 36h, 6Ch,0D9h, 10h, 18h, 2Dh
                db  60h,0F8h, 19h,0DBh,0E7h, 8Fh,0C6h,   3,0F6h, 6Ch,0DFh
                db  83h,   6, 13h, 1Ah,   6, 66h, 7Ch,0F0h,0ADh, 82h, 1Ah
                db  19h,0B9h,0F7h, 8Fh, 86h,   1,0E6h, 0Fh, 20h, 2Dh, 3Eh
                db 0F0h, 19h,0B8h, 36h, 0Fh, 86h,   0,0C6h, 6Ch,0DFh,0F3h
                db  1Ah, 1Ah,   6, 66h,   6,0F8h, 3Dh, 9Bh,0F7h,0EDh,0C6h
                db    0,0C7h,0EFh,0DBh, 10h, 10h, 2Dh,0EFh, 7Eh,0DCh, 3Dh
                db  9Bh,0E7h,0ECh,0C6h,   0,0C3h,0C7h, 99h, 83h,0F3h, 12h
                db  1Ah,   7,0CFh, 7Ch,0CCh,0BEh, 18h, 2Dh,   2,0BAh, 1Ah
                db    6, 84h, 28h, 1Ah,0E7h,0B3h, 84h, 30h, 1Ah, 5Eh, 28h
                db  1Ah,0F7h,0B3h, 5Eh, 50h, 1Ah, 12h,   8, 1Ah, 33h, 33h
                db  60h, 0Ch,0DDh, 38h, 38h, 1Ah,   0,0CEh,0C1h, 9Bh,0F3h
                db  33h, 78h, 0Ch,0DDh, 12h, 60h, 1Ah, 33h, 78h, 0Ch,0DBh
                db 0BCh,0BFh, 40h, 1Ah,0C1h, 9Bh,0E3h, 1Eh, 60h, 0Ch,0DBh
                db 0B0h, 12h, 48h, 1Ah,0FBh, 77h, 9Eh, 7Eh, 0Fh,0D9h, 99h
                db  38h, 1Ah,   1,0ECh,0C1h,0F3h, 37h, 8Ch, 7Eh,   7, 99h
                db  86h, 18h, 1Ah,   3, 13h,0AAh,0A8h, 63h, 10h, 2Dh,0F8h
                db  1Ah,0F1h, 28h, 1Ah,0F9h, 83h,0F3h,0C7h,0DFh, 83h, 19h
                db 0E7h, 12h, 40h, 1Ah,0FDh, 83h,0F7h,0EFh,0DFh, 83h, 1Bh
                db 0F7h,0BFh,0CBh, 38h, 1Ah,0CDh, 83h,   6, 6Ch, 18h,   3
                db  1Bh, 12h, 20h, 1Ah, 53h, 11h, 1Ah,0FDh, 83h,0C6h, 6Fh
                db  9Eh,   3, 5Bh, 33h, 38h, 18h, 1Ah,0AAh, 98h, 1Ah,   0
                db    0,0F9h, 83h,0C7h,0E7h,0DEh,   3, 5Bh, 12h, 50h, 1Ah
                db  83h,   7,0E0h,0D8h,   3,0FBh,0F3h, 0Ch, 12h, 58h, 1Ah
                db 0DFh, 83h,0BBh, 12h, 48h, 1Ah,0C1h,0FBh,0F6h, 6Fh, 9Fh
                db  83h, 1Bh, 37h, 8Ch,   2,   8, 2Dh,0F8h, 1Ah,   0, 48h
                db  1Ah,   0,   0, 78h, 1Ah,   7, 4Bh,   8, 1Ah,0F6h, 67h
                db 0DFh,0BFh, 41h, 1Fh, 1Eh, 3Ch,0FDh,0ECh,0CFh, 4Ch, 20h
                db  1Ah,   3,0F6h, 6Fh,0DFh,0BFh, 5Eh,   8, 1Ah,0FDh, 5Eh
                db  38h, 1Ah,   6, 6Ch,   6, 30h, 77h, 38h,   8, 1Ah,0CEh
                db  38h, 30h, 1Ah,0E7h,0EFh, 86h, 3Ch, 7Fh, 1Fh, 33h, 66h
                db  30h,0CEh,0D8h, 13h, 20h, 1Ah,   1,0F3h,0C7h,0C6h, 3Ch
                db  6Bh, 1Fh, 12h,   8, 1Ah,0DBh, 25h, 20h, 1Ah,   0, 31h
                db  80h,0C6h, 30h, 6Bh, 19h,0B3h, 66h, 30h,0CDh,0D9h, 12h
                db  28h, 1Ah,0F1h, 8Fh,0C6h, 3Fh, 63h, 1Fh,0BFh, 7Eh, 31h
                db 0ECh,0DFh, 12h,   8, 1Ah,   0,   0,   0,   3,0E1h, 8Fh
                db  86h, 3Fh, 63h, 1Fh, 1Eh, 3Ch, 31h,0ECh,0CFh, 80h,   0
                db    0,   0,0F3h,0F5h,0C5h,0D5h,0E5h,0CDh, 33h, 96h,   1
                db    3, 0Bh,0EDh, 78h, 3Ch, 57h,0EDh, 79h,0EDh, 78h,0AAh
                db  20h, 36h, 15h,0EDh, 51h, 11h, 0Fh,   7, 47h, 0Ch, 88h
                db  1Ah,0A2h,0F5h, 3Eh, 0Ah,   4,   8, 1Ah,0A3h,0F5h,   4
                db 0EDh, 78h,0E6h,   3,0F5h,   6,   8, 1Eh,   6,0F1h,0CDh
                db    7, 97h, 1Ch, 10h,0F9h, 3Eh, 7Fh,   6,   8, 1Ah, 10h
                db  3Eh,0FEh,0DBh,0FEh, 0Fh, 38h,   9,0AFh,0D3h, 17h, 32h
                db 0FEh, 97h,0C3h,0EBh, 97h,0E1h,0D1h,0C1h,0F1h,0FBh,0C9h
                db  3Eh,   1, 3Dh, 20h,   2, 3Eh, 11h, 32h, 34h, 96h, 21h
                db 0CBh, 37h, 10h, 1Ah, 7Eh, 21h, 21h, 59h, 1Eh, 0Dh, 0Eh
                db    3,   6, 13h, 77h, 23h, 10h,0FCh, 19h, 0Dh, 20h,0F6h
                db  3Eh,   1, 3Dh, 32h, 57h, 96h,0C0h, 3Eh,   5, 3Ch,0FEh
                db    6, 38h,   1,0AFh, 32h, 5Eh, 96h,0F5h, 21h,0DDh, 96h
                db  5Fh, 19h, 7Eh, 32h, 57h, 96h,0F1h, 87h, 87h, 21h,0E3h
                db  96h, 16h,   0, 5Fh, 19h, 5Eh, 23h, 56h, 23h, 7Eh, 23h
                db  66h, 6Fh, 46h, 23h, 4Eh, 23h,0CDh,0BDh, 96h,0D5h,0C5h
                db  2Fh, 10h, 1Ah,   3,0F6h, 58h, 57h, 0Ah, 30h, 1Ah,0D5h
                db 0C5h, 7Eh, 23h, 12h, 1Ch, 0Dh, 20h,0F9h,0C1h,0D1h, 14h
                db  7Ah,0E6h,   7, 20h,0EFh, 3Eh, 20h, 83h, 5Fh, 3Fh, 9Fh
                db 0E6h,0F8h, 82h, 57h, 10h,0CFh,0C9h, 7Ah, 0Fh, 0Fh, 0Fh
                db 0E6h,0E0h, 83h, 5Fh, 7Ah,0E6h, 18h,0F6h, 40h, 57h,0C9h
                db    1,   2,   3,   4,   5,   6, 46h, 47h, 47h, 46h,   6
                db    5,   4,   3,   2,   1,   0, 0Ah, 19h,   6,   6,   6
                db  0Ah, 16h,   6, 87h, 84h, 17h, 0Ah,0CDh, 85h, 17h,   9
                db  88h, 87h, 17h,   8, 82h, 89h, 17h,   8, 3Dh, 8Bh, 16h
                db    6, 7Ah, 8Ch,   0, 0Dh, 11h, 8Eh,   1,   9,0C4h, 91h
                db    1,   9,0C7h, 93h,0D5h,0C5h, 87h, 87h, 87h, 26h,   0
                db  6Fh,   1, 21h, 97h,   9,0CDh,0BDh, 96h,   6,   8, 7Eh
                db  12h, 23h, 14h, 10h,0FAh,0C1h,0D1h,0C9h, 1Dh, 10h, 1Ah
                db  44h, 18h, 1Ah, 2Fh, 20h, 1Ah, 14h, 18h, 1Ah, 12h, 10h
                db  1Ah, 21h,   8, 1Ah,0C6h, 27h, 18h, 1Ah,   7, 10h, 1Ah
                db    6, 17h,   8, 1Ah,0C0h, 0Fh, 20h, 1Ah,   0, 10h, 1Ah
                db    6,   7, 10h, 1Ah,0C6h,0FEh,0FEh,0FEh,0FEh,0C6h,0FEh
                db 0FEh,   6,   6,   6,   3,   8, 1Ah,   0, 38h, 38h,   0
                db  21h,   0,0BEh, 11h,   1,0BEh, 43h, 4Dh, 36h, 84h, 7Ch
                db 0EDh, 47h,0EDh, 5Eh,0EDh,0B0h, 26h, 58h, 54h, 0Dh, 36h
                db  46h,0EDh,0B0h, 3Eh,   6, 53h,   8, 1Ah,   7,0CDh, 73h
                db  96h,0FBh, 1Eh,   4, 4Fh,   8, 1Ah, 32h,   0, 80h, 44h
                db  10h, 1Ah,   0,0EEh,   1, 32h,0ABh, 97h,0D3h, 33h, 3Eh
                db    3,0D3h, 13h, 19h, 30h, 1Ah,0A3h, 28h,0DAh, 3Eh,   1
                db 0D3h, 4Fh,   1, 0Bh, 10h, 21h,0FFh, 97h,0EDh,0B3h, 3Eh
                db  88h,0D3h, 0Fh,0DBh, 13h,0A3h, 28h,0FBh,0DBh, 0Fh,0E6h
                db  1Ch, 20h,0BFh, 3Ah,   0, 80h,0FEh, 18h, 20h,0B8h,0F3h
                db  3Eh,   8,0CDh, 73h, 96h, 3Eh,0C3h,0D3h, 0Bh, 3Eh,0D0h
                db 0D3h, 0Fh,0AFh,0D3h, 13h, 3Eh, 3Fh,0EDh, 47h,0EDh, 56h
                db 0C3h,   0, 80h,0C7h,0CBh, 79h,   0, 80h,0FFh,   3, 14h
                db  28h,0C0h, 8Dh, 6Fh,   0, 92h,0CFh, 87h
; end of 'RAM_DATA'

; ===========================================================================

; Segment type: Regular
                segment RAM_INFO
                org 8BAEh
aCopyright96Lmn0:.ascii 'COPYRIGHT96\' LMN003'
; end of 'RAM_INFO'

; ===========================================================================

; Segment type: Regular
                segment RAM_STACK
                org 0BF01h
StackBottom:    ds 0FFh
; end of 'RAM_STACK'


                end