Subject: Arcade Action software

From: ti99_forever <[email-masked]>
Date: Sat, 12 Dec 2009 19:32:52 -0800 (PST)

Have any of you looked at the source code for some of the games from these disks?
No comments, source with no labels only indented 1 char, it almost looks like it is created by another program (a compiler?) considering that the assembly programs coincide with some of the Basic programs from the other disks.
And there is code to replace the common utilities.

Interesting...

Here is Klingn Horde (or Klingn Attack):

 TITL '* KLINGN ATTACK *'
 IDT 'KLINGN'
 DEF B0
S3 DATA >0C18,>3A7E,>FC9E,>3703,>1E1C,>190C,>0F07,>0300
 DATA >0000,>00E0,>F8DC,>8E2E,>7FFF,>FFFE,>FEFC,>F8E0
S5 DATA >0701,>0300,>060F,>181B,>3F3F,>3F1F,>1F0F,>0701
 DATA >F0C0,>E080,>B0F8,>0CEC,>FEFE,>FEFC,>FCF8,>F0C0
S7 DATA >0000,>0007,>1F3B,>7174,>FEFF,>FF7F,>7F3F,>1F07
 DATA >3018,>5C7E,>3F79,>ECC0,>7838,>9830,>F0E0,>C000
E1 DATA >0805,>2212,>8946,>358A,>4A35,>4689,>1222,>0409
 DATA >9020,>4448,>9162,>AC52,>51AC,>6291,>4844,>A010
F3 DATA >0000,>0000,>0004,>0201,>0502,>0500,>0000,>0000
 DATA >0000,>0000,>00A0,>40A0,>8040,>2000,>0000,>0000
S6 DATA >071F,>3F7F,>7FFF,>FFFE,>7471,>3B1F,>0700,>0000
 DATA >00C0,>E0F0,>3098,>3878,>C0EC,>793F,>7E5C,>1830
S4 DATA >030F,>1F3F,>3F7F,>7F7F,>3730,>1F0D,>0107,>030F
 DATA >80E0,>F0F8,>F8FC,>FCFC,>D818,>F060,>00C0,>80E0
S1 DATA >0003,>070F,>0C19,>1C1E,>0337,>9EFC,>7E3A,>180C
 DATA >E0F8,>FCFE,>FEFF,>FF7F,>2E8E,>DCF8,>E000,>0000
S2 DATA >0000,>0307,>8CAD,>E5FD,>E5AD,>8C07,>0300,>0000
 DATA >00E0,>F8FC,>FEFE,>FFFF,>FFFE,>FEFC,>F8E0,>0000
V1 DATA >039F,>E4F2,>0502,>E4F0,>0C02,>E4F2,>0A02,>E4F4
 DATA >0802,>E4F6,>0602,>E4F8,>0402,>E4FA,>0201,>FF00
 DATA >02E4,>F205,>02E4,>F408,>02E4,>F606,>01FF,>0005
 DATA >9FBF,>DFE4,>F405,>01FF,>0092,>B8D5,>0401,>FF00
WP BSS >20
W10 EQU WP+20
W13 EQU WP+26
W14 EQU WP+28
W15 EQU WP+30
WR1 DATA >0000
WR2 DATA >0000
F5 DATA A4,A5,A6,A3,>0000,A7,A2,A1,A8
Y0 DATA Y4,Y5,Y6,Y3,>0000,Y7,Y2,Y1,Y8
E7 TEXT 'SCORE-00'
E8 TEXT 'FLEET-05'
G0 TEXT 'FINI'
E9 TEXT 'HI SCORE-0'
F2 TEXT 'HIT VALUE-10'
V2 TEXT 'KLINGN HORDE'
CP1 TEXT 'COPYRIGHT 1984'
CP2 TEXT 'ARCADE ACTION SOFTWARE'
IN1 TEXT 'FOR EACH KLINGN DESTROYED,  '
IN2 TEXT 'YOUR SCORE WILL INCREASE    '
IN3 TEXT 'BY THE CURRENT HIT VALUE.   '
IN4 TEXT 'THE HIT VALUE DROPS WITH    '
IN5 TEXT 'EACH MISSED SHOT.           '
IN6 TEXT 'WHEN YOUR FLEET OR HIT VALUE'
IN7 TEXT 'DROPS TO ZERO, THE KLINGN   '
IN8 TEXT 'HORDE WILL HAVE CONQUERED.  '
 EVEN
