Data on tape 4 side a

This page contains a description of the data that managed to recover from a cassette tape that was saved by an Acorn Atom. It contains a mixture of programs and data. Text marked with red indicates that some data was lost and is infered from the context and comparison with other copies of the same program.

The tapes contains versions of five different programs, namely:

  1. A program that draws a randomly moving snake on the screen:
  2. A 6502 assembly program. The tape only contains a fragment of this program.
  3. A 6809 symbolic cross-assembler.
  4. A LISP program saved under the name DIFF.
  5. A program for calculating four bar systems.

Program Joke

header: C50000FFC2B22900
   10  DIMB100
   20  P.$12;IN."VERSNELLING"N
   30  IN."BEGRENZING"M
   40  IN."REM OP RAND"Q
   50  V=RND
   60  CLEAR4
   70  PLOT 13,10,10
   80  Z=B;DOINKEY W;?Z=W;Z=Z+1;U.W=13
   90  IF?B=13 G.80
  100  PLOT 15,10,10
  110  Z=B-1;DO Z=Z+1;W=?Z
  120 !8=W;?12=0;FOR I=1TO100;J=RND;N.
  130  X=(40+ABSRND%176);Y=(40+ABSRND%114)
  140  PLOT 12,X,Y
  150  L=25+ABSRND%100
  160  A=0;C=0
  170  FOR I=1 TO L
  180  A=A+RND%N
  190  IFA>M A=A-N
  200  IFA<-M A=A+N
  210  C=C+RND%N
  220  IFC>M C=C-N
  230  IFC<-M C=C+N
  240  X=X+A
  250  IFX>216 A=A-Q
  260  IFX<40 A=A+Q
  270  Y=Y+C
  280  IFY>152 C=C-Q
  290  IFY<40 C=C+Q
  300  PLOT 6,X,Y
  310  NEXT
  320  U.Z?1=13
  330  G.70

Programma TESTER

header: [C50000FF!C2B22900]
   10  DIMB100
   20  P.$12;IN."VERSNELLING"N
   30  IN."BEGRENZING"M
   40  IN."REM OP RAND"Q
   60  CLEAR4
   65  V=RND
   70  PLOT 13,10,10
   80  INKEY W
   81  IFW=86 N=N-1
   82  IFW=87 N=N+1
   83  IFW=77 M=M-1
   84  IFW=80 M=M+1
   85  IFW=81 Q=Q-1
   86  IFW=82 Q=Q+1
   90  IFW=93 G.60
  100  PLOT 15,10,10
  120 !8=V;?12=0;FOR I=1TO100;J=RND;N.
  130  X=(40+ABSRND%176);Y=(40+ABSRND%114)
  140  PLOT 12,X,Y
  150  L=25+ABSRND%100
  160  A=0;C=0
  170  FOR I=1 TO L
  180  A=A+RND%N
  190  IFA>M A=A-N
  200  IFA<-M A=A+N
  210  C=C+RND%N
  220  IFC>M C=C-N
  230  IFC<-M C=C+N
  240  X=X+A
  250  IFX>216 A=A-Q
  260  IFX<40 A=A+Q
  270  Y=Y+C
  280  IFY>152 C=C-Q
  290  IFY<40 C=C+Q
  300  PLOT 6,X,Y
  310  NEXT
  330  G.70

Assembly program MUL

Only the last part and with some damaged. Starts in the middle with:
  380  LDA #71;CLC
  400  EOR @#FF;
  410  ADC @1;STA #71
  430  LDA #70;
  440  LDA #71;STA #73
  500  LDA #70;STA #72
  520  RTS
  530  BPL #12+P+2
  540  INX
  550  LDA #77;
  560  CLC
  570  EOR @#FF;ADC @1;STA #77
  600  LDA #76
  610  EOR @#FF;ADC @1;STA #76
  640  LDA #70;STA #74
  660  LDA #71;STA #73
  680  LDA #73;CLC
  685  ADC @1;STA #73
  690  LDA #72
  695  ADC @0;STA #72
  700  SEC
  710  LDA #77;SBC @1;STA #77
  720  LDA #76;SBC @0;STA #76
  730  CMP @0
  740  BNE 0
  745 ];?(P-1)=#E2;[
  750  LDA #77;CMP @0
  760  BNE 0
  765 ];?(P-1)=#DC;[
  770  DEX
  780  BNE #15+P+2
  790  LDA #72;EOR @#FF;STA #72
  800  LDA #73;EOR @#FF
  810        CLC;ADC @1;STA #73
  820    LDA #72;ADC @0;STA #72
  830  RTS
  840 ];END
  850  FOR I=#2800 TO P;P.&?I;N.;END
  900  P.&!70'&!74'&!78;END

Program ASSEM

This is the first version of the 6809 symbolic cross-assembler. header: C50000FFC2B22900.
  
   10  DIMP32,H6,S100
   11  $S="DXYUS.AB";T=1;H?6=#0D
 1000 nIF47<?R A.58>?R N=1;R.
 1010 aIF64<?R A.91>?R N=1;R.
 1020 N=0;R.
 1030 vGOS.a
 1040 F.I=0TO5;H?I=32
 1050 IFN H?I=?R;R=R+1;GOS.n
 1060 N.;IFH?5=32R.
 1065 GOS.n;IFN P."TEVEEL CARACTERS IN IDENT.";G.e
 1070 R.
 1100 hI=0;V=0;IF?R<>36 I=-1;R.
 1110 I=I*16+V;R=R+1
 1120 IF64<?R A.71>?R V=?R-55;G.1110
 1130 IF47<?R A.58>?R V=?R-48;G.1110
 1140 IFI>#FFFFP."TE GROOT ADRES";G.e
 1150 R.
 1200 tI=1
 1210 IFI=T $S+T*9=$H;T=I+1;R.
 1220 IF$S+I*9=$H;R.
 1230 I=I+1;G.1210
 1300 rN=-1
 1310 IFH?1<>#20G.1340
 1320 F.I=0TO7;IFS?I=?H;N=I
 1330 N.;R.
 1340 IF$H="PC    "N=5;R.
 1350 IF$H="CC    "N=8;R.
 1360 IF$H="DP    "N=9;R.
 1370 IF$H="PCR   "N=10;R.
 1380 R.
 1400 sIF?R=32R=R+1;G.s
 1410 R.
 1420 iGOS.h;IFI>-1R.
 1430 GOS.v;GOS.t;I=S+I*9;I=I?7*256+I?8;R.
