music7 EQU $FEC6
Sound_Byte EQU $F256
Wait_Recal EQU $F192
Clear_x_d EQU $F548
Intensity_5F EQU $F2A5 ; BIOS Intensity routine
Print_Str_d EQU $F37A ; BIOS print routine
INFO_START EQU 0
BYTE_POSITION EQU 0
BIT_POSITION EQU 2
CURRENT_BYTE EQU 3
CURRENT_UNPACKED_BYTE EQU 4
CURRENT_RLE_COUNTER EQU 5
CURRENT_RLE_MAPPER EQU 7
CURRENT_IS_PHRASE EQU 9
CURRENT_PHRASE_BYTE EQU 11
CURRENT_PHRASE_START EQU 12
INFO_END EQU 14
STRUCTURE_LENGTH EQU (INFO_END-INFO_START)
BSS
ORG $c880 ; well start of our ram space
current_register:
DB 0
temp:
DB 0
temp2:
DB 0
temp3:
DB 0
calc_coder:
DB 0
calc_bits:
DB 0
ym_data_len:
DW 0
ym_data_current:
DW 0
ym_name:
DW 0
ym_data_start:
CODE
;***************************************************************************
ORG 0
; start of vectrex memory with cartridge name...
DB "g GCE 1998", $80 ; 'g' is copyright sign
DW music7 ; music from the rom
DB $F8, $50, $20, -$56; hight, width, rel y, rel x (from 0,0)
DB "VECTREX YM-SOUND", $80; some game information, ending with $80
DB $F8, $50, $5, -$6d; hight, width, rel y, rel x (from 0,0)
DB "CHRISTOPHER SALOMON", $80; some game information, ending with $80
DB 0 ; end of game header
;***************************************************************************
; here the cartridge program starts off
entry_point:
new_game:
ldu #SONG_DATA
JSR init_ym_sound
main_loop:
JSR Wait_Recal ; sets dp to d0, and pos at 0, 0
JSR Intensity_5F ; Sets the intensity of the
; vector beam to $5f
LDU ym_name ; address of string 0
LDA #$10 ; Text position relative Y
LDB #-$70 ; Text position relative X
JSR Print_Str_d ; Vectrex BIOS print routine
JSR do_ym_sound
ldd ym_data_current
beq new_game ; loop default
BRA main_loop ; go back to main loop
;***************************************************************************
do_ym_sound:
ldd ym_data_current
beq do_ym_sound_done
subd #1
std ym_data_current
clra
sta current_register
ldu #ym_data_start
next_reg:
jsr get_current_byte
lda current_register
; A PSG reg
; B data
jsr Sound_Byte
leau STRUCTURE_LENGTH,u
inc current_register
lda current_register
cmpa #11
bne next_reg
do_ym_sound_done:
RTS
no_valid_byte:
; no we must look at the bits
; a will be our bit register
;;;;;;;;;;;;;;;;;;; GET_BIT START
ldb BIT_POSITION,u
bne byte_ready_1
; load a new byte
ldx BYTE_POSITION,u
ldb ,x+
stb CURRENT_BYTE,u
stx BYTE_POSITION,u
ldb #$80
stb BIT_POSITION,u
byte_ready_1:
; bit position correct here
;
; remember we use one bit now!
lsr BIT_POSITION,u
; is the bit at the current position set?
andb CURRENT_BYTE,u
;;;;;;;;;;;;;;;;;;; GET_BIT END
; zero flag show bit
; A is 1 or zero
lbne no_single_byte
single_byte:
; must be zero
; 1 is allways only 8 bit...
inc CURRENT_RLE_COUNTER+1,u
dechifer:
clr calc_bits
clr calc_coder
try_next_bit:
lsl calc_coder
inc calc_bits ; increase used bits
;;;;;;;;;;;; GET_BIT_START
ldb BIT_POSITION,u
bne byte_ready
; load a new byte
ldx BYTE_POSITION,u
ldb ,x+
stb CURRENT_BYTE,u
stx BYTE_POSITION,u
ldb #$80
stb BIT_POSITION,u
byte_ready:
; bit position correct here
;
; remember we use one bit now!
lsr BIT_POSITION,u
; is the bit at the current position set?
andb CURRENT_BYTE,u
beq no_add ; and if non zero
inc calc_coder
;;;;;;;;;;;; GET_BIT_END
no_add:
; we load one complete set of mapper index, bits, coder, map-value
ldx CURRENT_RLE_MAPPER,u
search_again:
leax 3,x
lda ,x ; load bits from map
anda #127 ; map out phrases
cmpa calc_bits ; neu
bgt try_next_bit ; neu
bne search_again
ldb 1,x ; load coder-byte
cmpb calc_coder
bne search_again
ldb 2,x ; load current mapped byte!
; in b is the byte value we sought
; test for phrase
lda ,x ; load bits from map
anda #128 ; map in phrases only
beq no_phrase_d
; if phrase, than in b the count of the phrase used
ldx CURRENT_PHRASE_START,u
tstb
beq phrase_found
next_phrase:
lda ,x+
leax a,x
decb
bne next_phrase
phrase_found:
stx CURRENT_IS_PHRASE,u
clr CURRENT_PHRASE_BYTE,u
bra out
no_phrase_d:
clr CURRENT_IS_PHRASE,u
clr CURRENT_IS_PHRASE+1,u
stb CURRENT_UNPACKED_BYTE,u
out:
; U pointer to data structure
; A number of register
get_current_byte:
; do we have a byte that is valid?
ldd CURRENT_RLE_COUNTER,u
beq no_valid_byte
; yep... use current byte
ldx CURRENT_IS_PHRASE,u
beq no_phrase
lda ,x+ ; length of phrase
ldb CURRENT_PHRASE_BYTE,u
ldb b,x ; this is the current byte
stb CURRENT_UNPACKED_BYTE,u
inc CURRENT_PHRASE_BYTE,u
cmpa CURRENT_PHRASE_BYTE,u
bne counter_not_minus_one
clr CURRENT_PHRASE_BYTE,u
ldd CURRENT_RLE_COUNTER,u
no_phrase:
subd #1
std CURRENT_RLE_COUNTER,u
counter_not_minus_one:
ldb CURRENT_UNPACKED_BYTE,u
rts
no_single_byte:
; non single byte here... must decode
; first we look for how many bits the RLE counter spreads
; we already encountered a 1
; and we allways use + 2
lda #2
sta temp
more_bits:
inc temp
;;;;;;;;;;;;;;;;;;; GET_BIT START
ldb BIT_POSITION,u
bne byte_ready_2
; load a new byte
ldx BYTE_POSITION,u
ldb ,x+
stb CURRENT_BYTE,u
stx BYTE_POSITION,u
ldb #$80
stb BIT_POSITION,u
byte_ready_2:
; bit position correct here
;
; remember we use one bit now!
lsr BIT_POSITION,u
; is the bit at the current position set?
andb CURRENT_BYTE,u
;;;;;;;;;;;;;;;;;;; GET_BIT END
bne more_bits
; in temp is the # of bits for the counter
; the following '#temp' bits represent the RLE count
; lsb first
incb ; we start at 1, since zero is an
; 'own' 'subroutine',
; which doesn't manipulate the temps
stb temp2 ; bit counter for shifting
stb temp3 ; bit counter for shifting
go_on:
;;;;;;;;;;;;;;;;;;; GET_BIT START
ldb BIT_POSITION,u
bne byte_ready_3
; load a new byte
ldx BYTE_POSITION,u
ldb ,x+
stb CURRENT_BYTE,u
stx BYTE_POSITION,u
ldb #$80
stb BIT_POSITION,u
byte_ready_3:
; bit position correct here
;
; remember we use one bit now!
lsr BIT_POSITION,u
; is the bit at the current position set?
andb CURRENT_BYTE,u
beq end_here_3
; return 1
ldb #1
end_here_3:
;;;;;;;;;;;;;;;;;;; GET_BIT END
; in D now one bit at the right position for the RLE counter
stb CURRENT_RLE_COUNTER+1,u
; the first 3 (here only the first one) rounds
; we need not check for temp, since it is at least 3...
go_on_2:
;;;;;;;;;;;;;;;;;;; GET_BIT START
ldb BIT_POSITION,u
bne byte_ready_4
; load a new byte
ldx BYTE_POSITION,u
ldb ,x+
stb CURRENT_BYTE,u
stx BYTE_POSITION,u
ldb #$80
stb BIT_POSITION,u
byte_ready_4:
; bit position correct here
;
; remember we use one bit now!
lsr BIT_POSITION,u
; is the bit at the current position set?
andb CURRENT_BYTE,u
beq end_here_4
; return 1
ldb #1
end_here_4:
clra
shifting_not_yet_done:
LSLA ; LSR A
LSLB ; LSR B
BCC no_carry ; if no carry, than exit
ORA #1 ; otherwise underflow from A to 7bit of B
no_carry:
dec temp3
bne shifting_not_yet_done
shifting_done:
; in D now one bit at the right position for the RLE counter
addd CURRENT_RLE_COUNTER,u
std CURRENT_RLE_COUNTER,u
inc temp2
lda temp2
sta temp3
cmpa temp
bne go_on_2
; now the current counter should be set
; we still need to dechifer the following byte...
bra dechifer
init_ym_sound:
ldx #ym_data_start
ldd #(STRUCTURE_LENGTH*11)
jsr Clear_x_d
ldy ,u++
ldd ,y
std ym_data_len
std ym_data_current
ldb #11
next_reg_init:
ldy ,u++
sty CURRENT_RLE_MAPPER,x
ldy ,u++
sty CURRENT_PHRASE_START,x
ldy ,u++
sty BYTE_POSITION,x
leax STRUCTURE_LENGTH,x
decb
bne next_reg_init
stu ym_name
RTS
;***************************************************************************
END entry_point
;***************************************************************************
dnb09_start:
DW 4032 ; vbl_len
; translation data
; DB $38; bytes follow
; bits used, code, real 'byte'
dnb09_reg_0:
DB $83, $06, $03 ;288
DB $04, $08, $BC ;153
DB $04, $09, $CC ;153
DB $84, $0A, $04 ;162
DB $84, $0E, $00 ;384
DB $04, $0F, $00 ;529
DB $05, $08, $BE ;90
DB $05, $09, $9F ;96
DB $85, $0A, $05 ;96
DB $05, $0C, $86 ;112
DB $05, $0D, $2D ;121
DB $05, $0E, $3F ;125
DB $05, $0F, $EF ;138
DB $85, $16, $02 ;224
DB $85, $17, $01 ;240
DB $06, $04, $5A ;26
DB $06, $08, $64 ;44
DB $06, $09, $1C ;52
DB $06, $0A, $96 ;60
DB $06, $0B, $B3 ;64
DB $06, $0C, $DE ;64
DB $06, $0D, $98 ;72
DB $06, $0E, $D5 ;74
DB $86, $0F, $06 ;85
DB $06, $16, $77 ;106
DB $06, $17, $C9 ;109
DB $07, $04, $7F ;18
DB $07, $06, $7E ;20
DB $07, $0A, $7B ;26
DB $07, $0B, $0C ;30
DB $07, $0C, $6A ;36
DB $07, $0D, $E1 ;36
DB $07, $0E, $FD ;37
DB $07, $0F, $92 ;39
DB $08, $02, $5F ;8
DB $08, $04, $FA ;10
DB $08, $05, $50 ;14
DB $08, $06, $40 ;17
DB $08, $07, $38 ;18
DB $08, $0A, $C3 ;18
DB $08, $0B, $66 ;20
DB $08, $0E, $8E ;20
DB $08, $0F, $AA ;20
DB $09, $03, $71 ;6
DB $09, $06, $52 ;10
DB $09, $07, $A4 ;10
DB $0A, $03, $97 ;2
DB $0A, $04, $2F ;3
DB $0A, $05, $43 ;4
DB $0B, $01, $25 ;1
DB $0B, $02, $75 ;1
DB $0B, $03, $76 ;1
DB $0B, $04, $79 ;1
DB $0B, $05, $9A ;1
DB $0C, $01, $1A ;1
DB $0D, $01, $14 ;1
; phrases follow
dnb09_pd_0:
DB $06, $14, $1A, $25, $2F, $2F, $2F; 384
DB $0F, $00, $00, $00, $00, $00, $BC, $BC, $BC, $BC, $77, $77, $77, $77, $77, $76; 240
DB $0E, $BC, $BC, $BC, $BC, $BC, $77, $77, $77, $77, $40, $EF, $EF, $EF, $EF; 224
DB $09, $CC, $CC, $CC, $CC, $CC, $98, $98, $98, $98; 288
DB $09, $C9, $C9, $C9, $C9, $C9, $9F, $9F, $9F, $9F; 162
DB $06, $75, $77, $79, $00, $00, $00; 96
DB $05, $98, $97, $96, $98, $9A; 85
; data follows
dnb09_reg_0_data:
DB $D3, $F5, $32, $2E, $AB, $E2, $72, $A4, $02, $D9
DB $91, $39, $55, $64, $46, $54, $89, $02, $C9, $35
DB $64, $46, $54, $88, $9C, $AB, $B2, $42, $E4, $32
DB $C7, $45, $7A, $A6, $2C, $A8, $7C, $47, $D5, $D2
DB $64, $85, $D4, $E8, $AF, $53, $22, $EA, $BE, $27
DB $55, $79, $02, $C9, $35, $64, $4E, $55, $59, $11
DB $95, $22, $40, $B2, $4D, $59, $11, $95, $22, $27
DB $2A, $EC, $90, $BA, $9D, $15, $EA, $98, $B2, $A1
DB $F1, $1F, $57, $49, $93, $17, $26, $58, $5D, $66
DB $26, $54, $2E, $2E, $AB, $62, $F9, $11, $65, $E2
DB $EA, $B6, $2F, $55, $4A, $92, $D2, $7A, $AA, $54
DB $5D, $56, $C5, $F7, $5E, $43, $E4, $9B, $3A, $2D
DB $AB, $E2, $BD, $43, $44, $4A, $99, $25, $E4, $3E
DB $AE, $8B, $6B, $31, $32, $A1, $71, $75, $5B, $25
DB $A4, $FA, $AF, $17, $55, $B1, $7A, $AA, $54, $96
DB $93, $D5, $52, $A2, $EA, $B6, $2F, $BA, $F2, $1F
DB $57, $45, $B5, $7C, $57, $A8, $68, $89, $53, $24
DB $BC, $C7, $C9, $7B, $0F, $A9, $91, $75, $5F, $13
DB $95, $20, $16, $CC, $89, $CA, $AB, $22, $32, $A4
DB $48, $16, $49, $AB, $22, $32, $A4, $44, $E5, $5D
DB $92, $17, $21, $96, $3A, $2B, $D5, $31, $65, $43
DB $E2, $3E, $AE, $93, $24, $2E, $A7, $45, $7A, $99
DB $17, $55, $F1, $3A, $AB, $C8, $16, $49, $AB, $22
DB $72, $AA, $C8, $8C, $A9, $12, $05, $92, $6A, $C8
DB $8C, $A9, $11, $39, $57, $64, $85, $D4, $E8, $AF
DB $54, $C5, $95, $0F, $88, $FA, $BA, $4C, $98, $B9
DB $32, $C2, $EB, $31, $32, $A1, $71, $75, $5B, $17
DB $C8, $8B, $2F, $17, $55, $B1, $7A, $AA, $54, $96
DB $93, $D5, $52, $A2, $EA, $B6, $2F, $BA, $F2, $1F
DB $24, $D9, $D1, $6D, $5F, $15, $EA, $1A, $22, $54
DB $C9, $2F, $21, $F5, $74, $5B, $59, $89, $95, $0B
DB $8B, $AA, $D9, $2D, $27, $D5, $78, $BA, $AD, $8B
DB $D5, $52, $A4, $B4, $9E, $AA, $95, $17, $55, $B1
DB $7D, $D7, $90, $FA, $BA, $2D, $AB, $E2, $BD, $43
DB $44, $4A, $99, $25, $E4, $3D, $72, $9C, $B4, $63
DB $1F, $BA, $B1, $15, $97, $29, $CB, $46, $31, $FB
DB $AB, $11, $59, $72, $9C, $B4, $63, $1F, $BA, $B1
DB $15, $97, $29, $CB, $46, $31, $FB, $AB, $11, $5A
DB $BF, $19, $89, $A3, $ED, $EE, $60, $34, $4B, $8C
DB $E3, $F7, $35, $7E, $33, $13, $47, $DB, $DC, $C0
DB $68, $97, $19, $C7, $EE, $6A, $FC, $66, $26, $8F
DB $B7, $B9, $80, $D1, $2E, $33, $8F, $DC, $D5, $F8
DB $CC, $4D, $1F, $6F, $73, $01, $A2, $5C, $67, $1F
DB $B9, $97, $29, $CB, $46, $31, $FB, $AB, $11, $59
DB $72, $9C, $B4, $63, $1F, $BA, $B1, $15, $97, $29
DB $CB, $46, $31, $FB, $AB, $11, $59, $72, $9C, $B4
DB $63, $1F, $BA, $B1, $15, $AB, $F1, $98, $9A, $3E
DB $DE, $E6, $03, $44, $B8, $CE, $3F, $73, $57, $E3
DB $31, $34, $7D, $BD, $CC, $06, $89, $71, $9C, $7E
DB $E6, $AF, $C6, $62, $68, $FB, $7B, $98, $0D, $12
DB $E3, $38, $FD, $CD, $5F, $8C, $C4, $D1, $F6, $F7
DB $30, $1A, $25, $C6, $71, $FB, $99, $72, $9C, $B4
DB $63, $1F, $BA, $B1, $15, $97, $29, $CB, $46, $31
DB $FB, $AB, $11, $59, $72, $9C, $B4, $63, $1F, $BA
DB $B1, $15, $97, $29, $CB, $46, $31, $FB, $AB, $11
DB $5A, $BF, $19, $89, $A3, $ED, $EE, $60, $34, $4B
DB $8C, $E3, $F7, $35, $7E, $33, $13, $47, $DB, $DC
DB $C0, $68, $97, $19, $C7, $EE, $6A, $FC, $66, $26
DB $8F, $B7, $B9, $80, $D1, $2E, $33, $8F, $DC, $D5
DB $F8, $CC, $4D, $1F, $6F, $73, $01, $A2, $5C, $67
DB $1F, $B9, $97, $29, $CB, $46, $31, $FB, $AB, $11
DB $59, $72, $9C, $B4, $63, $1F, $BA, $B1, $15, $97
DB $29, $CB, $46, $31, $FB, $AB, $11, $59, $72, $9C
DB $B4, $63, $1F, $BA, $B1, $15, $AB, $F1, $98, $9A
DB $3E, $DE, $E6, $03, $44, $B8, $CE, $3F, $73, $57
DB $E3, $31, $34, $7D, $BD, $CC, $06, $89, $71, $9C
DB $7E, $E6, $AF, $C6, $62, $68, $FB, $7B, $98, $0D
DB $12, $E3, $38, $FD, $CD, $5F, $8C, $C4, $D1, $F6
DB $F7, $30, $1A, $25, $C6, $71, $FB, $98, $78, $D0
DB $06, $28, $6D, $41, $E2, $2A, $A4, $C4, $75, $5F
DB $14, $48, $16, $C9, $88, $EA, $BE, $28, $AA, $62
DB $12, $AB, $48, $0A, $48, $AA, $62, $12, $AB, $44
DB $75, $5F, $14, $5D, $32, $74, $82, $58, $74, $5F
DB $54, $45, $35, $04, $89, $95, $15, $24, $C9, $D5
DB $1D, $17, $D4, $1E, $22, $AA, $4C, $47, $55, $F2
DB $02, $92, $2A, $98, $8E, $AB, $E2, $8A, $A6, $21
DB $2A, $B4, $80, $A4, $8A, $A6, $21, $2A, $B4, $47
DB $55, $F1, $45, $D3, $27, $54, $74, $5F, $54, $45
DB $35, $04, $89, $95, $15, $24, $CD, $D2, $4D, $9D
DB $50, $3C, $42, $AA, $06, $8B, $6A, $4C, $46, $C8
DB $0A, $C8, $8B, $6A, $4C, $46, $D5, $11, $2A, $A1
DB $D2, $01, $C8, $6D, $51, $12, $AA, $1D, $16, $D4
DB $98, $8D, $BA, $24, $2A, $45, $59, $B1, $26, $A3
DB $62, $8A, $89, $10, $7A, $85, $49, $12, $15, $56
DB $C4, $9A, $81, $E2, $15, $50, $34, $5B, $52, $64
DB $03, $90, $DA, $A2, $2D, $A9, $31, $1B, $54, $44
DB $AA, $87, $48, $07, $21, $B5, $44, $4A, $A8, $74
DB $5B, $52, $62, $36, $E8, $90, $AA, $B6, $24, $D4
DB $6C, $51, $51, $22, $0F, $50, $A9, $22, $42, $80
; flushed
; translation data
; DB $0B; bytes follow
; bits used, code, real 'byte'
dnb09_reg_1:
DB $02, $03, $00 ;1241
DB $83, $02, $00 ;320
DB $03, $03, $01 ;535
DB $03, $04, $02 ;535
DB $83, $05, $01 ;624
DB $04, $01, $03 ;133
DB $04, $02, $05 ;281
DB $84, $03, $02 ;288
DB $05, $01, $07 ;91
DB $06, $01, $04 ;10
DB $07, $01, $06 ;1
; phrases follow
dnb09_pd_1:
DB $05, $04, $06, $07, $07, $07; 320
DB $0D, $07, $07, $07, $07, $02, $02, $02, $02, $02, $02, $02, $02, $02; 624
DB $09, $03, $03, $03, $03, $03, $07, $07, $07, $07; 288
; data follows
dnb09_reg_1_data:
DB $D2, $0E, $97, $F0, $DE, $4F, $93, $E7, $72, $E4
DB $F4, $FA, $5F, $C3, $79, $3E, $4F, $9D, $CB, $9B
DB $97, $67, $59, $C9, $7A, $7D, $2F, $C4, $FA, $5E
DB $DE, $4E, $5D, $DE, $9F, $4C, $AB, $97, $B5, $D6
DB $72, $5E, $9F, $4B, $F1, $3E, $97, $B7, $DA, $F4
DB $FA, $65, $5C, $B9, $B9, $78, $DF, $C3, $79, $3E
DB $4F, $9D, $CB, $93, $D3, $E9, $7F, $0D, $E4, $F9
DB $3E, $77, $2E, $6E, $5D, $9D, $67, $25, $E9, $F4
DB $BF, $13, $E9, $7B, $79, $39, $77, $7A, $7D, $32
DB $AE, $5E, $D7, $59, $C9, $7A, $7D, $2F, $C4, $FA
DB $5E, $DF, $6B, $D3, $E9, $95, $72, $E4, $CA, $23
DB $50, $A8, $EB, $C4, $49, $46, $51, $1A, $85, $47
DB $5E, $22, $4A, $32, $88, $D4, $2A, $3A, $F1, $12
DB $51, $94, $46, $A1, $51, $D7, $88, $92, $8C, $A3
DB $34, $96, $79, $12, $AF, $18, $4B, $59, $12, $28
DB $CD, $25, $9E, $44, $AB, $C6, $12, $D6, $44, $8A
DB $33, $49, $67, $91, $2A, $F1, $84, $B5, $91, $22
DB $8C, $D2, $59, $E4, $4A, $BC, $61, $2D, $64, $48
DB $A2, $35, $0A, $8E, $BC, $44, $94, $65, $11, $A8
DB $54, $75, $E2, $24, $A3, $28, $8D, $42, $A3, $AF
DB $11, $25, $19, $44, $6A, $15, $1D, $78, $89, $28
DB $CA, $33, $49, $67, $91, $2A, $F1, $84, $B5, $91
DB $22, $8C, $D2, $59, $E4, $4A, $BC, $61, $2D, $64
DB $48, $A3, $34, $96, $79, $12, $AF, $18, $4B, $59
DB $12, $28, $CD, $25, $9E, $44, $AB, $C6, $12, $D6
DB $44, $8A, $23, $50, $A8, $EB, $C4, $49, $46, $51
DB $1A, $85, $47, $5E, $22, $4A, $32, $88, $D4, $2A
DB $3A, $F1, $12, $51, $94, $46, $A1, $51, $D7, $88
DB $92, $8C, $A3, $34, $96, $79, $12, $AF, $18, $4B
DB $59, $12, $28, $CD, $25, $9E, $44, $AB, $C6, $12
DB $D6, $44, $8A, $33, $49, $67, $91, $2A, $F1, $84
DB $B5, $91, $22, $8C, $D2, $59, $E4, $4A, $BC, $61
DB $2D, $64, $48, $A2, $35, $0A, $8E, $BC, $44, $94
DB $65, $11, $A8, $54, $75, $E2, $24, $A3, $28, $8D
DB $42, $A3, $AF, $11, $25, $19, $44, $6A, $15, $1D
DB $78, $89, $28, $CA, $33, $49, $67, $91, $2A, $F1
DB $84, $B5, $91, $22, $8C, $D2, $59, $E4, $4A, $BC
DB $61, $2D, $64, $48, $A3, $34, $96, $79, $12, $AF
DB $18, $4B, $59, $12, $28, $CD, $25, $9E, $44, $AB
DB $C6, $12, $D6, $6B, $2A, $CD, $2F, $EC, $BC, $9F
DB $27, $CE, $E5, $C9, $E9, $EB, $34, $BF, $B2, $F2
DB $7C, $9F, $3B, $97, $37, $2E, $CE, $B3, $92, $F4
DB $FA, $5F, $89, $F4, $BD, $BC, $9C, $BB, $BD, $3E
DB $99, $57, $2F, $6B, $AC, $E4, $BD, $3E, $97, $E2
DB $7D, $2F, $6F, $B5, $E9, $F4, $CA, $B9, $72, $60
; flushed
; translation data
; DB $32; bytes follow
; bits used, code, real 'byte'
dnb09_reg_2:
DB $83, $06, $03 ;312
DB $84, $08, $06 ;168
DB $84, $0A, $04 ;234
DB $84, $0B, $01 ;312
DB $84, $0E, $02 ;324
DB $84, $0F, $00 ;432
DB $05, $06, $BE ;86
DB $05, $08, $D5 ;105
DB $05, $09, $C9 ;106
DB $05, $0A, $DE ;109
DB $85, $0C, $0A ;120
DB $05, $0D, $2D ;148
DB $05, $0E, $EF ;152
DB $85, $0F, $07 ;156
DB $85, $12, $08 ;168
DB $05, $13, $86 ;171
DB $06, $04, $4B ;24
DB $06, $08, $E1 ;40
DB $06, $09, $FD ;44
DB $06, $0A, $1C ;54
DB $86, $0B, $09 ;84
DB $86, $0E, $05 ;90
DB $06, $0F, $64 ;98
DB $06, $16, $9F ;111
DB $06, $17, $96 ;114
DB $07, $04, $38 ;16
DB $07, $06, $C3 ;18
DB $07, $0A, $6A ;28
DB $07, $0B, $77 ;32
DB $07, $0C, $3F ;33
DB $07, $0D, $7B ;34
DB $07, $0E, $AA ;35
DB $07, $0F, $CC ;37
DB $08, $04, $FA ;10
DB $08, $05, $43 ;12
DB $08, $06, $52 ;12
DB $08, $07, $5A ;14
DB $08, $0A, $7F ;16
DB $08, $0B, $66 ;17
DB $08, $0E, $8E ;20
DB $08, $0F, $32 ;24
DB $09, $01, $0C ;4
DB $09, $02, $3C ;4
DB $09, $04, $5F ;4
DB $09, $05, $92 ;4
DB $09, $06, $7E ;5
DB $09, $07, $A4 ;8
DB $0A, $01, $71 ;2
DB $0A, $06, $47 ;4
DB $0A, $07, $50 ;4
; phrases follow
dnb09_pd_2:
DB $09, $C9, $C9, $C9, $C9, $C9, $9F, $9F, $9F, $9F; 432
DB $0D, $0C, $0C, $0C, $0C, $D5, $D5, $D5, $D5, $D5, $C9, $C9, $C9, $C9; 312
DB $09, $92, $92, $92, $92, $3F, $3F, $3F, $3F, $3F; 324
DB $0D, $3F, $3F, $3F, $3F, $2D, $2D, $2D, $2D, $2D, $EF, $EF, $EF, $EF; 312
DB $0D, $9F, $9F, $9F, $9F, $86, $86, $86, $86, $86, $6A, $6A, $6A, $6A; 234
DB $05, $64, $64, $C9, $C9, $C9; 90
DB $0E, $DE, $3F, $3F, $3F, $3F, $EF, $EF, $EF, $EF, $EF, $D5, $D5, $D5, $D5; 168
DB $0D, $3F, $3F, $3F, $3F, $96, $96, $2D, $2D, $2D, $EF, $EF, $EF, $EF; 156
DB $0E, $EF, $C9, $C9, $C9, $C9, $7E, $7E, $7E, $7E, $7E, $5A, $5A, $5A, $5A; 168
DB $0E, $50, $50, $9F, $9F, $9F, $86, $86, $86, $86, $AA, $AA, $AA, $AA, $AA; 84
DB $0A, $CC, $DE, $DE, $DE, $DE, $66, $66, $66, $66, $66; 120
; data follows
dnb09_reg_2_data:
DB $93, $A4, $A4, $0E, $8A, $D5, $9C, $50, $39, $52
DB $0F, $B1, $EA, $90, $7D, $8F, $8A, $1F, $20, $5B
DB $4D, $62, $DC, $B8, $A9, $0F, $AC, $E2, $87, $D6
DB $71, $15, $53, $D5, $53, $E2, $87, $D6, $6B, $AA
DB $D1, $9D, $47, $39, $72, $0B, $90, $F3, $0F, $AA
DB $4F, $7C, $84, $B2, $F1, $73, $E4, $25, $97, $61
DB $CE, $8B, $64, $2E, $4E, $4A, $AA, $74, $5B, $11
DB $E6, $35, $52, $CF, $AA, $F1, $73, $EA, $BB, $55
DB $2E, $8B, $62, $E4, $AA, $A7, $45, $B2, $74, $94
DB $81, $D1, $5A, $B3, $8A, $07, $2A, $41, $F6, $3D
DB $52, $0F, $B1, $F1, $43, $E4, $0B, $69, $AC, $5B
DB $97, $15, $21, $F5, $9C, $50, $FA, $CE, $22, $AA
DB $7A, $AA, $7C, $50, $FA, $CD, $75, $5A, $33, $A8
DB $E7, $2E, $41, $72, $1E, $61, $F5, $49, $EF, $90
DB $96, $5E, $2E, $7C, $84, $B2, $EC, $39, $D1, $6C
DB $85, $C9, $C9, $55, $4E, $8B, $62, $3C, $C6, $AA
DB $59, $F5, $5E, $2E, $7D, $57, $6A, $A5, $D1, $6C
DB $5C, $95, $54, $E8, $B6, $4E, $92, $90, $3A, $2B
DB $56, $71, $40, $E5, $48, $3E, $C7, $AA, $41, $F6
DB $3E, $28, $7C, $81, $6D, $35, $8B, $72, $E2, $A4
DB $3E, $B3, $8A, $1F, $59, $C4, $55, $4F, $55, $4F
DB $8A, $1F, $59, $AE, $AB, $46, $75, $1C, $E5, $C8
DB $2E, $43, $CC, $3E, $A9, $3D, $F2, $12, $CB, $C5
DB $CF, $90, $96, $5D, $87, $3A, $2D, $90, $B9, $39
DB $2A, $A9, $D1, $6C, $47, $98, $D5, $4B, $3E, $AB
DB $C5, $CF, $AA, $ED, $54, $BA, $2D, $8B, $92, $AA
DB $9D, $16, $C9, $D2, $52, $07, $45, $6A, $CE, $28
DB $1C, $A9, $07, $D8, $F5, $48, $3E, $C7, $C5, $0F
DB $90, $2D, $A6, $B1, $6E, $5C, $54, $87, $D6, $71
DB $43, $EB, $38, $8A, $A9, $EA, $A9, $F1, $43, $EB
DB $35, $D5, $68, $CE, $A3, $9C, $B9, $05, $C8, $79
DB $87, $D5, $27, $BE, $42, $59, $78, $B9, $F2, $12
DB $CB, $B0, $E7, $45, $B2, $17, $27, $25, $55, $3A
DB $2D, $88, $F3, $1A, $A9, $67, $D5, $78, $B9, $F5
DB $5D, $AA, $97, $45, $B1, $72, $55, $53, $A2, $D9
DB $3A, $4A, $40, $E8, $AD, $59, $C5, $03, $95, $20
DB $FB, $1E, $A9, $07, $D8, $F8, $A1, $F2, $05, $B4
DB $D6, $2D, $CB, $8A, $90, $FA, $CE, $28, $7D, $67
DB $11, $55, $3D, $55, $3E, $28, $7D, $66, $BA, $AD
DB $19, $D4, $73, $97, $20, $B9, $0F, $30, $FA, $A4
DB $F7, $C8, $4B, $2F, $17, $3E, $42, $59, $76, $1C
DB $E8, $B6, $42, $E4, $E4, $AA, $A7, $45, $B1, $1E
DB $63, $55, $2C, $FA, $AF, $17, $3E, $AB, $B5, $52
DB $E8, $B6, $2E, $4A, $AA, $74, $5B, $27, $49, $48
DB $1D, $15, $AB, $38, $A0, $72, $A4, $1F, $63, $D5
DB $20, $FB, $1F, $14, $3E, $40, $B6, $9A, $C5, $B9
DB $71, $52, $1F, $59, $C5, $0F, $AC, $E2, $2A, $A7
DB $AA, $A7, $C5, $0F, $AC, $D7, $55, $A3, $3A, $8E
DB $72, $E4, $17, $21, $E6, $1F, $54, $9E, $F9, $09
DB $65, $E2, $E7, $C8, $4B, $2E, $C3, $9D, $16, $C8
DB $5C, $9C, $95, $54, $E8, $B6, $23, $CC, $6A, $A5
DB $9F, $55, $E2, $E7, $D5, $76, $AA, $5D, $16, $C5
DB $C9, $55, $4E, $8B, $64, $55, $82, $44, $6D, $4A
DB $89, $32, $17, $67, $44, $D5, $5A, $24, $C8, $5D
DB $9D, $13, $55, $68, $85, $48, $05, $61, $71, $35
DB $56, $88, $54, $80, $56, $17, $12, $6A, $E8, $9A
DB $40, $3D, $96, $88, $CA, $93, $17, $48, $09, $63
DB $45, $6A, $82, $45, $55, $1B, $11, $95, $26, $2E
DB $A8, $48, $8D, $A9, $51, $26, $AE, $89, $AA, $B4
DB $49, $AB, $A2, $6A, $AD, $10, $AA, $8B, $89, $AA
DB $B4, $42, $AA, $2E, $24, $D5, $D1, $35, $56, $88
DB $CA, $93, $17, $54, $D1, $5A, $A0, $91, $55, $46
DB $C4, $65, $49, $8B, $A4, $0D, $60, $3C, $43, $54
DB $1A, $2D, $90, $75, $8A, $89, $15, $34, $5B, $20
DB $EB, $15, $12, $2A, $68, $AF, $20, $1A, $C1, $D1
DB $22, $A6, $8A, $F2, $01, $AC, $1D, $16, $D4, $A8
DB $91, $20, $25, $8D, $11, $B5, $6C, $4A, $90, $03
DB $62, $22, $6A, $83, $C4, $25, $43, $44, $6D, $5B
DB $12, $AA, $07, $88, $6A, $83, $45, $B5, $2A, $24
DB $54, $D1, $6D, $4A, $89, $15, $34, $57, $A8, $74
DB $48, $A9, $A2, $BD, $43, $A2, $DA, $95, $12, $2A
DB $68, $8D, $AB, $62, $55, $48, $89, $AA, $0F, $10
DB $95, $0D, $11, $B5, $6C, $4A ; flushed
; translation data
; DB $03; bytes follow
; bits used, code, real 'byte'
dnb09_reg_3:
DB $01, $01, $00 ;2494
DB $02, $01, $01 ;1348
DB $03, $01, $02 ;190
; phrases follow
dnb09_pd_3:
; data follows
dnb09_reg_3_data:
DB $96, $EF, $CD, $71, $79, $3E, $4B, $A7, $A5, $F9
DB $AE, $2F, $27, $C9, $74, $E4, $D8, $EB, $65, $B3
DB $A7, $16, $5B, $3E, $27, $A5, $D3, $D6, $E9, $E9
DB $3C, $96, $A7, $92, $E9, $E9, $7C, $4F, $4B, $A7
DB $AD, $D3, $D2, $79, $2C, $B7, $7E, $6B, $8B, $C9
DB $F2, $5D, $3D, $2F, $CD, $71, $79, $3E, $4B, $A7
DB $26, $C7, $5B, $2D, $9D, $38, $B2, $D9, $F1, $3D
DB $2E, $9E, $B7, $4F, $49, $E4, $B5, $3C, $97, $4F
DB $4B, $E2, $7A, $5D, $3D, $6E, $9E, $93, $C9, $65
DB $BB, $F3, $5C, $5E, $4F, $92, $E9, $E9, $7E, $6B
DB $8B, $C9, $F2, $5D, $39, $36, $3A, $D9, $6C, $E9
DB $C5, $96, $CF, $89, $E9, $74, $F5, $BA, $7A, $4F
DB $25, $A9, $E4, $BA, $7A, $5F, $13, $D2, $E9, $EB
DB $74, $F4, $9E, $4B, $2D, $DF, $9A, $E2, $F2, $7C
DB $97, $4F, $4B, $F3, $5C, $5E, $4F, $92, $E9, $C9
DB $B1, $D6, $CB, $67, $4E, $2C, $B6, $7C, $4F, $4B
DB $A7, $AD, $D3, $D2, $79, $2D, $4F, $25, $D3, $D2
DB $F8, $9E, $97, $4F, $5B, $A7, $A4, $F2, $59, $6E
DB $FC, $D7, $17, $93, $E4, $BA, $7A, $5F, $9A, $E2
DB $F2, $7C, $97, $4E, $4D, $8E, $B6, $5B, $3A, $71
DB $65, $B3, $E2, $7A, $5D, $3D, $6E, $9E, $93, $C9
DB $6A, $79, $2E, $9E, $97, $C4, $F4, $BA, $7A, $DD
DB $3D, $27, $92, $CB, $77, $E6, $B8, $BC, $9F, $25
DB $D3, $D2, $FC, $D7, $17, $93, $E4, $BA, $72, $6C
DB $75, $B2, $D9, $D3, $8B, $2D, $9F, $13, $D2, $E9
DB $EB, $74, $F4, $9E, $4B, $53, $C9, $74, $F4, $BE
DB $27, $A5, $D3, $D6, $E9, $E9, $3C, $56, $C7, $4B
DB $F4, $5C, $5E, $4F, $92, $E9, $D4, $E9, $7E, $8B
DB $8B, $C9, $F2, $5D, $39, $36, $3A, $D9, $6C, $E9
DB $C5, $96, $CF, $89, $E9, $74, $F5, $BA, $7A, $4F
DB $25, $A9, $E4, $BA, $7A, $5F, $13, $D2, $E9, $EB
DB $74, $F4, $9E, $4A ; flushed
; translation data
; DB $3E; bytes follow
; bits used, code, real 'byte'
dnb09_reg_4:
DB $83, $04, $04 ;240
DB $83, $06, $00 ;468
DB $84, $06, $07 ;130
DB $84, $0A, $05 ;240
DB $84, $0B, $03 ;245
DB $84, $0E, $01 ;468
DB $04, $0F, $7B ;580
DB $05, $08, $D5 ;74
DB $05, $09, $EF ;76
DB $05, $0A, $86 ;77
DB $85, $0E, $06 ;162
DB $85, $0F, $02 ;240
DB $06, $06, $2D ;39
DB $06, $08, $70 ;42
DB $06, $09, $98 ;44
DB $06, $0A, $BC ;44
DB $06, $0C, $DE ;56
DB $86, $0D, $0A ;56
DB $86, $0E, $08 ;70
DB $06, $0F, $3F ;74
DB $06, $16, $C9 ;109
DB $86, $17, $09 ;112
DB $87, $06, $0C ;16
DB $07, $08, $AA ;20
DB $07, $09, $CC ;20
DB $87, $0A, $0B ;20
DB $07, $0B, $0C ;30
DB $07, $0E, $92 ;39
DB $07, $0F, $47 ;42
DB $07, $16, $9F ;50
DB $07, $17, $96 ;56
DB $08, $06, $F0 ;8
DB $08, $08, $B3 ;10
DB $08, $09, $50 ;12
DB $08, $0A, $77 ;12
DB $08, $0B, $5A ;16
DB $08, $0E, $66 ;20
DB $08, $0F, $7E ;20
DB $09, $04, $A0 ;4
DB $09, $06, $45 ;5
DB $09, $08, $6F ;5
DB $09, $09, $BA ;6
DB $09, $0A, $BB ;6
DB $09, $0B, $6A ;8
DB $09, $0E, $64 ;9
DB $09, $0F, $97 ;10
DB $0A, $02, $5D ;2
DB $0A, $04, $9E ;2
DB $0A, $05, $B5 ;2
DB $0A, $06, $BE ;2
DB $0A, $07, $43 ;4
DB $0A, $0A, $B4 ;4
DB $0A, $0B, $F1 ;4
DB $0A, $0E, $46 ;5
DB $0A, $0F, $6E ;5
DB $0B, $01, $54 ;1
DB $0B, $02, $72 ;1
DB $0B, $03, $A1 ;1
DB $0B, $06, $95 ;2
DB $0B, $07, $9A ;2
DB $0C, $01, $4F ;1
DB $0D, $01, $49 ;1
; phrases follow
dnb09_pd_4:
DB $09, $9F, $9F, $9F, $A0, $A0, $9F, $9F, $9E, $9E; 468
DB $09, $96, $96, $96, $97, $97, $96, $96, $95, $95; 468
DB $0A, $BB, $BA, $BC, $BE, $BC, $BB, $BA, $BC, $BE, $BC; 240
DB $05, $97, $96, $98, $9A, $98; 245
DB $05, $6F, $6E, $70, $72, $70; 240
DB $05, $46, $45, $47, $49, $47; 240
DB $09, $C9, $C9, $C9, $C9, $C9, $9F, $9F, $9F, $9F; 162
DB $0D, $3F, $3F, $3F, $3F, $2D, $2D, $2D, $2D, $2D, $EF, $EF, $EF, $EF; 130
DB $07, $9F, $9F, $9F, $A0, $A0, $9F, $9F; 70
DB $0E, $86, $86, $86, $86, $86, $6A, $6A, $6A, $6A, $64, $64, $64, $64, $64; 112
DB $07, $96, $96, $96, $97, $97, $96, $96; 56
DB $02, $54, $A1; 20
DB $02, $4F, $98; 16
; data follows
dnb09_reg_4_data:
DB $FF, $01, $3F, $52, $A4, $F0, $28, $09, $A9, $51
DB $7D, $4A, $93, $C0, $A0, $26, $A5, $45, $F5, $2A
DB $4F, $02, $80, $9A, $95, $17, $D4, $A9, $3C, $0A
DB $02, $6A, $54, $5F, $52, $63, $60, $78, $BD, $49
DB $C3, $75, $26, $36, $07, $8B, $D4, $9C, $37, $52
DB $63, $60, $78, $BD, $49, $C3, $75, $26, $36, $07
DB $8B, $D4, $9D, $36, $07, $8B, $89, $00, $7A, $99
DB $13, $EA, $98, $A0, $E9, $00, $F6, $54, $50, $71
DB $79, $04, $C8, $B1, $78, $A0, $EB, $AA, $42, $E4
DB $0B, $B2, $22, $B5, $4B, $45, $55, $11, $11, $D5
DB $3E, $4A, $90, $BA, $A2, $2B, $54, $C8, $9F, $54
DB $C5, $15, $5A, $41, $32, $2D, $55, $45, $07, $17
DB $90, $4C, $8B, $17, $8A, $0E, $BA, $A4, $2E, $A8
DB $8A, $D5, $2D, $15, $54, $44, $47, $54, $F9, $2A
DB $62, $E4, $AB, $0B, $A8, $98, $99, $50, $E3, $48
DB $1D, $65, $8C, $75, $4B, $C8, $2A, $49, $3A, $A5
DB $CD, $75, $A4, $3A, $45, $AC, $7C, $46, $AA, $62
DB $B5, $43, $E2, $17, $53, $24, $B4, $87, $54, $F8
DB $8D, $51, $31, $32, $A1, $D1, $3E, $A3, $48, $2A
DB $49, $AA, $C6, $3A, $A5, $E4, $15, $24, $9D, $52
DB $E6, $BA, $D2, $1D, $53, $E2, $35, $53, $15, $AA
DB $1F, $10, $BA, $99, $25, $A6, $3A, $4B, $58, $75
DB $4C, $89, $F5, $4C, $50, $74, $80, $7B, $2A, $28
DB $38, $BC, $82, $64, $58, $BC, $50, $75, $D5, $21
DB $72, $05, $D9, $11, $5A, $A5, $A2, $AA, $88, $88
DB $EA, $9F, $25, $48, $5D, $51, $15, $AA, $64, $4F
DB $AA, $62, $8A, $AD, $20, $99, $16, $AA, $A2, $83
DB $8B, $C8, $26, $45, $8B, $C5, $07, $5D, $52, $17
DB $54, $45, $6A, $96, $8A, $AA, $22, $23, $AA, $7C
DB $95, $31, $72, $55, $85, $D4, $4C, $4C, $A8, $71
DB $A4, $0E, $B2, $C6, $3A, $A5, $E4, $15, $24, $9D
DB $52, $E6, $BA, $D2, $1D, $22, $D6, $3E, $23, $55
DB $31, $5A, $A1, $F1, $0B, $A9, $92, $5A, $43, $AA
DB $7C, $46, $A8, $98, $99, $50, $E8, $9F, $51, $A4
DB $15, $24, $D5, $63, $1D, $52, $F2, $0A, $92, $4E
DB $A9, $73, $5D, $69, $0E, $A9, $F1, $1A, $A9, $8A
DB $D5, $0F, $88, $5D, $4C, $92, $D2, $1C, $F0, $17
DB $64, $C8, $1A, $49, $0A, $61, $C1, $58, $70, $E0
DB $A6, $1C, $00, $80, $2D, $82, $24, $05, $48, $20
DB $2B, $83, $87, $3C, $05, $D9, $32, $06, $92, $41
DB $9C, $34, $1B, $0F, $0D, $06, $70, $D0, $A1, $C0
DB $DC, $1E, $1A, $F0, $17, $64, $C8, $1A, $49, $0A
DB $61, $C1, $58, $70, $E0, $A6, $1C, $00, $80, $2D
DB $82, $24, $05, $48, $20, $2B, $83, $87, $3C, $05
DB $D9, $32, $06, $92, $41, $9C, $34, $1B, $0F, $0D
DB $06, $70, $D0, $A1, $C0, $DC, $1E, $1B, $52, $23
DB $00, $80, $1F, $52, $30, $CA, $91, $18, $04, $00
DB $FA, $91, $86, $54, $88, $C0, $20, $07, $D4, $8C
DB $32, $A4, $46, $01, $00, $3E, $A4, $61, $95, $1F
DB $1A, $01, $C0, $35, $47, $E1, $AA, $8F, $8D, $00
DB $E0, $1A, $A3, $F0, $D5, $47, $C6, $80, $70, $0D
DB $51, $F8, $6A, $A3, $E3, $40, $38, $06, $A8, $FC
DB $34 ; flushed
; translation data
; DB $06; bytes follow
; bits used, code, real 'byte'
dnb09_reg_5:
DB $01, $01, $00 ;2456
DB $03, $02, $01 ;359
DB $03, $03, $05 ;585
DB $04, $01, $02 ;56
DB $04, $02, $03 ;288
DB $04, $03, $04 ;288
; phrases follow
dnb09_pd_5:
; data follows
dnb09_reg_5_data:
DB $FF, $01, $3F, $E0, $49, $7F, $4A, $5E, $95, $F0
DB $DC, $97, $27, $9D, $4B, $25, $A7, $A5, $7C, $37
DB $25, $C9, $E7, $52, $CD, $4B, $65, $51, $E4, $AD
DB $3D, $2B, $C4, $F4, $AD, $B9, $29, $6E, $B4, $F4
DB $8D, $54, $BB, $55, $47, $92, $B4, $F4, $AF, $13
DB $D2, $B6, $F6, $AD, $3D, $23, $55, $2C, $D4, $B8
DB $D7, $C3, $72, $5C, $9E, $75, $2C, $96, $9E, $95
DB $F0, $DC, $97, $27, $9D, $4B, $35, $2D, $95, $47
DB $92, $B4, $F4, $AF, $13, $D2, $B6, $E4, $A5, $BA
DB $D3, $D2, $35, $52, $ED, $55, $1E, $4A, $D3, $D2
DB $BC, $4F, $4A, $DB, $DA, $B4, $F4, $8D, $54, $B2
DB $5F, $F0, $09, $FF, $02, $4F, $F8, $12, $C0 ; flushed
; translation data
; DB $0D; bytes follow
; bits used, code, real 'byte'
dnb09_reg_6:
DB $82, $02, $00 ;832
DB $02, $03, $01 ;1862
DB $83, $02, $02 ;400
DB $83, $03, $01 ;480
DB $84, $02, $03 ;112
DB $04, $03, $02 ;209
DB $05, $01, $03 ;21
DB $85, $02, $04 ;48
DB $05, $03, $17 ;85
DB $06, $01, $0E ;17
DB $07, $01, $06 ;2
DB $08, $01, $05 ;1
DB $09, $01, $04 ;1
; phrases follow
dnb09_pd_6:
DB $0D, $02, $01, $03, $05, $03, $02, $04, $06, $03, $02, $02, $02, $02; 832
DB $0F, $01, $01, $01, $03, $02, $02, $02, $17, $17, $17, $17, $17, $06, $02, $02; 480
DB $04, $03, $02, $02, $02; 400
DB $04, $01, $02, $02, $02; 112
DB $02, $01, $0E; 48
; data follows
dnb09_reg_6_data:
DB $FF, $A8, $4F, $25, $53, $68, $98, $CE, $5A, $15
DB $79, $2A, $9B, $42, $63, $30, $90, $AA, $39, $2A
DB $98, $14, $20, $46, $61, $21, $54, $72, $55, $30
DB $28, $40, $8C, $C2, $42, $AF, $25, $53, $68, $98
DB $CE, $5A, $15, $79, $2A, $9B, $42, $63, $30, $90
DB $AA, $39, $2A, $98, $14, $20, $46, $61, $21, $54
DB $72, $55, $30, $28, $40, $8C, $C2, $42, $AF, $25
DB $53, $68, $98, $CE, $5A, $15, $79, $2A, $9B, $42
DB $63, $30, $90, $AA, $39, $2A, $98, $14, $20, $46
DB $61, $21, $54, $72, $55, $30, $28, $40, $8C, $C2
DB $42, $AF, $25, $53, $68, $98, $CE, $5A, $15, $79
DB $2A, $9B, $42, $63, $30, $90, $AA, $39, $2A, $98
DB $14, $20, $46, $61, $21, $54, $72, $55, $30, $28
DB $40, $8C, $C2, $42, $AF, $25, $53, $68, $98, $CE
DB $5A, $2A, $F2, $55, $36, $89, $8C, $C2, $45, $51
DB $C9, $54, $C0, $A2, $04, $66, $12, $2A, $8E, $4A
DB $A6, $05, $10, $23, $30, $91, $57, $92, $A9, $B4
DB $4C, $67, $2D, $15, $79, $2A, $9B, $44, $C6, $61
DB $22, $A8, $E4, $AA, $60, $51, $02, $33, $09, $15
DB $47, $25, $53, $02, $88, $11, $98, $48, $AB, $C9
DB $54, $DA, $26, $33, $96, $8A, $BC, $95, $4D, $A2
DB $63, $30, $91, $54, $72, $55, $30, $28, $81, $19
DB $84, $8A, $A3, $92, $A9, $81, $44, $08, $CC, $24
DB $55, $E4, $AA, $6D, $13, $19, $CB, $45, $5E, $4A
DB $A6, $D1, $31, $98, $48, $AA, $39, $2A, $98, $14
DB $40, $8C, $C2, $45, $51, $C9, $54, $C0, $A2, $04
DB $66, $12, $2F, $F0, $13, $80 ; flushed
; translation data
; DB $13; bytes follow
; bits used, code, real 'byte'
dnb09_reg_7:
DB $82, $02, $00 ;832
DB $02, $03, $38 ;1257
DB $03, $02, $30 ;394
DB $84, $02, $03 ;177
DB $84, $03, $02 ;280
DB $84, $06, $01 ;400
DB $04, $07, $3C ;539
DB $05, $03, $20 ;56
DB $06, $02, $2C ;9
DB $06, $04, $18 ;27
DB $06, $05, $10 ;28
DB $07, $01, $00 ;8
DB $07, $02, $08 ;8
DB $07, $03, $3D ;8
DB $07, $06, $28 ;12
DB $07, $07, $34 ;15
DB $08, $01, $31 ;4
DB $09, $01, $24 ;4
DB $0A, $01, $2D ;1
; phrases follow
dnb09_pd_7:
DB $0D, $31, $31, $30, $30, $30, $30, $31, $31, $30, $30, $38, $38, $38; 832
DB $04, $30, $30, $38, $38; 400
DB $07, $38, $38, $30, $38, $38, $38, $38; 280
DB $03, $30, $38, $38; 177
; data follows
dnb09_reg_7_data:
DB $00, $38, $41, $E9, $70, $5D, $17, $00, $7A, $2E
DB $0B, $5B, $83, $D9, $C1, $74, $5C, $16, $B7, $07
DB $B3, $80, $3D, $F7, $07, $F6, $2E, $0F, $EC, $5C
DB $1F, $D8, $B8, $3F, $B1, $70, $7B, $38, $2B, $38
DB $3E, $B7, $05, $D1, $70, $07, $A2, $E0, $B5, $B8
DB $3D, $9C, $17, $45, $C1, $6B, $70, $7B, $38, $03
DB $DF, $70, $7F, $62, $E0, $FE, $C5, $C1, $FD, $8B
DB $83, $FB, $17, $07, $B3, $81, $5B, $16, $DC, $1B
DB $0E, $13, $0E, $1F, $47, $06, $D7, $89, $81, $74
DB $70, $6C, $38, $48, $E2, $61, $F7, $F1, $30, $9C
DB $BC, $24, $71, $7A, $1C, $4C, $27, $2F, $09, $1C
DB $5E, $87, $13, $02, $B6, $2D, $B8, $36, $1C, $26
DB $1C, $3E, $8E, $0D, $AF, $13, $02, $E8, $E0, $D8
DB $70, $91, $C4, $C3, $EF, $E2, $61, $39, $78, $48
DB $E2, $F4, $38, $98, $4E, $5E, $12, $38, $BD, $0E
DB $26, $1C, $79, $35, $70, $D1, $80, $66, $87, $14
DB $1A, $0A, $20, $E3, $C9, $AB, $86, $82, $88, $06
DB $68, $75, $48, $29, $0E, $4D, $5C, $90, $51, $5D
DB $0E, $A9, $05, $21, $C9, $AB, $92, $0A, $2B, $A1
DB $D5, $20, $A2, $0E, $D8, $49, $35, $70, $D1, $80
DB $66, $87, $14, $1A, $0A, $20, $E3, $C9, $AB, $86
DB $82, $88, $06, $68, $75, $48, $29, $0E, $4D, $5C
DB $90, $51, $5D, $0E, $A9, $05, $21, $C9, $AB, $92
DB $0A, $2B, $A1, $D5, $20, $A2, $0E, $D8, $49, $35
DB $70, $D1, $80, $66, $87, $14, $1A, $0A, $20, $E3
DB $C9, $AB, $86, $82, $88, $06, $68, $75, $48, $29
DB $0E, $4D, $5C, $90, $51, $5D, $0E, $A9, $05, $21
DB $C9, $AB, $92, $0A, $2B, $A1, $D5, $20, $A2, $0E
DB $D8, $49, $35, $70, $D1, $80, $66, $87, $14, $1A
DB $0A, $20, $E3, $C9, $AB, $86, $82, $88, $06, $68
DB $75, $48, $29, $0E, $4D, $5C, $90, $51, $5D, $0E
DB $A9, $05, $21, $C9, $AB, $92, $0A, $2B, $A1, $D5
DB $20, $A2, $0E, $3C, $9A, $B8, $68, $C1, $CD, $0E
DB $28, $34, $60, $E3, $C9, $AB, $86, $8C, $1C, $D0
DB $EA, $91, $85, $2E, $4D, $5C, $91, $AE, $87, $54
DB $8C, $29, $72, $6A, $E4, $8D, $74, $3A, $A4, $60
DB $E3, $C9, $AB, $86, $8C, $1C, $D0, $E2, $83, $46
DB $0E, $3C, $9A, $B8, $68, $C1, $CD, $0E, $A9, $18
DB $52, $E4, $D5, $C9, $1A, $E8, $75, $48, $C2, $97
DB $26, $AE, $48, $D7, $43, $AA, $46, $0E, $3C, $9A
DB $B8, $68, $C1, $CD, $0E, $28, $34, $60, $E3, $C9
DB $AB, $86, $8C, $1C, $D0, $EA, $91, $85, $2E, $4D
DB $5C, $91, $AE, $87, $54, $8C, $29, $72, $6A, $E4
DB $8D, $74, $3A, $A4, $60, $E3, $C9, $AB, $86, $8C
DB $1C, $D0, $E2, $83, $46, $0E, $3C, $9A, $B8, $68
DB $C1, $CD, $0E, $A9, $18, $52, $E4, $D5, $C9, $1A
DB $E8, $75, $48, $C2, $97, $26, $AE, $48, $D7, $43
DB $AA, $46, $02, $E8, $E0, $D8, $70, $98, $70, $FA
DB $38, $36, $BC, $4C, $0B, $A3, $83, $61, $C2, $47
DB $13, $0F, $BF, $89, $84, $E5, $E1, $23, $8B, $D0
DB $E2, $61, $39, $78, $48, $E2, $F4, $38, $98, $15
DB $B1, $6D, $C1, $B0, $E1, $30, $E1, $F4, $70, $6D
DB $78, $98, $17, $47, $06, $C3, $84, $8E, $26, $1F
DB $7F, $13, $09, $CB, $C2, $47, $17, $A1, $C4, $C2
DB $72, $F0, $91, $C5, $E8, $71, $30 ; flushed
; translation data
; DB $17; bytes follow
; bits used, code, real 'byte'
dnb09_reg_8:
DB $82, $02, $01 ;960
DB $82, $03, $00 ;1170
DB $83, $02, $05 ;288
DB $84, $02, $06 ;162
DB $84, $06, $02 ;384
DB $84, $07, $03 ;384
DB $85, $02, $08 ;96
DB $85, $03, $07 ;126
DB $85, $06, $04 ;180
DB $05, $07, $0C ;209
DB $86, $03, $09 ;60
DB $07, $02, $06 ;11
DB $07, $04, $00 ;21
DB $07, $05, $05 ;23
DB $08, $02, $0B ;6
DB $08, $06, $07 ;11
DB $08, $07, $09 ;15
DB $09, $01, $0D ;3
DB $09, $02, $03 ;4
DB $09, $03, $04 ;5
DB $09, $06, $08 ;7
DB $09, $07, $0A ;7
DB $0A, $01, $0E ;2
; phrases follow
dnb09_pd_8:
DB $0F, $07, $06, $05, $0A, $07, $06, $05, $05, $0A, $07, $06, $05, $08, $05, $04; 1170
DB $0F, $00, $0A, $0C, $0D, $0E, $0D, $0C, $08, $08, $09, $09, $0B, $0C, $0C, $09; 960
DB $0C, $00, $00, $00, $00, $00, $09, $09, $0B, $0C, $09, $09, $0B; 384
DB $0C, $09, $0B, $0C, $0E, $0D, $09, $07, $05, $09, $09, $0B, $0C; 384
DB $0F, $07, $06, $05, $09, $07, $06, $05, $05, $0A, $07, $06, $05, $08, $05, $04; 180
DB $09, $00, $00, $00, $00, $00, $00, $0A, $0A, $06; 288
DB $03, $03, $03, $0A; 162
DB $03, $03, $03, $09; 126
DB $03, $09, $0B, $0C; 96
DB $0F, $07, $06, $05, $05, $05, $05, $05, $09, $07, $06, $05, $05, $08, $05, $04; 60
; data follows
dnb09_reg_8_data:
DB $D2, $10, $06, $05, $00, $C4, $C4, $30, $98, $6C
DB $4C, $31, $84, $C3, $62, $61, $B1, $30, $D8, $98
DB $6C, $4C, $30, $62, $62, $18, $4C, $36, $26, $18
DB $C2, $61, $B1, $30, $D8, $98, $6C, $4C, $36, $26
DB $18, $31, $31, $0C, $26, $1B, $13, $0C, $61, $30
DB $D8, $98, $6C, $4C, $36, $26, $1B, $13, $0C, $18
DB $98, $86, $13, $0D, $89, $86, $30, $98, $6C, $4C
DB $36, $26, $1B, $13, $0D, $89, $86, $06, $02, $05
DB $34, $CE, $8E, $48, $23, $4C, $E8, $E4, $82, $34
DB $CE, $8E, $48, $23, $4C, $E8, $E4, $82, $34, $CE
DB $8E, $48, $23, $4C, $E8, $E4, $82, $34, $CE, $8E
DB $48, $23, $4C, $E8, $E4, $82, $34, $CE, $8E, $48
DB $23, $4C, $E8, $E4, $82, $34, $CE, $8E, $48, $23
DB $4C, $E8, $E4, $82, $34, $CE, $8E, $48, $23, $4C
DB $E8, $E4, $82, $34, $CE, $8E, $48, $23, $4C, $E8
DB $E4, $82, $34, $CE, $8E, $48, $23, $4C, $E8, $E4
DB $82, $34, $CE, $8E, $48, $23, $4C, $E8, $E4, $82
DB $34, $CE, $8E, $48, $23, $4C, $E8, $E4, $82, $34
DB $CE, $8E, $48, $23, $4C, $E8, $E4, $82, $34, $CE
DB $8E, $48, $23, $4C, $E8, $E4, $82, $34, $CE, $8E
DB $48, $23, $4C, $E8, $E4, $82, $34, $CE, $8E, $48
DB $23, $4C, $E8, $E4, $82, $34, $CE, $8E, $48, $23
DB $4C, $E8, $E4, $82, $D2, $70, $18, $14, $03, $13
DB $10, $C2, $61, $B1, $30, $C6, $13, $0D, $89, $86
DB $C4, $C3, $62, $61, $B1, $30, $C1, $89, $88, $61
DB $30, $D8, $98, $63, $09, $86, $C4, $C3, $62, $61
DB $B1, $30, $D8, $98, $60, $60, $20, $50 ; flushed
; translation data
; DB $0C; bytes follow
; bits used, code, real 'byte'
dnb09_reg_9:
DB $81, $01, $00 ;2912
DB $82, $01, $01 ;672
DB $04, $01, $09 ;87
DB $04, $02, $0A ;87
DB $84, $03, $02 ;224
DB $05, $01, $08 ;46
DB $06, $01, $07 ;15
DB $08, $01, $03 ;2
DB $08, $02, $05 ;3
DB $08, $03, $0D ;3
DB $09, $01, $06 ;1
DB $0A, $01, $04 ;1
; phrases follow
dnb09_pd_9:
DB $0D, $0D, $0A, $09, $08, $0D, $0A, $09, $08, $08, $0D, $0A, $09, $08; 2912
DB $04, $07, $06, $05, $05; 672
DB $04, $05, $04, $03, $03; 224
; data follows
dnb09_reg_9_data:
DB $09, $42, $50, $94, $08, $D0, $94, $25, $09, $41
DB $1A, $22, $88, $A2, $28, $23, $44, $51, $14, $45
DB $04, $68, $4A, $12, $84, $A0, $46, $84, $A1, $28
DB $4A, $08, $D1, $14, $45, $11, $41, $1A, $22, $88
DB $A2, $28, $23, $42, $50, $94, $25, $02, $34, $25
DB $09, $42, $50, $46, $88, $A2, $28, $8A, $08, $D1
DB $14, $45, $11, $41, $1A, $12, $84, $A1, $28, $11
DB $A1, $28, $4A, $12, $82, $34, $45, $11, $44, $50
DB $46, $88, $A2, $28, $8A, $08, $D0, $94, $25, $09
DB $40, $8D, $09, $42, $50, $94, $11, $A2, $28, $8A
DB $22, $82, $34, $45, $11, $44, $50, $46, $84, $A1
DB $28, $4A, $04, $68, $4A, $12, $84, $A0, $8D, $11
DB $44, $51, $14, $11, $A2, $28, $8A, $22, $82, $34
DB $25, $09, $42, $50, $23, $42, $50, $94, $25, $04
DB $68, $8A, $22, $88, $A0, $8D, $11, $44, $51, $14
DB $11, $A1, $28, $4A, $12, $81, $1A, $12, $84, $A1
DB $28, $23, $44, $51, $14, $45, $04, $68, $8A, $22
DB $88, $A0, $8D, $09, $42, $50, $94, $08, $D0, $94
DB $25, $09, $41, $1A, $22, $88, $A2, $28, $23, $44
DB $51, $14, $45, $04, $68, $4A, $12, $84, $A0, $46
DB $84, $A1, $28, $4A, $08, $D1, $14, $45, $11, $41
DB $1A, $22, $88, $A2, $28, $23, $42, $50, $94, $25
DB $02, $34, $25, $09, $42, $50, $46, $88, $A2, $28
DB $8A, $08, $D1, $14, $45, $11, $41, $1A, $12, $84
DB $A1, $28, $11, $A1, $28, $4A, $12, $82, $34, $45
DB $11, $44, $50, $46, $88, $A2, $28, $8A, $08, $D0
DB $94, $25, $09, $40, $8D, $09, $42, $50, $94, $11
DB $A2, $28, $8A, $22, $82, $34, $45, $11, $44, $50
DB $46, $84, $A1, $28, $4A, $04, $68, $4A, $12, $84
DB $A0, $8D, $11, $44, $51, $14, $11, $A2, $28, $8A
DB $22, $82, $34 ; flushed
; translation data
; DB $12; bytes follow
; bits used, code, real 'byte'
dnb09_reg_10:
DB $82, $02, $01 ;448
DB $83, $06, $00 ;780
DB $03, $07, $00 ;864
DB $04, $02, $0A ;162
DB $84, $04, $02 ;208
DB $04, $05, $06 ;243
DB $04, $06, $05 ;268
DB $84, $07, $03 ;416
DB $05, $02, $0B ;81
DB $05, $03, $09 ;126
DB $85, $06, $04 ;200
DB $05, $07, $04 ;202
DB $06, $02, $07 ;23
DB $06, $03, $0C ;26
DB $07, $01, $03 ;10
DB $07, $02, $0D ;12
DB $07, $03, $0E ;12
DB $08, $01, $08 ;5
; phrases follow
dnb09_pd_10:
DB $0D, $07, $06, $05, $05, $0A, $07, $06, $05, $08, $05, $04, $03, $03; 780
DB $0E, $09, $09, $0B, $0C, $0C, $05, $05, $05, $05, $09, $09, $09, $09, $09; 448
DB $04, $07, $06, $05, $0A; 208
DB $0D, $05, $05, $05, $05, $07, $07, $07, $07, $07, $05, $05, $05, $05; 416
DB $0A, $06, $06, $06, $06, $06, $06, $06, $06, $06, $04; 200
; data follows
dnb09_reg_10_data:
DB $FF, $01, $3D, $1D, $1E, $A3, $D6, $C8, $E8, $F5
DB $1E, $B6, $47, $47, $A8, $F5, $B2, $3A, $3D, $47
DB $AD, $91, $D1, $EA, $3D, $6C, $8E, $8F, $51, $EB
DB $64, $74, $7A, $8F, $5B, $23, $A3, $D4, $7C, $D6
DB $00, $98, $79, $01, $11, $18, $40, $8A, $60, $D8
DB $44, $60, $C8, $C2, $23, $06, $08, $A6, $0D, $84
DB $46, $0C, $8C, $22, $30, $64, $61, $11, $83, $23
DB $08, $8C, $19, $18, $44, $60, $C1, $16, $AC, $18
DB $22, $C9, $80, $26, $1E, $40, $44, $46, $10, $22
DB $98, $36, $11, $18, $32, $30, $88, $C1, $82, $29
DB $83, $61, $11, $83, $23, $08, $8C, $19, $18, $44
DB $60, $C8, $C2, $23, $06, $46, $11, $18, $30, $45
DB $AB, $06, $08, $B2, $60, $09, $87, $90, $11, $11
DB $84, $08, $A6, $0D, $84, $46, $0C, $8C, $22, $30
DB $60, $8A, $60, $D8, $44, $60, $C8, $C2, $23, $06
DB $46, $11, $18, $32, $30, $88, $C1, $91, $84, $46
DB $0C, $11, $6A, $C1, $82, $2C, $98, $02, $61, $E4
DB $04, $44, $61, $02, $29, $83, $61, $11, $83, $23
DB $08, $8C, $18, $22, $98, $36, $11, $18, $32, $30
DB $88, $C1, $91, $84, $46, $0C, $8C, $22, $30, $64
DB $61, $11, $83, $04, $53, $03, $03, $07, $21, $44
DB $81, $81, $83, $98, $B4, $A8, $40, $41, $4C, $B9
DB $2B, $A4, $B9, $2B, $A4, $E3, $61, $38, $30, $30
DB $73, $16, $95, $08, $08, $29, $90, $40, $41, $4C
DB $86, $C2, $71, $B0, $9C, $6C, $27, $1B, $09, $FE
DB $13, $C1, $81, $83, $90, $A2, $40, $C0, $C1, $CC
DB $5A, $54, $20, $20, $A6, $5C, $95, $D2, $5C, $95
DB $D2, $71, $B0, $9C, $18, $18, $39, $8B, $4A, $84
DB $04, $14, $C8, $20, $20, $A6, $43, $61, $38, $D8
DB $4E, $36, $13, $8D, $84, $FF, $09, $E0, $C0, $C1
DB $C8, $51, $20, $60, $60, $E6, $2D, $2A, $10, $10
DB $53, $2E, $4A, $E9, $2E, $4A, $E9, $38, $D8, $4E
DB $0C, $0C, $1C, $C5, $A5, $42, $02, $0A, $64, $10
DB $10, $53, $21, $B0, $9C, $6C, $27, $1B, $09, $C6
DB $C2, $7F, $84, $F0, $60, $60, $E4, $28, $90, $30
DB $30, $73, $16, $95, $08, $08, $29, $97, $25, $74
DB $97, $25, $74, $9C, $6C, $27, $06, $06, $0E, $62
DB $D2, $A1, $01, $05, $32, $08, $08, $29, $90, $D8
DB $4E, $36, $13, $8D, $84, $E3, $61, $3F, $C2, $7A
DB $3A, $3D, $47, $AD, $91, $D1, $EA, $3D, $6C, $8E
DB $8F, $51, $EB, $64, $74, $7A, $8F, $5B, $23, $A3
DB $D4, $7A, $D9, $1D, $1E, $A3, $D6, $C8, $E8, $F5
DB $1E, $B6, $47, $47, $A8, $F5, $B0 ; flushed
; This data does not appear in binary output!
dnb09_data:
DW dnb09_start
DW dnb09_reg_0 - 3, dnb09_pd_0, dnb09_reg_0_data
DW dnb09_reg_1 - 3, dnb09_pd_1, dnb09_reg_1_data
DW dnb09_reg_2 - 3, dnb09_pd_2, dnb09_reg_2_data
DW dnb09_reg_3 - 3, dnb09_pd_3, dnb09_reg_3_data
DW dnb09_reg_4 - 3, dnb09_pd_4, dnb09_reg_4_data
DW dnb09_reg_5 - 3, dnb09_pd_5, dnb09_reg_5_data
DW dnb09_reg_6 - 3, dnb09_pd_6, dnb09_reg_6_data
DW dnb09_reg_7 - 3, dnb09_pd_7, dnb09_reg_7_data
DW dnb09_reg_8 - 3, dnb09_pd_8, dnb09_reg_8_data
DW dnb09_reg_9 - 3, dnb09_pd_9, dnb09_reg_9_data
DW dnb09_reg_10 - 3, dnb09_pd_10, dnb09_reg_10_data
SONG_DATA EQU dnb09_data
dnb09_name:
DB $4D, $41, $4E, $55, $4E, $20, $56, $45, $43, $54, $52, $45, $58, $2D, $44, $45, $4D, $4F, $20, $32, $30, $31, $34, $80