B0 LWPI WP
 CLR R0
 LI R1,>2000
J1 BL @VSBW
 INC R0
 CI R0,>0300
 JLT J1
 LI R0,>1000
 LI R1,V1
 LI R2,>0040
 BL @VMBW
 LI R0,>0169
 LI R1,V2
 LI R2,>000C
 BL @VMBW
 LI R0,>208
 LI R1,CP1
 LI R2,>000E
 BL @VMBW
 LI R0,>224
 LI R1,CP2
 LI R2,>0016
 BL @VMBW
 LI R1,>0010
J3 LI R2,>7FFF
J2 DEC R2
 JNE J2
 DEC R1
 JNE J3
 LI R0,>0069
 LI R1,V2
 LI R2,>000C
 BL @VMBW
 LI R0,>00C1
 LI R1,IN1
 LI R2,>001C
 BL @VMBW
 LI R0,>00E1
 LI R1,IN2
 BL @VMBW
 LI R0,>0101
 LI R1,IN3
 BL @VMBW
 LI R0,>0161
 LI R1,IN4
 BL @VMBW
 LI R0,>0181
 LI R1,IN5
 BL @VMBW
 LI R0,>01E1
 LI R1,IN6
 BL @VMBW
 LI R0,>0201
 LI R1,IN7
 BL @VMBW
 LI R0,>0221
 LI R1,IN8
 BL @VMBW
 LI R1,>0040
HE1 LI R2,>7000
HE2 DEC R2
 JNE HE2
 DEC R1
 JNE HE1
 LI R0,>0766
 BL @VWTR
 LI R0,>0384
 LI R1,>1100
 BL @VSBW
B8 LI R8,>000A
 LI R7,>0005
 CLR R3
 BL @SH1
 CLR R0
 LI R1,>2000
J4 BL @VSBW
 INC R0
 CI R0,>0300
 JLT J4
 LI R0,>0385
 LI R1,>A100
 BL @VSBW
 LI R3,>0008
 LI R5,V3
J5 MOV *R5+,R0
 LI R1,>2E00
 BL @VSBW
 DEC R3
 JNE J5
 MOV @V6,@V7
 MOV @V4,@V5
 MOV @V8,@V9
 LI R4,>000E
 LI R0,>02C2
 LI R1,E7
 LI R2,>0008
 BL @VMBW
 LI R0,>0022
 LI R1,E8
 LI R2,>0008
 BL @VMBW
 LI R0,>0030
 LI R1,E9
 LI R2,>0009
 BL @VMBW
 LI R0,>0039
 LI R1,F1
 LI R2,>0004
 BL @VMBW
 LI R0,>02D2
 LI R1,F2
 LI R2,>000C
 BL @VMBW
 LI R0,>01E2
 BL @VWTR
 SWPB R0
 MOVB R0,@>83D4
 LI R0,>0780
 LI R1,D2
 LI R2,>0004
 BL @VMBW
 LI R0,>400
 LI R1,D1
 LI R2,>0020
 BL @VMBW
 LI R1,SA1
 A R2,R0
 BL @VMBW
 LI R1,SB1
 A R2,R0
 BL @VMBW
 LI R1,SC1
 A R2,R0
 BL @VMBW
 LI R1,D0
 LI R0,>0300
 LI R2,>0010
 BL @VMBW
B6 LI R0,>0784
 LI R1,V7
 LI R2,>000C
 BL @VMBW
 LI R1,D3
 LI R0,>0310
 DECT R2
 BL @VMBW
 MOVB @D4,@>837A
B3 LIMI >0002
 LIMI >0000
 LI R0,>0300
 LI R1,D5
 LI R2,>000E
 BL @VMBR
 CLR R0
 CLR R1
 CLR R5
J7 AI R5,>0004
 CI R5,>0010
 JEQ J6
 MOVB @D5(R5),R0
 MOVB @D5+1(R5),R1
 SB @D5,R0
 ABS R0
 CB R0,@D8
 JH J7
 SB @D5+1,R1
 ABS R1
 CB R1,@D8
 JH J7
 LI R1,E1
 LI R0,>0400
 LI R2,>0020
 BL @VMBW
 LI R1,Y9
 LI R0,>0302
 LI R2,>0002
 BL @VMBW
 DEC R7
 JGT J8
 B @B2