This program was saved twice on the tape.

Lisp program DIFF

Because this is largely unreadable, I have omitted it here. (How do I know than that it was a LISP progam, you might ask. The keywords of many LISP functions were readable.)

Program ASSEM2

header: C60000FFC2B22900
   10  DIMP32,H6,S100
   11  $S="DXYUS.AB";T=1;H?6=#0D
 1000 nIF47<?R A.58>?R N=1;R.
 1010 aIF64<?R A.91>?R N=1;R.
 1020 N=0;R.
 1030 vGOS.a
 1040 F.I=0TO5;H?I=32
 1050 IFN H?I=?R;R=R+1;GOS.n
 1060 N.;IFH?5=32R.
 1065 GOS.n;IFN P."TEVEEL CARACTERS IN IDENT.";G.e
 1070 R.
 1100 hI=0;V=0;IF?R<>36 I=-1;R.
 1110 I=I*16+V;R=R+1
 1120 IF64<?R A.71>?R V=?R-55;G.1110
 1130 IF47<?R A.58>?R V=?R-48;G.1110
 1140 IFI>#FFFFP."TE GROOT ADRES";G.e
 1150 R.
 1200 tI=1
 1210 IFI=T $S+T*9=$H;T=I+1;R.
 1220 IF$S+I*9=$H;R.
 1230 I=I+1;G.1210
 1300 rN=-1
 1310 IFH?1<>#20G.1340
 1320 F.I=0TO7;IFS?I=?H;N=I
 1330 N.;R.
 1340 IF$H="PC    "N=5;R.
 1350 IF$H="CC    "N=8;R.
 1360 IF$H="DP    "N=9;R.
 1370 IF$H="PCR   "N=10;R.
 1380 R.
 1400 sIF?R=32R=R+1;G.s
 1410 R.
 1420 iGOS.h;IFI>-1R.
 1430 GOS.v;GOS.t;I=S+I*9;I=I?7*256+I?8;R.
 2000 qIF?R<>32G.9999
 2010 GOS.s;F.I=0TO5;H?I=R?I;N.
 2020 L=0;IF?H=#4CA.K?1=#42;R=R+2;L=1;G.9999
 2030 IF?H=#42 A.H?1<>#49;R=R+1;G.9999
 2040  REM VIJFLETTIGE
 2050 H?4=#0D;O=0
 2060 IF$H="SYNC"O=#40613;G.2160
 2070 IF$H="CWAI"O=#4FFFF;G.2160
 2080 W=V+136
 2090 F.I=V TOW STEP4;IF$I=$H O=I
 2100 N.;IFO=0G=V+O;O=W+38+O;R=R+3;G.2170
 2110 H?3=#0D
 2120 IF$H="OR"O=#2038A;G.2160
 2130 IF$H="LD"O=#205FF;G.2160
 2140 IF$H="ST"O=#205FF;G.2160
 2150 G.9000
 2160 R=R+O?2;G=R?1;O=?O
 2170 GOS.v;GOS.s;D=16;G.(3000+G*100)
 3100 IFN=7O=O+#40;G.5000
 3110 IFN<>6G.9000
 3120 G.5000
 3200 IFN<>0G.3100
 3210 O=#C3+(O=#8B)*4;G.5000
 3300 IFN<>8G.3100
 3310 O=O-70;G.5200
 3400 IFN=0O=O-#40;D=-64;G.5000
 3410 IFN=7O=O+#10;G.7700
 3420 IFN=6;G.7700
 3430 G.9000
 3500 I=0;IFO=#97;I=1
 3505 IFN=7O=O+#40G.3580
 3510 IFN=6G.3580
 3515 IFO=#81O=#85
 3520 IFN=2N=1;?P=#10;P=P+1
 3525 IFN=1O=O+8;G.3580
 3530 IFO=#85G.3665
 3540 IFN=0O=O+46;G.3580
 3545 IFN=4N=3;?P=#10;P=P+1
 3550 IFN=3O=O+48;G.3580
 3560 G.9000
 3565 IFN<>0A.N<>3A.N<>4G.9000
 3570 ?P=#11-(N=0)
 3575 O=#83-4*(N=4)
 3580 IFIG.5200
 3585 G.5000
 3600 G.7700
 3700 IFN<>0G.9000
 3710 D=-64;G.5000
 3800 IFN<0A.N>5G.9000
 3810 O=O+N;G.5300 REM?
 3900 G.9999
 4000 G.9999
 4100 G.9999
 5000 GOS.s;IF?R=#23R=R+1;GOS.i;G.7400
 5010 IF?R=#3CR=R+1;GOS.i;G.7600
 5020 IF?R=#3ER=R+1;GOS.i;G.7500
 5030 U=0
 5040 I=0;DOI=I+1U.R?I=#20ORR?I=#2C
 5050 M=0;IFR?I=#2CM=1
 5060 M=1;IF?R=#5BR=R+1;L=16
 5070 IFLA.M=0G.9999
 5075 IFMG.7000
 5080 IFU=1G.9000
 5090 GOS.i;IFI/256=D;G.7600
 5095 G.7500
 5100 GOS.s;IF?R=#23G.9000
 5110 G.5010
 5200 GOS.s;IF?R=#23R=R+1;GOS.i;G.7400
 5210 G.9000
 5300 GOS.s;IF?R=#23OR?R=#3COR?R=#3EG.9000
 5310 U=1;G.5040
 7000 ?B=O+32;P=P+1
 7010 B=O;GOS.h;IFI>-1;A=I;G.7090
 7020 GOS.w;GOS.r;IFN>-1;G.7050
 7030 IF?H=32A=0;G.7090
 7040 GOS.t;A=I?8*256+I?9;G.7090
 7050 IFN=6B=6;G.7090
 7060 IFN=7B=5;G.7090
 7070 IFN=0B=11;G.7090
 7080 G.9000
 7090 GOS.s;IF?R<>#2CG.9000
 7100 R=R+1;Q=0;IF?R<>#2DG.7120
 7110 Q=2;R=R+1;IF?R=#2DQ=3;R=R+1
 7120 GOS.w;GOS.r;N=N-1;IFN=-2G.9000
 7130 IFQG.7160
 7140 Q=-1;IF?R<>#2BG.7160
 7150 Q=0;R=R+1;IF?R=#2BQ=3;R=R+1
 7160 IFN=10G.7230
 7170 IFN<0ORN>3G.9000
 7180 L=L+N*32+128;A=A%65696
 7190 IFQ=-1G.7260
 7200 IFA<>0ORB<>0G.9000
 7210 IFLA.Q%2=0G.9000
 7220 ?P=L+Q;P=P+1;R.
 7230 IFB<>ORQ<>-1G.9000
 7240 A=A-P-3;IF-129<A A.128>A ?P=12+L;P=P+1;R.
 7250 A=(A-1)%65696;?P=13+L;P?1=A/256;P?2=A%256;P=P+3;R.
 7260 IFB<>0 ?P=L+B;P=P+1;R.
 7270 IFA=0 ?P=L+8;P=P+1;R.
 7280 IF REM????? G.7300
 7290 IF65679<AORA<16 ?P=N*32+A%32;P=P+1;R.
 7300 IF65567<AORA<128 ?P=28+L;P?1=A%256;P=P+2;R.
 7310 ?P=159;P?1=A/256;P?2=A%256;P=P+3;R.
 7400 ?P=O;P=P+1;IFN=6ORN=7ORN=8 ?P=I%256;P=P+1;R.
 7410 A=I%65696;?P=A/256;P?1=A%256;P=P+2;R.
 7500 ?P=O;G.7410
 7600 ?P=O+D;P=P+1
 7610 ?P=I%256;P=P+1;R.
 7700 ?P=O;P=P+1;R.

