On the music format modules
Sound Tracker Pro by KSA software
VfNG / NEW
As promised in the Echo 2, publishing
description of the format of compiling modules +
player from STP PRO by KSA.
The description may vstrechatsya individual
inaccuracies, so be careful.
This description is written not to eliminate
all the issues, but should help you
to understand some things at work with
player'om.
0 playback speed;
A shift to TABL1;
3.4 The shift to TABL2;
5.6 The shift to TABL3;
7.8 The shift to TABL4;
9 In this byte contains the number of elements to which one
must add real address 0 in memory. This makes the
initialization section. If this byte is 0, then the
initialization has been completed. The first element, requires
adjustment, is to address TABL2. Each element is 2 bytes (Jr.,
high byte offset from 0);
10 The first pattern;
TABL1 +0 length music positions;
TABL1 +1 position number for the loop;
TABL1 +2 to 2 bytes / position:
0 6 * number PATTERN;
+1 HEIGHT (deviations from the score
Conventional sound PATTERN);
TABL2 descriptors PATTERN'ov: 2 bytes
offset for each channel, then to 6
Bytes / PATTERN;
TABL3 shift to ornaments. 0-th pattern
serves to disable the ornaments in the channel;
TABL4 bias to samples;
format ornament:
0 point of the loop;
A full length;
2, 1 * (0) deviation from the value of the notes;
sample format:
0 point of the loop;
A full length;
2 to 4 bytes / QUARK:
0 bits 0-3 amplitude;
bit 4 mask tone;
bit 7 mask noise;
A mask bit 0 of the envelope;
5.1 bits frequency noise;
2.3 bytes vibratto frequency;
Each descriptor PATTERN contains pointers to descriptors
channels. Channels are analyzed as follows:
LD HL, CHAN_POS
LD A, (HL)
OR A
JR Z, end PATTERN
LD C, # 1910
LOOP LD A, (HL)
INC HL
CP # C0
JR C, L9
SUB C
JR NC, L1
SUB C
JR NC, L2
SUB C
JR NC, L3
SUB C
JR L4
L9 SUB # 80
JR NC, L5
SUB C
JR NC, L6
SBC A, C
JR NC, L7
L8 ADD A, # 60
in the A-note number. Her installation, output;
L7
in the A-number sample. LOOP;
L6
in the A-number ornament. LOOP;
L5
in the A-number INT'ov not need to analyze
channel. LOOP;
L4
in the A-type envelope. The next byte period. Setting the
amplitude in the registers # 1F, LOOP;
L3
Off channel output;
L2
setting the value obtained in L5, output;
L1 JR Z, L0
DEC A
in the A-number, which must be subtracted from # 0F to
get volume. LOOP;
L0
the next byte-glissade. LOOP;
Be sure to check out our player before using these statements.
;----------------------------------------; SOUND TRACKER PRO
PLAYER ; DECOMPILED BY VfNG / NEW '97 FOR ECHO-3!
; THANX 2 STALKER 4 XLNT DIZASSEMBLER!
;----------------------------------------; MUSIC EQU address of
the compiled ; Block
;---------------------------------------- LLC000 LD HL, MUSIC
JP INIT; initialization
JP PLAY; play
LD BC, (LLC0FF); off
JP SILENCE
;----------------------------------------
DEFB # 00
DEFB "SOUND TRACKER PRO"
;---------------------------------------- LLC046 DEFB # 00, #
00, # 00 LLC049 DEFB # 70, # 80, # F1, # D0, # 00
;---------------------------------------- INIT DI
LD (LLC0F0), HL
LD A, # FC
LD (LLC49C), A
LD (LLC506), A
LD (LLC573), A
LD A, (HL)
INC HL
LD (LLC114), A
CALL LLC0EA
LD A, (HL)
LD (LLC678), A
INC HL
LD A, (HL)
LD (LLC67C), A
INC HL
LD (LLC682), HL
CALL LLC0E9
LD (LLC68A), HL
PUSH HL
CALL LLC0E9
LD (LLC3A3), HL
LD (LLC2B3), HL
LD (LLC1CD), HL
CALL LLC0E9
LD (LLC344), HL
LD (LLC254), HL
LD (LLC180), HL
EX DE, HL
LD A, (HL)
LD (HL), # 00
POP HL
OR A
JR Z, LLC0A6
LLC099 CALL LLC0EA
EX DE, HL
DEC HL
LD (HL), D
DEC HL
LD (HL), E
INC HL
INC HL
DEC A
JR NZ, LLC099
LLC0A6 LD HL, LLC049
LD C, # 2003
LD (LLC2E5), HL
LD (LLC1F5), HL
LD (LLC11B), HL
LD H, A
LD L, A
LD (LLC427), HL
LD (LLC3E3), HL
LD (LLC421), HL
LD (LLC3DD), HL
LD (LLC10B), A
DEC A
LD (LLC675), A
SILENCE XOR A
LD (LLC5D3), A
LD HL, LLC0F4
LD B, # 0D
LLC0D2 LD (HL), A
INC HL
DJNZ LLC0D2
LD A, C
LD (LLC0FF), A
LD BC, # FFFD
LD A, # 0C
OUT (C), A
XOR A
LD B, # BF
OUT (C), A
JP LLC5C5
LLC0E9 EX DE, HL
LLC0EA LD E, (HL)
INC HL
LD D, (HL)
INC HL
EX DE, HL
LD BC, # 0000
LLC0F0 EQU $ - # 02
ADD HL, BC
RET
;---------------------------------------- LLC0F4 DEFB # 00, # 00
LLC0F6 DEFB # 00, # 00
LLC0F8 DEFB # 00, # 00
LLC0FA DEFB # 00
LLC0FB DEFB # 00
LLC0FC DEFB # 00
LLC0FD DEFB # 00
LLC0FE DEFB # 00
LLC0FF DEFB # 00
LLC100 DEFB # 00
;---------------------------------------- PLAY DI
LD (LLC5C3), SP
LD D, # 00
EXX
LD BC, # 60F0
LLC10B EQU $ - # 01
LD HL, LLC0FF
DEC (HL)
JP NZ, LLC1E8
LD (HL), # 00
LLC114 EQU $ - # 01
INC HL
DEC (HL)
JP P, LLC3D0
LD HL, LLC000
LLC11B EQU $ - # 02
OR (HL)
JP Z, LLC3D0
LLC121 LD A, (HL)
INC HL
CP # C0
JR C, LLC134
SUB C
JR NC, LLC162
SUB C
JR NC, LLC16B
SUB C
JR NC, LLC171
SUB C
JP LLC19F
LLC134 SUB # 80
JR NC, LLC199
SUB C
JP NC, LLC1C4
SBC A, C
JR NC, LLC17C
ADD A, B
LD (LLC569), A
LD (LLC11B), HL
XOR A
LD (LLC573), A
LD (LLC557), A
LD L, A
LD H, A
LD (LLC5AF), HL
JP LLC3CB
LLC155 LD A, (HL)
INC HL
LD (LLC5B2), A
RLA
SBC A, A
LD (LLC5B3), A
JP LLC121
LLC162 JR Z, LLC155
DEC A
LD (LLC58F), A
JP LLC121
LLC16B LD (LLC11B), HL
JP LLC3CB
LLC171 LD A, # FC
LD (LLC573), A
LD (LLC11B), HL
JP LLC3CB
LLC17C ADD A, A
EXX
LD E, A
LD HL, LLC000
LLC180 EQU $ - # 02
ADD HL, DE
LD SP, HL
POP HL
LD A, (HL)
ADD A, A
ADD A, A
LD (LLC584), A
INC HL
LD A, (HL)
ADD A, A
ADD A, A
LD (LLC580), A
LD (LLC575), HL
EXX
JP LLC121
LLC199 LD (LLC3CC), A
JP LLC121
LLC19F LD (LLC459), A
LD A, # 1F
LD (LLC59B), A
LD A, (HL)
INC HL
LD (LLC45E), A
LD DE, LLC046
LD (LLC55A), DE
XOR A
LD (LLC564), A
LD (LLC5B2), A
LD (LLC5B3), A
INC A
LD (LLC560), A
JP LLC121
LLC1C4 ADD A, A
EXX
LD E, A
LD A, # 0F
LD (LLC59B), A
LD HL, LLC000
LLC1CD EQU $ - # 02
ADD HL, DE
LD SP, HL
POP HL
LD A, (HL)
LD (LLC564), A
INC HL
LD A, (HL)
LD (LLC560), A
INC HL
LD (LLC55A), HL
LD L, D
LD H, D
LD (LLC5B2), HL
EXX
JP LLC121
LLC1E8 LD A, (HL)
DEC A
JP NZ, LLC2DB
LD HL, LLC0FD
DEC (HL)
JP P, LLC47F
LD HL, LLC000
LLC1F5 EQU $ - # 02
OR (HL)
JP Z, LLC47F
LLC1FB LD A, (HL)
INC HL
CP # C0
JR C, LLC20E
SUB C
JR NC, LLC236
SUB C
JR NC, LLC23F
SUB C
JR NC, LLC245
SUB C
JP LLC273
LLC20E SUB # 80
JR NC, LLC26D
SUB C
JP NC, LLC2AA
SBC A, C
JR NC, LLC250
ADD A, B
LD (LLC407), A
LD (LLC1F5), HL
XOR A
LD (LLC40C), A
LD L, A
LD H, A
LD (LLC3DD), HL
LD A, # 22
LD (LLC3DF), A
LD A, # 32
LD (LLC469), A
JP LLC2D3
LLC236 JR Z, LLC29D
DEC A
LD (LLC3FD), A
JP LLC1FB
LLC23F LD (LLC1F5), HL
JP LLC2D3
LLC245 LD A, # FC
LD (LLC40C), A
LD (LLC1F5), HL
JP LLC2D3
LLC250 ADD A, A
EXX
LD E, A
LD HL, LLC000
LLC254 EQU $ - # 02
ADD HL, DE
LD SP, HL
POP HL
LD A, (HL)
ADD A, A
ADD A, A
LD (LLC3F8), A
INC HL
LD A, (HL)
ADD A, A
ADD A, A
LD (LLC3EE), A
LD (LLC3D1), HL
EXX
JP LLC1FB
LLC26D LD (LLC2D4), A
JP LLC1FB
LLC273 LD (LLC459), A
LD A, # 1F
LD (LLC402), A
LD A, (HL)
INC HL
LD (LLC45E), A
LD DE, LLC046
LD (LLC3D7), DE
LD A, # 22
LD (LLC3E5), A
XOR A
LD (LLC3F3), A
LD (LLC3E3), A
LD (LLC3E4), A
INC A
LD (LLC3E9), A
JP LLC1FB
LLC29D LD A, (HL)
INC HL
LD (LLC3E3), A
RLA
SBC A, A
LD (LLC3E4), A
JP LLC1FB
LLC2AA ADD A, A
EXX
LD E, A
LD A, # 0F
LD (LLC402), A
LD HL, LLC000
LLC2B3 EQU $ - # 02
ADD HL, DE
LD SP, HL
POP HL
LD A, (HL)
LD (LLC3F3), A
INC HL
LD A, (HL)
LD (LLC3E9), A
INC HL
LD (LLC3D7), HL
LD L, D
LD H, D
LD (LLC3E3), HL
LD A, # 22
LD (LLC3E5), A
EXX
JP LLC1FB
LLC2D3 LD A, # 00
LLC2D4 EQU $ - # 01
LD (LLC0FD), A
JP LLC47F
LLC2DB DEC A
JP NZ, LLC47F
DEC HL
DEC (HL)
JP P, LLC47F
LLC2E4 LD HL, LLC000
LLC2E5 EQU $ - # 02
OR (HL)
JP Z, LLC665
LLC2EB LD A, (HL)
INC HL
CP # C0
JR C, LLC2FE
SUB C
JR NC, LLC326
SUB C
JR NC, LLC32F
SUB C
JR NC, LLC335
SUB C
JP LLC363
LLC2FE SUB # 80
JR NC, LLC35D
SUB C
JP NC, LLC39A
SBC A, C
JR NC, LLC340
ADD A, B
LD (LLC44B), A
LD (LLC2E5), HL
XOR A
LD (LLC450), A
LD L, A
LD H, A
LD (LLC421), HL
LD A, # 22
LD (LLC423), A
LD A, # 32
LD (LLC466), A
JP LLC3C3
LLC326 JR Z, LLC38D
DEC A
LD (LLC441), A
JP LLC2EB
LLC32F LD (LLC2E5), HL
JP LLC3C3
LLC335 LD A, # FC
LD (LLC450), A
LD (LLC2E5), HL
JP LLC3C3
LLC340 ADD A, A
EXX
LD E, A
LD HL, LLC000
LLC344 EQU $ - # 02
ADD HL, DE
LD SP, HL
POP HL
LD A, (HL)
ADD A, A
ADD A, A
LD (LLC43C), A
INC HL
LD A, (HL)
ADD A, A
ADD A, A
LD (LLC432), A
LD (LLC415), HL
EXX
JP LLC2EB
LLC35D LD (LLC3C4), A
JP LLC2EB
LLC363 LD (LLC459), A
LD A, # 1F
LD (LLC446), A
LD A, (HL)
INC HL
LD (LLC45E), A
LD DE, LLC046
LD (LLC41B), DE
LD A, # 22
LD (LLC429), A
XOR A
LD (LLC437), A
LD (LLC427), A
LD (LLC428), A
INC A
LD (LLC42D), A
JP LLC2EB
LLC38D LD A, (HL)
INC HL
LD (LLC427), A
RLA
SBC A, A
LD (LLC428), A
JP LLC2EB
LLC39A ADD A, A
EXX
LD E, A
LD A, # 0F
LD (LLC446), A
LD HL, LLC000
LLC3A3 EQU $ - # 02
ADD HL, DE
LD SP, HL
POP HL
LD A, (HL)
LD (LLC437), A
INC HL
LD A, (HL)
LD (LLC42D), A
INC HL
LD (LLC41B), HL
LD L, D
LD H, D
LD (LLC427), HL
LD A, # 22
LD (LLC429), A
EXX
JP LLC2EB
LLC3C3 LD A, # 00
LLC3C4 EQU $ - # 01
LD (LLC0FE), A
JP LLC47F
LLC3CB LD A, # 00
LLC3CC EQU $ - # 01
LD (LLC100), A
LLC3D0 LD HL, LLC000
LLC3D1 EQU $ - # 02
LD (LLC508), HL
LD HL, LLC000
LLC3D7 EQU $ - # 02
LD (LLC4ED), HL
LD HL, LLC000
LLC3DD EQU $ - # 02
LLC3DF LD (LLC543), HL
LD HL, LLC000
LLC3E3 EQU $ - # 02
LLC3E5 LD (LLC546), HL
LLC3E4 EQU $ - # 04
LD A, # 00
LLC3E9 EQU $ - # 01
LD (LLC4F3), A
LD A, # 00
LLC3EE EQU $ - # 01
LD (LLC513), A
LD A, # 00
LLC3F3 EQU $ - # 01
LD (LLC4F7), A
LD A, # 00
LLC3F8 EQU $ - # 01
LD (LLC517), A
LD A, # 00
LLC3FD EQU $ - # 01
LD (LLC522), A
LD A, # 0F
LLC402 EQU $ - # 01
LD (LLC52E), A
LD A, # 00
LLC407 EQU $ - # 01
LD (LLC4FC), A
LD A, # 00
LLC40C EQU $ - # 01
CP # 01
JR Z, LLC414
LD (LLC506), A
LLC414 LD HL, LLC000
LLC415 EQU $ - # 02
LD (LLC49E), HL
LD HL, LLC000
LLC41B EQU $ - # 02
LD (LLC483), HL
LD HL, LLC000
LLC421 EQU $ - # 02
LLC423 LD (LLC4CF), HL
LD HL, LLC000
LLC427 EQU $ - # 02
LLC429 LD (LLC4D2), HL
LLC428 EQU $ - # 04
LD A, # 00
LLC42D EQU $ - # 01
LD (LLC489), A
LD A, # 00
LLC432 EQU $ - # 01
LD (LLC4A9), A
LD A, # 00
LLC437 EQU $ - # 01
LD (LLC48D), A
LD A, # 00
LLC43C EQU $ - # 01
LD (LLC4AD), A
LD A, # 00
LLC441 EQU $ - # 01
LD (LLC4B8), A
LD A, # 0F
LLC446 EQU $ - # 01
LD (LLC4C4), A
LD A, # 00
LLC44B EQU $ - # 01
LD (LLC492), A
LD A, # 00
LLC450 EQU $ - # 01
CP # 01
JR Z, LLC458
LD (LLC49C), A
LLC458 LD A, # 00
LLC459 EQU $ - # 01
LD (LLC5D3), A
LD A, # 00
LLC45E EQU $ - # 01
LD (LLC5E1), A
XOR A
LD (LLC459), A
LLC466 LD (LLC480), A
LLC469 LD (LLC4EA), A
INC A
LD (LLC450), A
LD (LLC466), A
LD (LLC40C), A
LD (LLC469), A
LD (LLC423), A
LD (LLC3DF), A
LLC47F LD DE, # 0000
LLC480 EQU $ - # 02
LD HL, LLC000
LLC483 EQU $ - # 02
ADD HL, DE
INC E
LD A, E
CP # 00
LLC489 EQU $ - # 01
JR NZ, LLC48E
LD A, # 00
LLC48D EQU $ - # 01
LLC48E LD (LLC480), A
LD A, # 00
LLC492 EQU $ - # 01
ADD A, (HL)
ADD A, A
LD E, A
LD HL, LLC6A8
ADD HL, DE
LD SP, HL
LD A, # 00
LLC49C EQU $ - # 01
LD HL, LLC000
LLC49E EQU $ - # 02
INC A
JP M, LLC641
LD E, A
ADD HL, DE
ADD A, # 03
CP # 00
LLC4A9 EQU $ - # 01
JR NZ, LLC4AE
LD A, # 00
LLC4AD EQU $ - # 01
LLC4AE LD (LLC49C), A
POP BC
LD SP, HL
POP DE
LD A, E
AND # 0F
SUB # 00
LLC4B8 EQU $ - # 01
LD L, A
CCF
SBC A, A
AND L
SRL D
JR NC, LLC4C3
OR # 10
LLC4C3 AND # 00
LLC4C4 EQU $ - # 01
LD (LLC0FA), A
LD A, E
RLCA
JR C, LLC4CE
LD XH, D
LLC4CE LD HL, LLC000
LLC4CF EQU $ - # 02
LD DE, # 0000
LLC4D2 EQU $ - # 02
ADD HL, DE
LD (LLC4CF), HL
ADD HL, BC
POP BC
ADD HL, BC
RLCA
RLCA
RLCA
AND # 0F
LD XL, A
LD A, H
AND # 0F
LD H, A
LD (LLC0F4), HL
LLC4E9 LD DE, # 0000
LLC4EA EQU $ - # 02
LD HL, LLC000
LLC4ED EQU $ - # 02
ADD HL, DE
INC E
LD A, E
CP # 00
LLC4F3 EQU $ - # 01
JR NZ, LLC4F8
LD A, # 00
LLC4F7 EQU $ - # 01
LLC4F8 LD (LLC4EA), A
LD A, # 00
LLC4FC EQU $ - # 01
ADD A, (HL)
ADD A, A
LD E, A
LD HL, LLC6A8
ADD HL, DE
LD SP, HL
LD A, # 00
LLC506 EQU $ - # 01
LD HL, LLC000
LLC508 EQU $ - # 02
INC A
JP M, LLC64B
LD E, A
ADD HL, DE
ADD A, # 03
CP # 00
LLC513 EQU $ - # 01
JR NZ, LLC518
LD A, # 00
LLC517 EQU $ - # 01
LLC518 LD (LLC506), A
POP BC
LD SP, HL
POP DE
LD A, E
AND # 0F
SUB # 00
LLC522 EQU $ - # 01
LD L, A
CCF
SBC A, A
AND L
SRL D
JR NC, LLC52D
OR # 10
LLC52D AND # 00
LLC52E EQU $ - # 01
LD (LLC0FB), A
LD A, E
RRCA
RRCA
RRCA
AND # 1E
OR XL
LD XL, A
AND # 10
JR NZ, LLC542
LD XH, D
LLC542 LD HL, LLC000
LLC543 EQU $ - # 02
LD DE, # 0000
LLC546 EQU $ - # 02
ADD HL, DE
LD (LLC543), HL
ADD HL, BC
POP BC
ADD HL, BC
LD A, H
AND # 0F
LD H, A
LD (LLC0F6), HL
LLC556 LD DE, # 0000
LLC557 EQU $ - # 02
LD HL, LLC000
LLC55A EQU $ - # 02
ADD HL, DE
INC E
LD A, E
CP # 00
LLC560 EQU $ - # 01
JR NZ, LLC565
LD A, # 00
LLC564 EQU $ - # 01
LLC565 LD (LLC557), A
LD A, # 00
LLC569 EQU $ - # 01
ADD A, (HL)
ADD A, A
LD E, A
LD HL, LLC6A8
ADD HL, DE
LD SP, HL
LD A, # 00
LLC573 EQU $ - # 01
LD HL, LLC000
LLC575 EQU $ - # 02
INC A
JP M, LLC658
LD E, A
ADD HL, DE
ADD A, # 03
CP # 00
LLC580 EQU $ - # 01
JR NZ, LLC585
LD A, # 00
LLC584 EQU $ - # 01
LLC585 LD (LLC573), A
POP BC
LD SP, HL
POP DE
LD A, E
AND # 0F
SUB # 00
LLC58F EQU $ - # 01
LD L, A
CCF
SBC A, A
AND L
SRL D
JR NC, LLC59A
OR # 10
LLC59A AND # 00
LLC59B EQU $ - # 01
LD (LLC0FC), A
LD A, E
RRCA
RRCA
AND # 3C
OR XL
LD XL, A
AND # 20
JR NZ, LLC5AE
LD XH, D
LLC5AE LD HL, LLC000
LLC5AF EQU $ - # 02
LD DE, # 0000
LLC5B2 EQU $ - # 02
ADD HL, DE
LLC5B3 EQU $ - # 02
LD (LLC5AF), HL
ADD HL, BC
POP BC
ADD HL, BC
LD A, H
AND # 0F
LD H, A
LD (LLC0F8), HL
LLC5C2 LD SP, # 0000
LLC5C3 EQU $ - # 02
LLC5C5 LD HL, LLC0FC
LD DE, # FFBF
LD BC, # FFFD
LD A, # 0D
OUT (C), A
LD A, # 00
LLC5D3 EQU $ - # 01
OR A
JR Z, LLC5E5
LD B, E
OUT (C), A
LD A, # 0B
LD B, D
OUT (C), A
LD B, E
LD A, # 00
LLC5E1 EQU $ - # 01
OUT (C), A
LD B, D
LLC5E5 LD A, # 0A
OUT (C), A
LD B, E
OUTD
DEC A
LD B, D
OUT (C), A
LD B, E
OUTD
DEC A
LD B, D
OUT (C), A
LD B, E
OUTD
DEC A
LD B, D
OUT (C), A
LD B, E
LD A, XL
OUT (C), A
LD A, # 06
LD B, D
OUT (C), A
LD B, E
LD A, XH
OUT (C), A
LD A, # 05
LD B, D
OUT (C), A
LD B, E
OUTD
DEC A
LD B, D
OUT (C), A
LD B, E
OUTD
DEC A
LD B, D
OUT (C), A
LD B, E
OUTD
DEC A
LD B, D
OUT (C), A
LD B, E
OUTD
DEC A
LD B, D
OUT (C), A
LD B, E
OUTD
DEC A
LD B, D
OUT (C), A
LD B, E
OUTD
LD (LLC5D3), A
LD HL, # 2758
EXX
EI
RET
LLC641 XOR A
LD (LLC0FA), A
LD XL, # 09
JP LLC4E9
LLC64B XOR A
LD (LLC0FB), A
LD A, XL
OR # 12
LD XL, A
JP LLC556
LLC658 XOR A
LD (LLC0FC), A
LD A, XL
OR # 24
LD XL, A
JP LLC5C2
LLC665 LD HL, (LLC1F5)
OR (HL)
JP NZ, LLC47F
LD HL, (LLC11B)
OR (HL)
JP NZ, LLC47F
LD B, A
LD A, # 00
LLC675 EQU $ - # 01
INC A
CP # 00
LLC678 EQU $ - # 01
JR NZ, LLC67D
LD A, # 00
LLC67C EQU $ - # 01
LLC67D LD (LLC675), A
LD C, A
LD HL, LLC000
LLC682 EQU $ - # 02
ADD HL, BC
ADD HL, BC
LD C, (HL)
INC HL
LD A, (HL)
LD HL, LLC000
LLC68A EQU $ - # 02
ADD HL, BC
LD SP, HL
POP HL
LD (LLC2E5), HL
POP HL
LD (LLC1F5), HL
POP HL
LD (LLC11B), HL
ADD A, # 60
LD (LLC10B), A
LD B, A
LD C, # F0
JP LLC2E4
;----------------------------------------
DEFB "KSA"
;---------------------------------------- LLC6A8 DEFB # F8, #
0E, # 10, # 0E, # 60
DEFB # 0D, # 80, # 0C, # D8
DEFB # 0B, # 28, # 0B, # 88
DEFB # 0A, # F0, # 09, # 60
DEFB # 09, # E0, # 08, # 58
DEFB # 08, # E0, # 07, # 7C
DEFB # 07, # 08, # 07, # B0
DEFB # 06, # 40, # 06, # EC
DEFB # 05, # 94, # 05, # 44
DEFB # 05, # F8, # 04, # B0
DEFB # 04, # 70, # 04, # 2C
DEFB # 04, # F0, # 03, # BE
DEFB # 03, # 84, # 03, # 58
DEFB # 03, # 20, # 03, # F6
DEFB # 02, # CA, # 02, # A2
DEFB # 02, # 7C, # 02, # 58
DEFB # 02, # 38, # 02, # 16
DEFB # 02, # F8, # 01, # DF
DEFB # 01, # C2, # 01, # AC
DEFB # 01, # 90, # 01, # 7B
DEFB # 01, # 65, # 01, # 51
DEFB # 01, # 3E, # 01, # 2C
DEFB # 01, # 1C, # 01, # 0B
DEFB # 01, # FC, # 00, # EF
DEFB # 00, # E1, # 00, # D6
DEFB # 00, # C8, # 00, # BD
DEFB # 00, # B2, # 00, # A8
DEFB # 00, # 9F, # 00, # 96
DEFB # 00, # 8E, # 00, # 85
DEFB # 00, # 7E, # 00, # 77
DEFB # 00, # 70, # 00, # 6B
DEFB # 00, # 64, # 00, # 5E
DEFB # 00, # 59, # 00, # 54
DEFB # 00, # 4F, # 00, # 4B
DEFB # 00, # 47, # 00, # 42
DEFB # 00, # 3F, # 00, # 3B
DEFB # 00, # 38, # 00, # 35
DEFB # 00, # 32, # 00, # 2F
DEFB # 00, # 2C, # 00, # 2A
DEFB # 00, # 27, # 00, # 25
DEFB # 00, # 23, # 00, # 21
DEFB # 00, # 1F, # 00, # 1D
DEFB # 00, # 1C, # 00, # 1A
DEFB # 00, # 19, # 00, # 17
DEFB # 00, # 16, # 00, # 15
DEFB # 00, # 13, # 00, # 12
DEFB # 00, # 11, # 00, # 10
DEFB # 00, # 0F, # 00
;----------------------------------------