J8 MOV R7,R15
 AI R15,>0030
 LI R0,>0028
 LI R1,W15
 LI R2,>0002
 BL @VMBW
 LI R10,>1000
 MOV R10,@>83CC
 SOCB @E2,@>83FD
 MOVB @E2,@>83CE
J9 LIMI >0002
 MOVB @>83CE,@>83CE
 LIMI >0000
 JNE J9
 JMP JJ0
J6 MOVB @E3,@>8374
 BL @KSCAN
 CB @>8375,@E4
 JEQ Q1
 MOV R4,R15
 CLR R4
 MOVB @>8376,R4
 AI R4,>1000
 CLR R5
 MOVB @>8377,R5
 MPY @E5,R5
 A R6,R4
 SRA R4,9
 CI R4,>0008
 JNE J0
 MOV R15,R4
 B @B3
JJ0 LI R0,>0300
 LI R1,D0
 LI R2,>0004
 BL @VMBW
J0 MOV @E6(R4),R1
 LI R0,>0400
 LI R2,>0020
 BL @VMBW
 B @B3
Q1 BL @XX1
 LI R1,F3
 LI R0,>0480
 LI R2,>0020
 BL @VMBW
 MOV @D5,@F4
 LI R1,F4
 LI R0,>0310
 LI R2,>0006
 BL @VMBW
 LI R0,>0790
 MOV @F5(R4),R1
 LI R2,>0004
 BL @VMBW
 LI R0,>0780
 MOV @Y0(R4),R1
 BL @VMBW
 MOVB @F6,@>837A
Q4 CLR R5
 LIMI >0002
 LIMI >0000
 LI R0,>0300
 LI R1,D5
 LI R2,>0012
 BL @VMBR
 CB @F7,@F8
 JHE Q3
 CB @F9,@F0
 JHE Q3
Q5 BL @XX1
 AI R5,>0004
 CI R5,>0010
 JEQ Q4
 CLR R9
 MOVB @D5(R5),R9
 SB @F9,R9
 ABS R9
 CB R9,@D8
 JH Q5
 MOVB @D5+1(R5),R9
 SB @F7,R9
 ABS R9
 CB R9,@D8
 JH Q5
 INC @D2(R5)
 MOV R5,R12
 SLA R12,3
 LI R0,>0400
 A R12,R0
 LI R1,E1
 LI R2,>0020
 BL @VMBW
 A R8,R3
 MOV R3,R15
 CLR R14
 DIV @G1,R14
 MOV R14,R13
 CLR R14
 DIV @G2,R14
 SWPB R13
 A R14,R13
 CLR R14
 DIV @G3,R14
 SWPB R14
 A R15,R14
 AI R14,>3030
 AI R13,>3030
 LI R0,>02C8
 LI R1,W13
 LI R2,>0004
 BL @VMBW
 BL @SH1
 JMP B7
Q3 MOV @D4,@>837A
 LI R1,D3
 LI R0,>0310
 LI R2,>0002
 BL @VMBW
 BL @SH1
 DEC R8
 JEQ B2
 LI R0,>02DC
 MOV R8,R10
 AI R10,>3030
 LI R1,W10
 LI R2,>0002
 BL @VMBW
 B @B3
B7 LI R10,>102F
 MOV R10,@>83CC
 SOCB @E2,@>83FD
 MOVB @E2,@>83CE
Q6 LIMI >0002
 MOVB @>83CE,@>83CE
 LIMI >0000
 JNE Q6
 LI R1,D0
 A R5,R1
 LI R0,>0300
 A R5,R0
 LI R2,>0004
 BL @VMBW
 JMP QQ1
QQ0 CLR @CC0
QQ1 C @CC0,@CC1
 JEQ QQ0
 INC @CC0
 JMP QQ4
QQ3 MOV @CC3,@CC2
QQ4 INC @CC2
 C @CC2,@CC4
 JEQ QQ3
 MOVB @CC2+1,@D0+3(R5)