Program STANGEN2

header: C50000FFC2B22900.
    5  P.$12
    6  @=2
   10  N=0
   15  L=100;K=200
   20  %L=128/PI
   21  %M=92/PI
   30  G.162
  100  P."(A="A;IN.") :"A
  110  P."(B="B;IN.") :"B 
  120  P."(C="C;IN.") :"C
  130  P."(D="D;IN.") :"D 
  140  GOS.i
  160  P.$12
  162  P."KEUZE 1=BEWEGEN"'
  163  P."      2=HOEKEN"'
  164  P."      3=NIEUE WAARDEN"'
  165  P."      4=EXTRA PUNT ?"'
  166  P."      5=PUNT BAAN"'
  167  P."      6=ANDER SETTINGEN"'
  169  IN.I
  170  IF I=3 G.100
  175  IFI<1ORI>6G.160
  180  G.(I*100+100)
  200  GOS.q;IN."   SNELHEID:"W
  209  CLEAR4
  210  FORI=F TO G STEP H;GOS.d;N.
  220  G.160
  300  GOS.q;CLEAR4
  310  FORI=F TO G STEP H;GOS.e;N.
  320  DO U.?#B001<>255;G.160
  500  IN."SETTING ON:"N
  510  IN."X WAARDE  :"X
  520  IN."Y WAARDE  :"Y 
  530  G.160
  600  GOS.q;CLEAR4;FORI=F TO G STEP H;GOS.f;N.;G.320
  700  P."OORSPRONG(X="K;IN."):"K
  710  P."OORSPRONG(Y="L;IN."):"L 
  720  IN."LIJN(BIJ 5) :"Q
  730  Q=Q*8
  740  G.160
 1000 iE=C*C-B*B;R.
 1100 x%I=I*2*PI/360
 1110  %X=A*COS(%I)-D
 1120  %Y=A*SIN(%I)
 1130  %F=%X*%X+%Y*%Y
 1140  %G=(%F+E)/(2*%F)
 1150  %H=C*C/%F-%G*%G
 1160  FIF %H<0 R.
 1170  %H=SQR(%H)
 1180  R.
 1200 v%V=%G*%X-%H*%Y
 1210  %W=%G*%Y+%H*%X
 1220  R.
 1300 pPLOT 4,K,L
 1310  PLOT J,(K-D),L
 1320  PLOT J,%(K+%X),%(L+%Y)
 1330  PLOT J,%(K+%V),%(L+%W)
 1335  PLOT J,K,L
 1340  IFN GOS.g
 1350  R.
 1400 dGOS.x;GOS.v
 1410  FIF%H<0 R.
 1420  J=5;GOS.p
 1430  %H=-%H;GOS.v;GOS.p
 1435  FORM=1TOW;WAIT;N.
 1440  J=7;GOS.p
 1450  %H=-%H;GOS.v;GOS.p
 1460  R.
 1500 eGOS.x;FIF%H<0 R.
 1510  GOS.v;GOS.h
 1520  %H=-%H;GOS.v
 1530  GOS.h
 1540  R.
 1600 h%D=ACS(-%V/C)
 1610  FIF %W<0 %D=-%D
 1630  PLOT 13,%(%I*%L+128),%(%D*%M+92)
 1640  R.
 1700 fGOS.x;FIF%H<0 R.
 1705  J=5;GOS.v;GOS.g;%H=-%H
 1710  J=5+Q;GOS.v;GOS.g;R.
 1800 g%O=(%V-%X)/100
 1810  %P=(%Y-%W)/100
 1820  PLOT(J+8),%(K+%X+X*%O-Y*%P),%(L+%Y+X*%P+Y*%O)
 1830  R.
 2000 qIN."BEWEGEN VAN:"F
 2010  IN."       NAAR:"G
 2020  IN."       STAP:"H
 2030  R.

Program STANGEN

header: C50000FFC2B22900.
    5  P."#0C"
    6  @=3
   10  N=0
   15  L=100;K=200 
   60  G.160
  100  P."(A="A;IN.") :"A
  110  P."(B="B;IN.") :"B 
  120  P."(C="C;IN.") :"C
  130  P."(D="D;IN.") :"D 
  140  GOS.i
  160  P."#0C"
  162  P."KEUZE 1=BEWEGEN"'
  163  P."      2=HOEKEN"'
  164  P."      3=NIEUE WAARDEN"'
  165  P."      4=EXTRA PUNT ?"'
  166  P."      5=PUNT BAAN"'
  167  P."      6=ANDER SETTINGEN"'
  169  IN.I
  170  IF I=3 G.100
  175  IFI<1ORI>6G.160
  180  G.(I*100+100)
  200  GOS.q;IN."   SNELHEID:"W
  209  CLEAR4
  210  FORI=F TO G STEP H;GOS.d;N.
  220  G.160
  300  GOS.q;CLEAR4
  310  FORI=F TO G STEP H;GOS.e;N.
  320  DO U.?#B001<>255;G.160
  500  IN."SETTING ON:"N
  510  IN."X WAARDE  :"X
  520  IN."Y WAARDE  :"Y 
  530  G.160
  600  GOS.q;CLEAR4;FORI=F TO G STEP H;GOS.f;N.;G.320
  700  P."OORSPRONG(X="K;IN."):"K
  710  P."OORSPRONG(Y="L;IN."):"L 
  720  IN."LIJN(BIJ 5) :"Q
  730  Q=Q*8
  740  G.160
 1000 iE=C*C-B*B;R.
 1100 x%I=I*2*PI/360
 1110  %X=A*COS(%I)-D
 1120  %Y=A*SIN(%I)
 1130  %F=%X*%X+%Y*%Y
 1140  %G=(%F+E)/(2*%F)
 1150  %H=C*C/%F-%G*%G
 1160  FIF %H<0 R.
 1170  %H=SQR(%H)
 1180  R.
 1200 v%V=%G*%X-%H*%Y
 1210  %W=%G*%Y+%H*%X
 1220  R.
 1300 pPLOT 4,K,L
 1310  PLOT J,(K-D),L
 1320  PLOT J,%(K+%X),%(L+%Y)
 1330  PLOT J,%(K+%V),%(L+%W)
 1335  PLOT J,K,L
 1340  IFN GOS.g
 1350  R.
 1400 dGOS.x;GOS.v
 1410  FIF%H<0 R.
 1420  J=5;GOS.p
 1430  %H=-%H;GOS.v;GOS.p
 1435  FORM=1TOW;WAIT;N.
 1440  J=7;GOS.p
 1450  %H=-%H;GOS.v;GOS.p
 1460  R.
 1500 eGOS.x;FIF%H<0 R.
 1510  GOS.v;GOS.h
 1520  %H=-%H;GOS.v
 1530  GOS.h
 1540  R.
 1600 h%D=ACS(-%V/C)
 1610  FIF %W<0 %D=-%D
 1630  PLOT 13,%(%I*%L+128),%(%D*%M+92)
 1640  R.
 1700 fGOS.x;FIF%H<0 R.
 1705  J=5;GOS.v;GOS.g;%H=-%H
 1710  J=5+Q;GOS.v;GOS.g;R.
 1800 g%O=(%V-%X)/100
 1810  %P=(%Y-%W)/100
 1820  PLOT(J+8),%(K+%X+X*%O-Y*%P),%(L+%Y+X*%P+Y*%O)
 1830  R.
 2000 qIN."BEWEGEN VAN:"F
 2010  IN."       NAAR:"G
 2020  IN."       STAP:"H
 2030  R.

Data

header: C70000FF28002800.
ABX
ADC
ADD
AND
ASL
ASR
BIT
CLR
CMP
COM
DAA
DEC
EOR
EXG
INC
JMP
JSR
LEA
LSL
LSR
MUL
NEG
NOP
PSH
PUL
ROL
ROR
RTI
RTS
SBC
SEX
SUB
SWI
TFR
TST
And after this some more data (maybe just garbage):
#06#01#02#03#04#04#01#04#05#04#06#04#01#09#04#07#07#08
#04#04#06#04#06#0B#0B#04#04#06#06#01#06#02#0A#09#04:#89
#8B#84HG#85O#81C#19J#88#1ELN#8D#0FHD=@#1245IF;9#82#1DGE
LTGTLEHSLO#10 @#80#02#04#01#08h

Program