QQ5 MOV R5,R2
 SRA R2,1
 LI R0,SSA
 A R2,R0
 MOV *R0,R1
 MOV @CC0,R0
 DEC R0
 SLA R0,5
 A R0,R1
 LI R0,>400
 A R12,R0
 LI R2,>20
 BL @VMBW
 B @B6
B2 LI R0,>0130
 LI R1,G0
 LI R2,>0004
 BL @VMBW
 LI R0,>0008
Q8 LI R1,>7FFF
 LIMI >0002
 LIMI >0000
Q7 DEC R1
 JNE Q7
 DEC R0
 JNE Q8
 C R3,@H0
 JLE Q9
 LI R0,>0039
 LI R1,W13
 LI R2,>0004
 BL @VMBW
 MOV R3,@H0
 MOV R13,@F1
 MOV R14,@H2
Q9 B @B8
XX1 LI R2,55930
 MOV  @SV1,R0
 INCT R0
 CI R0,1000
 JGT FI1
 CLR R1
 DIV R0,R1
 A R1,R1
 MOV R1,R9
 SLA R9,4
 MOVB R9,R10
 SLA R9,8
 SRA R9,12
 AI R9,>00D0
 MOVB R10,R9
 SWPB R9
 MOVB R9,@>8400
 SWPB R9
 MOVB R9,@>8400
 LI R9,>D000
 MOVB R9,@>8400
 MOV R0,@SV1
 CLR R9
FI1 RT
SH1 LI R1,>DF00
 LI R0,110
 MOV R0,@SV1
 MOVB R1,@>8400
 RT
VSBR SWPB R0
 MOVB R0,@>8C02
 SWPB R0
 MOVB R0,@>8C02
 NOP
 MOVB @>8800,R1
 RT
VSBW ORI R0,>4000
 SWPB R0
 MOVB R0,@>8C02
 SWPB R0
 MOVB R0,@>8C02
 ANDI R0,>3FFF
 MOVB R1,@>8C00
 RT
VWTR ORI R0,>8000
 SWPB R0
 MOVB R0,@>8C02
 SWPB R0
 MOVB R0,@>8C02
 ANDI R0,>3FFF
 RT
VMBR MOV R1,@WR1
 MOV R2,@WR2
 SWPB R0
 MOVB R0,@>8C02
 SWPB R0
 MOVB R0,@>8C02
 NOP
VM1 MOVB @>8800,*R1+
 DEC R2
 JNE VM1
 MOV @WR1,R1
 MOV @WR2,R2
 RT
VMBW MOV R1,@WR1
 MOV R2,@WR2
 ORI R0,>4000
 SWPB R0
 MOVB R0,@>8C02
 SWPB R0
 MOVB R0,@>8C02
 ANDI R0,>3FFF
VM2 MOVB *R1+,@>8C00
 DEC R2
 JNE VM2
 MOV @WR1,R1
 MOV @WR2,R2
 RT
KSCAN LWPI >83E0
 MOV R11,@WR1
 BL @>000E
 MOV @WR1,R11
 LWPI WP
 RT
SV1 DATA >0000
D2 DATA >0000,>0000
V7 DATA >1406,>0000
V5 DATA >FA14,>0000
V9 DATA >F020,>0000
E6 DATA S1,S2,S3,S4,>0000,S5,S6,D1,S7
D6 BYTE >71
D9 BYTE >60
D5 DATA >5070,>800F,>00A0,>840D,>C000,>880A,>0030,>8C02
F9 BYTE >F8
F7 BYTE >70
D0 DATA >5070,>800F
V0 DATA >00A0,>840D,>C000,>880A,>0030,>8C02
D3 DATA >D000
D1 DATA >0000,>071F,>3F7F,>7FFF,>FFFF,>7F7F,>3F1F,>0700
 DATA >0000,>00C0,>E031,>B5A7,>BFA7,>B531,>E0C0,>0000
 DATA >1A32