header: F10001FF28002900
    1 ;P=#8200
    2 @=2
   10  DIMP32,H6,S100
   11  $S="DXYUS.AB";T=9+S;Z=P%#10000;P=Z
   15  $H="DIT   ";GOS.t;I?7=#3B;I?8=#4B
   20  V=#2800;W=#288B
   30  GOS.p;END
  100  DIMY100
  110 P.$11;P.$11;R=Y;IN.'"GEEF $R"$R
  115  F.I=0TO31;P?I=#FF;N.
  120  GOS.q
  125  P=Z
  130  F.I=0TO10;P.&P?I;N.;G.110
  200 @=2;F.I=(S+9) TO T STEP9;P.$I,&I?7,&I?8';N.;END
 1000 nIF47<?R A.58>?R N=1;R.
 1010 aIF64<?R A.91>?R N=1;R.
 1020 N=0;R.
 1030 vGOS.a
 1040 F.I=0TO5;H?I=32
 1050 IFN H?I=?R;R=R+1;GOS.n
 1060 N.;IFH?5=32R.
 1065 GOS.n;IFN P."TEVEEL CARACTERS IN IDENT.";DOGOS.n;U.N=0
 1070 R.
 1100 hI=0;K=0;IF?R<>36 I=-1;R.
 1105 N=0;IFR?1=45N=1;R=R+1
 1106 IFR?1=43R=R+1
 1110 I=I*16+K;R=R+1
 1120 IF64<?R A.71>?R K=?R-55;G.1110
 1130 IF47<?R A.58>?R K=?R-48;G.1110
 1140  I=I%65536;IFN I=65536-I
 1150 R.
 1200 tI=S+9
 1210 IFI=T $I=$H;T=I+9;I?7=0;I?8=0;R.
 1220 IF$I=$H R.
 1230 I=I+9;G.1210
 1300 rN=-1
 1310 IFH?1<>#20G.1340
 1320 F.I=0TO7;IFS?I=?H;N=I
 1330 N.;R.
 1340 IF$H="PC    "N=5;R.
 1350 IF$H="CC    "N=8;R.
 1360 IF$H="DP    "N=9;R.
 1370 IF$H="PCR   "N=10;R.
 1380 R.
 1400 sIF?R=32R=R+1;G.s
 1410 R.
 1420 iGOS.h;IFI>-1R.
 1430 GOS.v;GOS.t;I=I?7*256+I?8;R.
 1500 pR=#400;P=#8200;@=2
 1510  R=R+3
 1520  IF$R="END."R.
 1530 P.$R';Z=P;GOS.q;F.I=Z TO(P-1);P.&?I;N.;P.'
 1540 R=R-1;DOR=R+1;U.?R=#0D;G.1510
 2000 qIF?R<>32G.4400
 2005 GOS.s;N=0;GOS.n;IFN=0R.
 2010 F.I=0TO5;H?I=R?I;N.
 2020 L=0;IF?H=#4C A.H?1=#42;R=R+2;L=1;G.4200
 2030 IF?H=#42 A.H?1<>#49;R=R+1;G.4200
 2040  REM VIJFLETTIGE
 2050 H?4=#0D;O=0
 2060 IF$H="SYNC"O=#40613;G.2160
 2070 IF$H="CWAI"O=#40F3C;G.2160
 2080 H?3=#0D
 2090 F.I=V TOW STEP4;IF!I=!H O=(I-V)/4+1
 2100 N.;IFO<>0G=?(W+O);O=?(W+35+O);R=R+3;G.2170
 2110 H?2=#0D
 2120 IF$H="OR"O=#2038A;G.2160
 2130 IF$H="LD"O=#20586;G.2160
 2140 IF$H="ST"O=#20587;G.2160
 2150 G.9001
 2160 R=R+O/65536;G=(O/256)%256;O=O%256
 2170 GOS.v;GOS.r;GOS.s;D=16;G.(3000+G*100)
 2171 GOS.v;GOS.r;GOS.s;D=16;G.(3000+G*100)
 3100 IFN=7O=O+#40;G.5000
 3110 IFN<>6G.9002
 3120 G.5000
 3200 IFN<>0G.3100
 3210 O=#C3-(O=#80)*64;G.5000
 3300 IFN<>8G.3100
 3310 O=#1A+2*(O=#84);G.5200
 3400 IFN=-1D=-64;G.5100
 3410 IFN=7O=O+#10;G.7700
 3420 IFN=6;G.7700
 3430 G.9002
 3500 IFN=-1G.9017
 3502 I=0;IFO=#87I=1
 3505 IFN=7O=O+#40;G.3580
 3510 IFN=6G.3580
 3515 IFO=#81O=#84
 3520 IFN=2N=1;?P=#10;P=P+1
 3525 IFN=1O=O+8;G.3580
 3530 IFO=#84G.3570
 3540 IFN=0O=O+#46;G.3580
 3545 IFN=4N=3;?P=#10;P=P+1
 3550 IFN=3O=O+#48;G.3580
 3560 G.9000
 3565 IFN<>0A.N<>3A.N<>4G.9000
 3570 ?P=#11-(N=0);P=P+1
 3575 O=#83+9*(N=4)
 3580 IFI G.5100
 3585 G.5000
 3600 G.7700
 3700 IFN<>-1G.9000
 3705 IFO=#8DG.5100
 3710 D=-64;G.5100
 3800 IFN<1A.N>4G.9000
 3805 IFN>2N=7-N
 3810 O=O+N;G.5300
 3900 IFN=-1GOS.s;GOS.v;GOS.r;IFN=-1G.9010
 3910 IF?R<>44G.9008
 3920 R=R+1;B=N;GOS.v;GOS.r
 3930 IFN=-1G.9010
 3940 IFN=10ORB=10G.9007
 3950 IFB>5B=B+2
 3960 IFN>5N=N+2
 3970 IF(N/8)<>(B/8)G.9014
 3980 ?P=O;P?1=B*16+N;P=P+2;R.
 4000 IF?R=51P?0=#11;P=P+1;G.4030
 4010 IF?R=50P?0=#10;P=P+1;G.4030
 4020 IF?R<>49G.9015
 4030 ?P=#3F;P=P+1;R.
 4100 IFN=3O=O+2;G.4120
 4110 IFN<>4G.9007
 4120 B=N;GOS.s;?P=O;P=P+1;O=0
 4130 GOS.v;GOS.r
 4140 IFN=-1G.4180
 4150 IFN=0ORN=B ORN=10G.9007
 4160 O=O|?(V+#F6+N+(N<4));IF?R=44;R=R+1;G.4130
 4170 ?P=O;P=P+1;R.
 4180 IF$H="ALL   "A.O=0;O=#FF;G.4170
 4190 G.9010
 4200 N=0;F.I=1TO19;A=I+I+V+208
 4210 IF?A=?R A.A?1=R?1 N=I;I=19
 4220 N.;IFN=0G.9001
 4225 IFN=1P?0=#8D-#76*L;G.4270
 4230 IFN=2P?0=#20-10*L;G.4270
 4240 IFN>17N=N-12
 4250 IFL P?0=#40;P=P+1
 4260 ?P=N+30
 4270 R=R+2;GOS.s;GOS.i;A=(I-P-2)
 4280 IFL=0A.(A>127ORA<-128)G.9016
 4290 A=A-L
 4300 G.(7420-10*L)
 4400 IF?R=#0D R.
 4410 GOS.v;IF?H=32G.9020
 4420 GOS.t;I?7=P/256;I?8=P%256;G.2005
 4500 N=6;G.5200
 5000 B=N;GOS.s;IF?R=#23R=R+1;GOS.i;G.7400
 5010 IF?R=#3CR=R+1;GOS.i;G.7600
 5020 IF?R=#3ER=R+1;GOS.i;G.7500
 5030 U=0
 5040 I=-1;DOI=I+1;U.R?I=#0DORR?I=#2C
 5050 M=0;IFR?I=#2CM=1
 5060 L=0;IF?R=#5BR=R+1;L=16
 5070 IFM=0A.L=16;G.9902
 5075 IFM G.7000
 5080 IFU=1G.9006
 5090 GOS.i;IFC=I/256;G.7600
 5095 G.7500
 5100 GOS.s;IF?R=#23G.9003
 5110 G.5010
 5200  B=N;GOS.s;IF?R=#23R=R+1;GOS.i;G.7400
 5210 G.9004
 5300 GOS.s;IF?R=#23OR?R=#3COR?R=#3EG.9006
 5310 U=1;G.5040
 7000 ?P=O+32;P=P+1;A=0;B=0;GOS.h;IFI>-1 A=I;G.7090
 7020 GOS.v;GOS.r;IFN>-1G.7050
 7030 IF?H=32G.7090
 7040 GOS.t;A=I?7*256+I?8;G.7090
 7050 IFN=6B=6;G.7090
 7060 IFN=7B=5;G.7090
 7070 IFN=0B=11;G.7090
 7080 G.9007
 7090 GOS.s;IF?R<>#2CG.9008
 7100 R=R+1;Q=0;IF?R<>#2DG.7120
 7110 Q=2;R=R+1;IF?R=#2DQ=3;R=R+1
 7120 GOS.v;GOS.r;N=N-1;IFN=-2G.9010
 7130 IFQ G.7160
 7140 Q=-1;IF?R<>#2BG.7160
 7150 Q=0;R=R+1;IF?R=#2BQ=1;R=R+1
 7160 IFN=9L=128+L;G.7230
 7170 IFN<0ORN>3G.9007
 7180 L=L+N*32+128
 7190 IFQ=-1G.7260
 7200 IFA<>0ORB<>0G.9011
 7210 IFL&16=16A.Q%2=0G.9012
 7220 ?P=L+Q;P=P+1;R.
 7230 IFB<>0ORQ<>-1G.9013
 7240 A=A-P-3;IFA>-129 A.A<128;?P=12+L;P?1=A;P=P+2;R.
 7250 A=(A-1)%65696;?P=13+L;G.7410
 7260 IFB<>0P?0=L+B;P=P+1;R.
 7270 IFA=0P?0=L+4;P=P+1;R.
 7280 IFL&16=16G.7300
 7290 IFA>65503ORA<16P?0=N*32+A%32;P=P+1;R.
 7300 IFA>65407ORA<128P?0=8+L;G.7420
 7310 ?P=9+L;G.7410
 7400 ?P=O;A=I;IFB=6ORB=7ORB=8G.7420
 7410 P=P+1;?P=A/256
 7420 P=P+1;?P=A%256;P=P+1;R.
 7500 ?P=O+48;A=I;G.7410
 7600 ?P=O+D;A=I;G.7420
 7700 ?P=O;P=P+1;R.
 7800 ?P=O+32;P?1=159;P=P+1;GOS.s;GOS.i;A=I;G.7410
 9000  P."FOUT";R.
 9001 P."ONBEKEND MENMONIC";R.
 9002  P."VERKEERD REGISTER";R.
 9003  P."IM NOT ALLOWED";R.
 9004  P."NOT IM NOT AL";R.
 9006  P."ONLY INDEXED";R.
 9007  P."VERK REG";R.
 9008  P.", MISM.";R.
 9010  P."GEEN REG";R.
 9011  P."MAG NIET V. ,";R.
 9012  P."-R,R+ NOT A.";R.
 9013  P."VERK G PCR";R.
 9014  P."REG. PASSEN NIET";R.
 9015  P."VERKEERD NR";R.
 9016  P."BRANCH TO LONG";R.
 9017  P."REG MOET!";R.
 9020  P."NOT A LABEL";R.
 9900  P."BRANCHES: B"$R;R.
 9901  P."LABELS";R.
 9902  P."INDIRECT EXT";R.
 9999  P."FOUT9999";R.
Some data

#82KLOOP  
#82OOP  
#82KLOOP  
#82  
;KLOOP  
#82 S.AB
DIT   
;KLOOP  
#82Y#FF#FF#FF#FF#FFU#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FFLOAPU


A
DXYUS.AB
DIT   
;KLOOP  
#82#00U
#FF#FF#FFd#FF#FF#FF$#FF#FF#FF#88#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#02#FF#FF#FF#D1#FF#FF#FF#A0#FF#FF#FF#00#FF   

Program

Starts somewhere in the middle:
 7040 GOS.t;A=I?7*256+I?8;G.7090
 7050 IFN=6B=6;G.7090
 7060 IFN=7B=5;G.7090
 7070 IFN=0B=11;G.7090
 7080 G.9007
 7090 GOS.s;IF?R<>#2CG.9008
 7100 R=R+1;Q=0;IF?R<>#2DG.7120
 7110 Q=2;R=R+1;IF?R=#2DQ=3;R=R+1
 7120 GOS.v;GOS.r;N=N-1;IFN=-2G.9010
 7130 IFQ G.7160
 7140 Q=-1;IF?R<>#2BG.7160
 7150 Q=0;R=R+1;IF?R=#2BQ=1;R=R+1
 7160 IFN=9L=128+L;G.7230
 7170 IFN<0ORN>3G.9007
 7180 L=L+N*32+128
 7190 IFQ=-1G.7260
 7200 IFA<>0ORB<>0G.9011
 7210 IFL&16=16A.Q%2=0G.9012
 7220 ?P=L+Q;P=P+1;R.
 7230 IFB<>0ORQ<>-1G.9013
 7240 A=A-P-3;IFA>-129 A.A<128;?P=12+L;P?1=A;P=P+2;R.
 7250 A=(A-1)%65696;?P=13+L;P?1=A/256;P?2=A%256;P=P+3;R.
 7260 IFB<>0P?0=L+B;P=P+1;R.
 7270 IFA=0P?0=L+4;P=P+1;R.
 7280 IFL&16=16G.7300
 7290 IFA>65503ORA<16P?0=N*32+A%32;P=P+1;R.
 7300 IFA>65407ORA<128P?0=8+L;P?1=A%256;P=P+2;R.
 7310 ?P=9+L;P?1=A/256;P?2=A%256;P=P+3;R.
 7400 ?P=O;IFN=6ORN=7ORN=8P?1=I%256;P=P+2;R.
 7410 A=I%65696;?P=A/256;P?1=A%256;P=P+2;R.
 7500 ?P=O;P=P+1;G.7410
 7501 ?P=O;G.7410
 7600 ?P=O+C;P?1=I%256;P=P+2;R.
 7700 ?P=O;P=P+1;R.
 7701 ?P=O;P=P+1;R.
 9000  P."FOUT";R.
 9001 P."ONBEND MENMONIC";R.
 9002  P."VERKEERD REGISTER";R.
 9003  P."IM NOT ALLOWED";R.
 9004  P."NOT IM NOT AL";R.
 9006  P."ONLY INDEXED";R.
 9007  P."VERK REG";R.
 9008  P.", MISM.";R.
 9010  P."GEEN REG";R.
 9011  P."MAG NIET V. ,";R.
 9012  P."-R,R+ NOT A.";R.
 9013  P."VERK G PCR";R.
 9900  P."BRANCHES: B"$R;R.
 9901  P."LABELS";R.
 9902  P."INDIRECT EXTENDED?";R.
 9999  P."FOUT9999";R.

Program

header: C70000FF28002800
ABX
ADC
ADD
AND
ASL
ASR
BIT
CLR
CMP
COM
DAA
DEC
EOR
EXG
INC
JMP
JSR
LEA
LSL
LSR
MUL
NEG
NOP
PSH
PUL
ROL
ROR
RTI
RTS
SBC
SEX
SUB
SWI
TFR
TST
and some more (probably garbage):
#86#01#02#03#04#04#01#04#05#04#06#04#01#09#04#07#07#08#04#04#06#04#06#0B#0B#04#04#06#06#01#06#02#0A#09#04:#89#8B#84HG#85O#81C#19J#88#1ELN#8D#0FHD=@#1245IF;9#82#1D#80?#1FMSRSARNHILSCCCSNEEQVCVSPLMIGELTGTLEHSLO#10 @#80#02#04#01#08

Program

header: F10001FF28002900
    2 @=2
   10  DIMP32,H6,S100
   11  $S="DXYUS.AB";T=9+S;Z=P%#10000;P=Z
   15  $H="DIT   ";GOS.t;I?7=1;I?8=#23
   20  V=#2800;W=#288B
  100  DIMY100
  110 P.$11;P.$11;R=Y;IN.'"GEEF $R"$R
  115  F.I=0TO31;P?I=#FF;N.
  120  GOS.q
  125  P=Z
  130  F.I=0TO10;P.&P?I;N.;G.110
 1000 nIF47<?R A.58>?R N=1;R.
 1010 aIF64<?R A.91>?R N=1;R.
 1020 N=0;R.
 1030 vGOS.a
 1040 F.I=0#F4O5;H?I=32
 1050 IFN H?I=?R;R#BDR+1;GOS.n
 1060 N.;IFH?5=32R.
 1065 GOS.n;IFN P."TEVEEL CARACTERS IN IDENT.";DOGOS.n;U.N=0
 1070 R.
 1100 hI=0;K=0;IF?R<>36 I=-1;R.
 1105 N=0;IFR?1=45N=1;R=R+1
 1106 IFR?1=43R=R+1
 1110 I=I*16+K;R=R+1
 1120 IF64<?R A.71>?R K=?R-55;G.1110
 1130 IF47<?R A.58>?R K=?R-48;G.1110
 1140  I=I%65536;IFN I=65536-I
 1150 R.
 1200 tI=S+9
 1210 IFI=T $I=$H;T=I+9;R.
 1220 IF$I=$H R.
 1230 I=I+9;G.1210
 1300 rN=-1
 1310 IFH?1<>#20G.1340
 1320 F.I=0TO7;IFS?I=?H;N=I
 1330 N.;R.
 1340 IF$H="PC    "N=5;R.
 1350 IF$H="CC    "N=8;R.
 1360 IF$H="DP    "N=9;R.
 1370 IF$H="PCR   "N=10;R.
 1380 R.
 1400 sIF?R=32R=R+1;G.s
 1410 R.
 1420 iGOS.h;IFI>-1R.
 1430 GOS.v;GOS.t;I=I?7*256+I?8;R.
 2000 qIF?R<>32G.9901
 2010 GOS.s;F.I=0TO5;H?I=R?I;N.
 2020 L=0;IF?H=#4C A.H?1=#42;R=R+2;L=1;G.4200
 2030 IF?H=#42 A.H?1<>#49;R=R+1;G.4200
 2040  REM VIJFLETTIGE
 2050 H?4=#0D;O=0
 2060 IF$H="SYNC"O=#40613;G.2160
 2070 IF$H="CWAI"O=#40F3C;G.2160
 2080 H?3=#0D
 2090 F.I=V TOW STEP4;IF!I=!H O=(I-V)/4+1
 2100 N.;IFO<>0G=?(W+O);O=?(W+35+O);R=R+3;G.2170
 2110 H?2=#0D
 2120 IF$H="OR"O=#2038A;G.2160
 2130 IF$H="LD"O=#20586;G.2160
 2140 IF$H="ST"O=#20587;G.2160
 2150 G.9001
 2160 R=R+O/65536;G=(O/256)%256;O=O%256
 2165  P.$11$11"G="G" O="O''
 2170  P.$11$11"G="G" O="&O''
 2171 GOS.v;GOS.r;GOS.s;D=16;G.(3000+G*100)
 3100 IFN=7O=O+#40;G.5000
 3110 IFN<>6G.9002
 3120 G.5000
 3200 IFN<>0G.3100
 3210 O=#C3-(O=#80)*64;G.5000
 3300 IFN<>8G.3100
 3310 O=#1A+2*(O=#84);G.5200
 3400 IFN=-1D=-64;G.5100
 3410 IFN=7O=O+#10;G.7700
 3420 IFN=6;G.7700
 3430 G.9002
 3500 IFN=-1G.9017
 3502 I=0;IFO=#87I=1
 3505 IFN=7O=O+#40;G.3580
 3510 IFN=6G.3580
 3515 IFO=#81O=#84
 3520 IFN=2N=1;?P=#10;P=P+1
 3525 IFN=1O=O+8;G.3580
 3530 IFO=#84G.3570
 3540 IFN=0O=O+#46;G.3580
 3545 IFN=4N=3;?P=#10;P=P+1
 3550 IFN=3O=O+#48;G.3580
 3560 G.9000
 3565 IFN<>0A.N<>3A.N<>4G.9000
 3570 ?P=#11-(N=0);P=P+1
 3575 O=#83+9*(N=4)
 3580 IFI G.5100
 3585 G.5000
 3600 G.7700
 3700 IFN<>-1G.9000
 3705 IFO=#8DG.5100
 3710 D=-64;G.5100
 3800 IFN<1A.N>4G.9000
 3805 IFN>2N=7-N
 3810 O=O+N;G.5300
 3900 IFN=-1GOS.s;GOS.v;GOS.r;IFN=-1G.9010
 3910 IF?R<>44G.9008
 3920 R=R+1;B=N;GOS.v;GOS.r
 3930 IFN=-1G.9010
 3940 IFN=10ORB=10G.9007
 3950 IFB>5B=B+2
 3960 IFN>5N=N+2
 3970 IF(N/8)<>(B/8)G.9014
 3980 ?P=O;P?1=B*16+N;P=P+2;R.
 4000 IF?R=51P?0=#11;P=P+1;G.4030
 4010 IF?R=50P?0=#10;P=P+1;G.4030
 4020 IF?R<>49G.9015
 4030 ?P=#3F;P=P+1;R.
 4100 IFN=3O=O+2;G.4120
 4110 IFN<>4G.9007
 4120 B=N;GOS.s;?P=O;P=P+1;O=0
 4130 GOS.v;GOS.r
 4140 IFN=-1G.4180
 4150 IFN=0ORN=B ORN=10G.9007
 4160 O=O|?(V+#F6+N+(N<4));IF?R=44;R=R+1;G.4130
 4170 ?P=O;P=P+1;R.
 4180 IF$H="ALL   "A.O=0;O=#FF;G.4170
 4190 G.9010
 4200 F.I=1TO19;A=I+I+V+210
 4210 IF?A=?RA.A?1=R?I;J=I;I=19
 4220 R.;IFN=1P?0=#8D-#76*L;P=P+1;G.4280
 4230 IFN=2?P=#20-10*L;P=P+1;G.4280
 4240 IFN>17N=N-12
 4250 IFLP?0=#40;P=P+1
 4260 ?P=N+18
 4270 GOS.s;GOS.i;A=(I-P-1)
 4280 IFL=0A.(A>127ORA<-128)G.9016
 4290 A=A-1;IFA<0A=A+6536
 4300 G.(7420-10*L)
 4400 GOS.t;I?7=P/256;I?8=P%256;G.2010
 4500 N=6;G.5200
 5000 B=N;GOS.s;IF?R=#23R=R+1;GOS.i;G.7400
 5010 IF?R=#3CR=R+1;GOS.i;G.7600
 5020 IF?R=#3ER=R+1;GOS.i;G.7500
 5030 U=0
 5040 I=-1;DOI=I+1;U.R?I=#0DORR?I=#2C
 5050 M=0;IFR?I=#2CM=1
 5060 L=0;IF?R=#5BR=R+1;L=16
 5070 IFM=0A.L=16;G.9902
 5075 IFM G.7000
 5080 IFU=1G.9006
 5090 GOS.i;IFC=I/256;G.7600
 5095 G.7500
 5100 GOS.s;IF?R=#23G.9003
 5110 G.5010
 5200  B=N;GOS.s;IF?R=#23R=R+1;GOS.i;G.7400
 5210 G.9004
 5300 GOS.s;IF?R=#23OR?R=#3COR?R=#3EG.9006
 5310 U=1;G.5040
 7000 ?P=O+32;P=P+1;A=0;B=0;GOS.h;IFI>-1 A=I;G.7090
 7020 GOS.v;GOS.r;IFN>-1G.7050
 7030 IF?H=32G.7090
 7040 GOS.t;A=I?7*256+I?8;G.7090
 7050 IFN=6B=6;G.7090
 7060 IFN=7B=5;G.7090
 7070 IFN=0B=11;G.7090
 7080 G.9007
 7090 GOS.s;IF?R<>#2CG.9008
 7100 R=R+1;Q=0;IF?R<>#2DG.7120
 7110 Q=2;R=R+1;IF?R=#2DQ=3;R=R+1
 7120 GOS.v;GOS.r;N=N-1;IFN=-2G.9010
 7130 IFQ G.7160
 7140 Q=-1;IF?R<>#2BG.7160
 7150 Q=0;R=R+1;IF?R=#2BQ=1;R=R+1
 7160 IFN=9L=128+L;G.7230
 7170 IFN<0ORN>3G.9007
 7180 L=L+N*32+128
 7190 IFQ=-1G.7260
 7200 IFA<>0ORB<>0G.9011
 7210 IFL&16=16A.Q%2=0G.9012
 7220 ?P=L+Q;P=P+1;R.
 7230 IFB<>0ORQ<>-1G.9013
 7240 A=A-P-3;IFA>-129 A.A<128;?P=12+L;P?1=A;P=P+2;R.
 7250 A=(A-1)%65696;?P=13+L;G.7410
 7260 IFB<>0P?0=L+B;P=P+1;R.
 7270 IFA=0P?0=L+4;P=P+1;R.
 7280 IFL&16=16G.7300
 7290 IFA>65503ORA<16P?0=N*32+A%32;P=P+1;R.
 7300 IFA>65407ORA<128P?0=8+L;G.7420
 7310 ?P=9+L;G.7410
 7400 ?P=O;A=I;IFB=6ORB=7ORB=8G.7420
 7410 P=P+1;?P=A/256
 7420 P=P+1;?P=A%256;P=P+1;R.
 7500 ?P=O+48;A=I;G.7410
 7600 ?P=O+D;A=I;G.7420
 7700 ?P=O;P=P+1;R.
 7800 ?P=O+32;P?1=159;P=P+1;GOS.s;GOS.i;A=I;G.7410
 9000  P."FOUT";R.
 9001 P."ONBEKEND MENMONIC";R.
 9002  P."VERKEERD REGISTER";R.
 9003  P."IM NOT ALLOWED";R.
 9004  P."NOT IM NOT AL";R.
 9006  P."ONLY INDEXED";R.
 9007  P."VERK REG";R.
 9008  P.", MISM."
 9010  P."GEEN REG";R.
 9011  P."MAG NIET V. ,";R.
 9012  P."-R,R+ NOT A.";R.
 9013  P."VERK G PCR";R.
 9014  P."REG. PASSEN NIET";R.
 9015  P."VERKEERD NR";R.
 9016  P."BRANCH TO LONG";R.
 9017  P."REG MOET!";R.
 9900  P."BRANCHES: B"$R;R.
 9901  P."LABELS";R.
 9902  P."INDIRECT EXTENDED?";R.
 9999 P."FOUT9999";R.
Data:
#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF#FF GJ



0
DXYUS.AB
DIT   
#01#23      
#FF#FFXLB
S A
DX ADDA #23
$0 
  ABX
(#00(#00 ADC CMP

o#00#00EXG
ESWI
#0A#00#00#00#8B A
 CWAI #23$0 CWA
GJSS
0101


#1E?PPSH
PSH
#0B#00PSH
#0B#FB#00#00#00PSU
#0B#00#00UU#00 
 EUG EX44B,U4
EUU 40,X
0 EX4  SWI 1



UFUU,X
#00#FE#00#CB