Y9 DATA >8008
D4 BYTE >04
F6 BYTE >05
E2 DATA >0120
F4 DATA >5070,>9006,>D000
Y1 DATA >00FF,>0000
Y2 DATA >FFFF,>0000
Y3 DATA >FF00,>0000
Y4 DATA >FF01,>0000
Y5 DATA >0001,>0000
Y6 DATA >0101,>0000
Y7 DATA >0100,>0000
Y8 DATA >01FF,>0000
A1 DATA >007F,>0000
A2 DATA >7F7F,>0000
A3 DATA >7F00,>0000
A4 DATA >7F80,>0000
A5 DATA >0080,>0000
A6 DATA >8080,>0000
A7 DATA >8000,>0000
A8 DATA >807F,>0000
E3 BYTE >01
E4 BYTE >12
E5 DATA >0003
F8 BYTE >F8
F0 BYTE >C0
G3 DATA >000A
D8 DATA >0C0C
V6 DATA >1404
V4 DATA >FA12
V8 DATA >F01D
H0 DATA >0000
F1 DATA >3030
H2 DATA >3030,>0002
V3 DATA >2037,>0088,>0138,>0185,>01D2,>022A,>0265,>0297
G2 DATA >0064
G1 DATA >03E8,>0004
SSA DATA D1,SA1,SB1,SC1
CC0 DATA 0001
CC1 DATA 0004
CC2 DATA 0002
CC3 DATA 0002
CC4 DATA >000F
SA1 DATA >7830,>3437,>37BF,>B7F7,>773F,>3632,>3301,>0101
 DATA >3C18,>58D8,>D8FA,>DADE,>DCF8,>D898,>9800,>0000
SA2 DATA >A0E0,>E0A8,>E8EC,>AFEF,>EFBF,>EFEF,>B9EC,>4701
 DATA >0507,>0715,>1737,>F5F7,>F7FD,>F7F7,>9D37,>E280
SA3 DATA >F060,>6263,>6B6F,>7F6F,>6F6F,>6F7F,>6C67,>6320
 DATA >0F06,>46C6,>D6F6,>FEF6,>F6F6,>F6FE,>36E6,>C604
SA4 DATA >84F5,>F5F5,>F4FF,>7F1F,>0F07,>0705,>0506,>0301
 DATA >27AF,>AFAF,>AFFF,>FEF8,>F0E0,>E0A0,>A060,>C080
SB1 DATA >0000,>FE7F,>3F3F,>013F,>153F,>013F,>3F7F,>FE00
 DATA >0000,>0080,>C0F0,>F8C8,>6FC8,>F8F0,>C080,>0000
SB2 DATA >FC3E,>1E1F,>03FF,>3F1F,>1F3F,>FF03,>1F1E,>3EFC
 DATA >0000,>0010,>88FC,>FEEB,>EBFE,>FC88,>1000,>0000
SB3 DATA >807F,>7F80,>1F0F,>1F1F,>1F1F,>0F1F,>807F,>7F80
 DATA >00FF,>FFC0,>F8FC,>F6F2,>F2F6,>FCF8,>C0FF,>FF00
SB4 DATA >FF7F,>7F7F,>FF08,>1FFF,>FF1F,>08FF,>7F7F,>FFFF
 DATA >FCFE,>FFFE,>FC40,>F0F8,>F8F0,>40FC,>FEFF,>FEFC
SC1 DATA >001F,>FFB9,>F1E3,>4307,>070F,>3FFE,>5C2C,>1808
 DATA >EFF9,>C5BB,>7AFB,>F7EF,>FEE6,>860E,>1E3C,>743C
SC2 DATA >0001,>0205,>0810,>E161,>A303,>0408,>10E1,>60A1
 DATA >CF59,>3D77,>EEFC,>FBF1,>CA04,>0810,>20C0,>C040
SC3 DATA >0307,>0F1F,>3F7F,>772B,>172F,>4782,>0102,>0408
 DATA >1325,>FEFC,>FDFE,>FCFC,>FFFF,>7EBC,>78F0,>6000
SC4 DATA >0C1C,>3875,>E357,>0F1F,>3F4F,>8703,>0101,>0204
 DATA >0106,>3EE4,>94EC,>E8F8,>F8F0,>EBC7,>AE1C,>3810
 END B0

---

From: "ti99_forever" <[email-masked]>
Date: Sun, 13 Dec 2009 03:39:08 -0000

Ok, I uploaded it seeing as the formatting is screwed up on the web viewer and in my email...