; -----------------------------------------------------------------------------
; Red Arrows Loader (Part 3)
; reverse engineered by Eelco Huininga using phpDisassembler v1.02 (6502)
; DOS Filename   : Red-Arrows
; Acorn filename : Red-Arrows
; Load address   : 00000700
; Exec address   : 00000F01
; Length         : 00000900
; -----------------------------------------------------------------------------

; -----------------------------------------------------------------------------
; Vectors
; -----------------------------------------------------------------------------
irq1v              = &0204                        ; IRQ1V Primary interrupt vector

; -----------------------------------------------------------------------------
; OS call addresses
; -----------------------------------------------------------------------------
osnewl             = &FFE7                        ; OSNEWL Write a new-line routine
oswrch             = &FFEE                        ; OSWRCH Write a character
osbyte             = &FFF4                        ; OSBYTE Various OS routines

; -----------------------------------------------------------------------------
; Hardware addresses
; -----------------------------------------------------------------------------
acia_control       = &FE08                        ; The 6850 ACIA control register
serial_ula         = &FE10                        ; The serial ULA
via1_t1cl          = &FE44                        ; The system VIA's Timer 1 Low Order Latches(Write) / Timer 1 Low Order Counter (Read)
via1_t1ch          = &FE45                        ; The system VIA's Timer 1 High Order Counter
via1_t1ll          = &FE46                        ; The system VIA's Timer 1 Low Order Latches
via1_t1lh          = &FE47                        ; The system VIA's Timer 1 High Order Latches
via1_t2cl          = &FE48                        ; The system VIA's Timer 2 Low Order Latches(Write) / Timer 2 Low Order Counter (Read)
via1_t2ch          = &FE49                        ; The system VIA's Timer 2 High Order Counter
via1_acr           = &FE4B                        ; The system VIA's Auxiliary Control Register
via1_ifr           = &FE4D                        ; The system VIA's Interrupt Flag Register
via1_ier           = &FE4E                        ; The system VIA's Interrupt Enable Register
via2_t1cl          = &FE64                        ; The user VIA's Timer 1 Low Order Latches(Write) / Timer 1 Low Order Counter (Read)
via2_t1ch          = &FE65                        ; The user VIA's Timer 1 High Order Counter
via2_t1ll          = &FE66                        ; The user VIA's Timer 1 Low Order Latches
via2_t1lh          = &FE67                        ; The user VIA's Timer 1 High Order Latches
via2_t2cl          = &FE68                        ; The user VIA's Timer 2 Low Order Latches(Write) / Timer 2 Low Order Counter (Read)
via2_t2ch          = &FE69                        ; The user VIA's Timer 2 High Order Counter
via2_acr           = &FE6B                        ; The user VIA's Auxiliary Control Register
via2_ifr           = &FE6D                        ; The user VIA's Interrupt Flag Register
via2_ier           = &FE6E                        ; The user VIA's Interrupt Enable Register


; -----------------------------------------------------------------------------
; Start of code
; -----------------------------------------------------------------------------

0700  8F                 .    ...
0701  AF                 .    ...
0702  4F                 O    ...
0703  4E 74 6A           Ntj  LSR &6A74
0706  AF                 .    ...
0707  E9 4E              .N   SBC #&4E
0709  EB                 .    ...
070A  6A                 j    ROR A
070B  AE E9 9F           ...  LDX &9FE9
070E  4E E6 6A           N.j  LSR &6AE6
0711  65 19              e.   ADC &19
0713  C7                 .    ...
0714  A4 E0              ..   LDY &E0
0716  4E E7 6A           N.j  LSR &6AE7
0719  65 19              e.   ADC &19
071B  C7                 .    ...
071C  A4 E0              ..   LDY &E0
071E  4E D2 6A           N.j  LSR &6AD2
0721  67                 g    ...
0722  19 C7 A4           ...  ORA &A4C7,Y
0725  E0 4E              .N   CPX #&4E
0727  EA                 .    NOP
0728  6A                 j    ROR A
0729  66 19              f.   ROR &19
072B  C7                 .    ...
072C  A4 E0              ..   LDY &E0
072E  4E E6 6A           N.j  LSR &6AE6
0731  66 19              f.   ROR &19
0733  C7                 .    ...
0734  A4 E0              ..   LDY &E0
0736  6A                 j    ROR A
0737  66 19              f.   ROR &19
0739  C7                 .    ...
073A  A4 E0              ..   LDY &E0
073C  6A                 j    ROR A
073D  66 19              f.   ROR &19
073F  AB                 .    ...
0740  AE E0 87           ...  LDX &87E0
0743  45 F3              E.   EOR &F3
0745  2D 37 1A           -7.  AND &1A37
0748  87                 .    ...
0749  45 AE              E.   EOR &AE
074B  6D 7A E7           mz.  ADC &E77A
074E  E0 2D              .-   CPX #&2D
0750  F7                 .    ...
0751  1D 45 E8           .E.  ORA &E845,X
0754  69 D7              i.   ADC #&D7
0756  19 4A E7           .J.  ORA &E74A,Y
0759  67                 g    ...
075A  2E 50 37           .P7  ROL &3750
075D  ED 4A EE           .J.  SBC &EE4A
0760  67                 g    ...
0761  2E B5 37           ..7  ROL &37B5
0764  E4 AB              ..   CPX &AB
0766  50 E0              P.   BVC &0748
0768  4A                 J    LSR A
0769  1B                 .    ...
076A  78                 x    SEI
076B  2E 2A 37           .*7  ROL &372A
076E  E0 4A              .J   CPX #&4A
0770  1A                 .    ...
0771  78                 x    SEI
0772  2E 3E 17           .>.  ROL &173E
0775  08                 .    PHP
0776  4A                 J    LSR A
0777  1D 78 2E           .x.  ORA &2E78,X
077A  4D 37 E0           M7.  EOR &E037
077D  4A                 J    LSR A
077E  1C                 .    ...
077F  78                 x    SEI
0780  2E 18 17           ...  ROL &1718
0783  06 4A              .J   ASL &4A
0785  E8                 .    INX
0786  78                 x    SEI
0787  2E C7 37           ..7  ROL &37C7
078A  E9 4A              .J   SBC #&4A
078C  F7                 .    ...
078D  78                 x    SEI
078E  2E B6 37           ..7  ROL &37B6
0791  E0 4A              .J   CPX #&4A
0793  F6 78              .x   INC &78,X
0795  2E 18 17           ...  ROL &1718
0798  2B                 +    ...
0799  2D F7 5F           -._  AND &5FF7
079C  4E 16 7E           N.~  LSR &7E16
079F  E7                 .    ...
07A0  E9 6F              .o   SBC #&6F
07A2  4E 52 7E           NR~  LSR &7E52
07A5  E7                 .    ...
07A6  E9 6F              .o   SBC #&6F
07A8  4E AB 7E           N.~  LSR &7EAB
07AB  E7                 .    ...
07AC  E9 45              .E   SBC #&45
07AE  4A                 J    LSR A
07AF  6D 7A E7           mz.  ADC &E77A
07B2  E0 2D              .-   CPX #&2D
07B4  37                 7    ...
07B5  1D 87 45           ..E  ORA &4587,X
07B8  50 6D              Pm   BVC &0827
07BA  7A                 z    ...
07BB  E7                 .    ...
07BC  E0 2D              .-   CPX #&2D
07BE  37                 7    ...
07BF  1D 0D 0D           ...  ORA &0D0D,X
07C2  0D 0D 0D           ...  ORA &0D0D
07C5  45 E7              E.   EOR &E7
07C7  5A                 Z    ...
07C8  3F                 ?    ...
07C9  E0 17              ..   CPX #&17
07CB  E1 C7              ..   SBC (&C7,X)
07CD  09 18              ..   ORA #&18
07CF  0F                 .    ...
07D0  37                 7    ...
07D1  12                 .    ...
07D2  C7                 .    ...
07D3  00                 .    BRK
07D4  18                 .    CLC
07D5  AB                 .    ...
07D6  22                 "    ...
07D7  E0 B5              ..   CPX #&B5
07D9  82                 .    ...
07DA  8A                 .    TXA
07DB  88                 .    DEY
07DC  91 82              ..   STA (&82),Y
07DE  C7                 .    ...
07DF  B5 A2              ..   LDA &A2,X
07E1  B7                 .    ...
07E2  AB                 .    ...
07E3  A6 BE              ..   LDX &BE
07E5  C7                 .    ...
07E6  86 89              ..   STX &89
07E8  83                 .    ...
07E9  C7                 .    ...
07EA  93                 .    ...
07EB  95 9E              ..   STA &9E,X
07ED  C7                 .    ...
07EE  86 80              ..   STX &80
07F0  86 8E              ..   STX &8E
07F2  89                 .    ...
07F3  C6 E7              ..   DEC &E7
07F5  AC 82 91           ...  LDY &9182
07F8  8E 89 A3           ...  STX &A389
07FB  D7                 .    ...
07FC  AB                 .    ...
07FD  99 A3 A1           ...  STA &A1A3,Y
0800  FF                 .    ...
0801  00                 .    BRK
0802  00                 .    BRK
0803  00                 .    BRK
0804  00                 .    BRK
0805  00                 .    BRK
0806  00                 .    BRK
0807  00                 .    BRK
0808  C0 C0              ..   CPY #&C0
080A  C0 C0              ..   CPY #&C0
080C  04                 .    ...
080D  04                 .    ...
080E  04                 .    ...
080F  04                 .    ...
0810  00                 .    BRK
0811  00                 .    BRK
0812  00                 .    BRK
0813  64                 d    ...
0814  00                 .    BRK
0815  00                 .    BRK
0816  00                 .    BRK
0817  FF                 .    ...
0818  00                 .    BRK
0819  00                 .    BRK
081A  00                 .    BRK
081B  00                 .    BRK
081C  00                 .    BRK
081D  00                 .    BRK
081E  00                 .    BRK
081F  00                 .    BRK
0820  00                 .    BRK
0821  00                 .    BRK
0822  00                 .    BRK
0823  05 00              ..   ORA &00
0825  00                 .    BRK
0826  00                 .    BRK
0827  FF                 .    ...
0828  00                 .    BRK
0829  00                 .    BRK
082A  00                 .    BRK
082B  00                 .    BRK
082C  00                 .    BRK
082D  00                 .    BRK
082E  00                 .    BRK
082F  00                 .    BRK
0830  00                 .    BRK
0831  00                 .    BRK
0832  00                 .    BRK
0833  00                 .    BRK
0834  00                 .    BRK
0835  00                 .    BRK
0836  00                 .    BRK
0837  00                 .    BRK
0838  FF                 .    ...
0839  00                 .    BRK
083A  00                 .    BRK
083B  00                 .    BRK
083C  00                 .    BRK
083D  F0 00              ..   BEQ &083F
083F  0E 00 00           ...  ASL &0000
0842  00                 .    BRK
0843  00                 .    BRK
0844  00                 .    BRK
0845  00                 .    BRK
0846  00                 .    BRK
0847  00                 .    BRK
0848  00                 .    BRK
0849  00                 .    BRK
084A  00                 .    BRK
084B  00                 .    BRK
084C  00                 .    BRK
084D  00                 .    BRK
084E  00                 .    BRK
084F  00                 .    BRK
0850  00                 .    BRK
0851  00                 .    BRK
0852  00                 .    BRK
0853  00                 .    BRK
0854  00                 .    BRK
0855  00                 .    BRK
0856  00                 .    BRK
0857  00                 .    BRK
0858  00                 .    BRK
0859  00                 .    BRK
085A  00                 .    BRK
085B  00                 .    BRK
085C  00                 .    BRK
085D  00                 .    BRK
085E  00                 .    BRK
085F  00                 .    BRK
0860  00                 .    BRK
0861  00                 .    BRK
0862  00                 .    BRK
0863  00                 .    BRK
0864  00                 .    BRK
0865  00                 .    BRK
0866  00                 .    BRK
0867  00                 .    BRK
0868  00                 .    BRK
0869  00                 .    BRK
086A  00                 .    BRK
086B  00                 .    BRK
086C  00                 .    BRK
086D  00                 .    BRK
086E  00                 .    BRK
086F  00                 .    BRK
0870  64                 d    ...
0871  06 00              ..   ASL &00
0873  00                 .    BRK
0874  00                 .    BRK
0875  00                 .    BRK
0876  00                 .    BRK
0877  00                 .    BRK
0878  00                 .    BRK
0879  00                 .    BRK
087A  00                 .    BRK
087B  00                 .    BRK
087C  00                 .    BRK
087D  00                 .    BRK
087E  00                 .    BRK
087F  90 00              ..   BCC &0881
0881  00                 .    BRK
0882  00                 .    BRK
0883  00                 .    BRK
0884  00                 .    BRK
0885  00                 .    BRK
0886  00                 .    BRK
0887  00                 .    BRK
0888  00                 .    BRK
0889  00                 .    BRK
088A  00                 .    BRK
088B  00                 .    BRK
088C  00                 .    BRK
088D  00                 .    BRK
088E  00                 .    BRK
088F  00                 .    BRK
0890  00                 .    BRK
0891  00                 .    BRK
0892  00                 .    BRK
0893  00                 .    BRK
0894  00                 .    BRK
0895  00                 .    BRK
0896  00                 .    BRK
0897  00                 .    BRK
0898  00                 .    BRK
0899  00                 .    BRK
089A  00                 .    BRK
089B  00                 .    BRK
089C  00                 .    BRK
089D  00                 .    BRK
089E  00                 .    BRK
089F  00                 .    BRK
08A0  00                 .    BRK
08A1  00                 .    BRK
08A2  00                 .    BRK
08A3  00                 .    BRK
08A4  00                 .    BRK
08A5  00                 .    BRK
08A6  00                 .    BRK
08A7  00                 .    BRK
08A8  00                 .    BRK
08A9  00                 .    BRK
08AA  00                 .    BRK
08AB  00                 .    BRK
08AC  00                 .    BRK
08AD  00                 .    BRK
08AE  00                 .    BRK
08AF  00                 .    BRK
08B0  00                 .    BRK
08B1  00                 .    BRK
08B2  00                 .    BRK
08B3  00                 .    BRK
08B4  00                 .    BRK
08B5  00                 .    BRK
08B6  00                 .    BRK
08B7  00                 .    BRK
08B8  00                 .    BRK
08B9  00                 .    BRK
08BA  00                 .    BRK
08BB  00                 .    BRK
08BC  00                 .    BRK
08BD  00                 .    BRK
08BE  00                 .    BRK
08BF  00                 .    BRK
08C0  00                 .    BRK
08C1  00                 .    BRK
08C2  00                 .    BRK
08C3  00                 .    BRK
08C4  00                 .    BRK
08C5  00                 .    BRK
08C6  00                 .    BRK
08C7  00                 .    BRK
08C8  00                 .    BRK
08C9  00                 .    BRK
08CA  00                 .    BRK
08CB  00                 .    BRK
08CC  00                 .    BRK
08CD  00                 .    BRK
08CE  00                 .    BRK
08CF  00                 .    BRK
08D0  00                 .    BRK
08D1  00                 .    BRK
08D2  00                 .    BRK
08D3  00                 .    BRK
08D4  00                 .    BRK
08D5  00                 .    BRK
08D6  00                 .    BRK
08D7  00                 .    BRK
08D8  00                 .    BRK
08D9  00                 .    BRK
08DA  00                 .    BRK
08DB  00                 .    BRK
08DC  00                 .    BRK
08DD  00                 .    BRK
08DE  00                 .    BRK
08DF  00                 .    BRK
08E0  00                 .    BRK
08E1  00                 .    BRK
08E2  00                 .    BRK
08E3  00                 .    BRK
08E4  00                 .    BRK
08E5  00                 .    BRK
08E6  00                 .    BRK
08E7  00                 .    BRK
08E8  00                 .    BRK
08E9  00                 .    BRK
08EA  00                 .    BRK
08EB  00                 .    BRK
08EC  00                 .    BRK
08ED  00                 .    BRK
08EE  00                 .    BRK
08EF  00                 .    BRK
08F0  00                 .    BRK
08F1  00                 .    BRK
08F2  00                 .    BRK
08F3  00                 .    BRK
08F4  00                 .    BRK
08F5  00                 .    BRK
08F6  00                 .    BRK
08F7  00                 .    BRK
08F8  00                 .    BRK
08F9  00                 .    BRK
08FA  00                 .    BRK
08FB  00                 .    BRK
08FC  00                 .    BRK
08FD  00                 .    BRK
08FE  00                 .    BRK
08FF  00                 .    BRK
0900  00                 .    BRK
0901  00                 .    BRK
0902  00                 .    BRK
0903  00                 .    BRK
0904  00                 .    BRK
0905  00                 .    BRK
0906  00                 .    BRK
0907  00                 .    BRK
0908  00                 .    BRK
0909  00                 .    BRK
090A  00                 .    BRK
090B  00                 .    BRK
090C  00                 .    BRK
090D  00                 .    BRK
090E  00                 .    BRK
090F  00                 .    BRK
0910  00                 .    BRK
0911  00                 .    BRK
0912  00                 .    BRK
0913  00                 .    BRK
0914  00                 .    BRK
0915  00                 .    BRK
0916  00                 .    BRK
0917  00                 .    BRK
0918  00                 .    BRK
0919  00                 .    BRK
091A  00                 .    BRK
091B  00                 .    BRK
091C  00                 .    BRK
091D  00                 .    BRK
091E  00                 .    BRK
091F  00                 .    BRK
0920  00                 .    BRK
0921  00                 .    BRK
0922  00                 .    BRK
0923  00                 .    BRK
0924  00                 .    BRK
0925  00                 .    BRK
0926  00                 .    BRK
0927  00                 .    BRK
0928  00                 .    BRK
0929  00                 .    BRK
092A  00                 .    BRK
092B  00                 .    BRK
092C  00                 .    BRK
092D  00                 .    BRK
092E  00                 .    BRK
092F  00                 .    BRK
0930  00                 .    BRK
0931  00                 .    BRK
0932  00                 .    BRK
0933  00                 .    BRK
0934  00                 .    BRK
0935  00                 .    BRK
0936  00                 .    BRK
0937  00                 .    BRK
0938  00                 .    BRK
0939  00                 .    BRK
093A  00                 .    BRK
093B  00                 .    BRK
093C  00                 .    BRK
093D  00                 .    BRK
093E  00                 .    BRK
093F  00                 .    BRK
0940  00                 .    BRK
0941  00                 .    BRK
0942  00                 .    BRK
0943  00                 .    BRK
0944  00                 .    BRK
0945  00                 .    BRK
0946  00                 .    BRK
0947  00                 .    BRK
0948  00                 .    BRK
0949  00                 .    BRK
094A  00                 .    BRK
094B  00                 .    BRK
094C  00                 .    BRK
094D  00                 .    BRK
094E  00                 .    BRK
094F  00                 .    BRK
0950  00                 .    BRK
0951  00                 .    BRK
0952  00                 .    BRK
0953  00                 .    BRK
0954  00                 .    BRK
0955  00                 .    BRK
0956  00                 .    BRK
0957  00                 .    BRK
0958  00                 .    BRK
0959  00                 .    BRK
095A  00                 .    BRK
095B  00                 .    BRK
095C  00                 .    BRK
095D  00                 .    BRK
095E  00                 .    BRK
095F  00                 .    BRK
0960  00                 .    BRK
0961  00                 .    BRK
0962  00                 .    BRK
0963  00                 .    BRK
0964  00                 .    BRK
0965  00                 .    BRK
0966  00                 .    BRK
0967  00                 .    BRK
0968  00                 .    BRK
0969  00                 .    BRK
096A  00                 .    BRK
096B  00                 .    BRK
096C  00                 .    BRK
096D  00                 .    BRK
096E  00                 .    BRK
096F  00                 .    BRK
0970  00                 .    BRK
0971  00                 .    BRK
0972  00                 .    BRK
0973  00                 .    BRK
0974  00                 .    BRK
0975  00                 .    BRK
0976  00                 .    BRK
0977  00                 .    BRK
0978  00                 .    BRK
0979  00                 .    BRK
097A  00                 .    BRK
097B  00                 .    BRK
097C  00                 .    BRK
097D  00                 .    BRK
097E  00                 .    BRK
097F  00                 .    BRK
0980  00                 .    BRK
0981  00                 .    BRK
0982  00                 .    BRK
0983  00                 .    BRK
0984  00                 .    BRK
0985  00                 .    BRK
0986  00                 .    BRK
0987  00                 .    BRK
0988  00                 .    BRK
0989  00                 .    BRK
098A  00                 .    BRK
098B  00                 .    BRK
098C  00                 .    BRK
098D  00                 .    BRK
098E  00                 .    BRK
098F  00                 .    BRK
0990  00                 .    BRK
0991  00                 .    BRK
0992  00                 .    BRK
0993  00                 .    BRK
0994  00                 .    BRK
0995  00                 .    BRK
0996  00                 .    BRK
0997  00                 .    BRK
0998  00                 .    BRK
0999  00                 .    BRK
099A  00                 .    BRK
099B  00                 .    BRK
099C  00                 .    BRK
099D  00                 .    BRK
099E  00                 .    BRK
099F  00                 .    BRK
09A0  00                 .    BRK
09A1  00                 .    BRK
09A2  00                 .    BRK
09A3  00                 .    BRK
09A4  00                 .    BRK
09A5  00                 .    BRK
09A6  00                 .    BRK
09A7  00                 .    BRK
09A8  00                 .    BRK
09A9  00                 .    BRK
09AA  00                 .    BRK
09AB  00                 .    BRK
09AC  00                 .    BRK
09AD  00                 .    BRK
09AE  00                 .    BRK
09AF  00                 .    BRK
09B0  00                 .    BRK
09B1  00                 .    BRK
09B2  00                 .    BRK
09B3  00                 .    BRK
09B4  00                 .    BRK
09B5  00                 .    BRK
09B6  00                 .    BRK
09B7  00                 .    BRK
09B8  00                 .    BRK
09B9  00                 .    BRK
09BA  00                 .    BRK
09BB  00                 .    BRK
09BC  00                 .    BRK
09BD  00                 .    BRK
09BE  00                 .    BRK
09BF  00                 .    BRK
09C0  00                 .    BRK
09C1  00                 .    BRK
09C2  00                 .    BRK
09C3  00                 .    BRK
09C4  00                 .    BRK
09C5  00                 .    BRK
09C6  00                 .    BRK
09C7  00                 .    BRK
09C8  00                 .    BRK
09C9  00                 .    BRK
09CA  00                 .    BRK
09CB  00                 .    BRK
09CC  00                 .    BRK
09CD  00                 .    BRK
09CE  00                 .    BRK
09CF  00                 .    BRK
09D0  00                 .    BRK
09D1  00                 .    BRK
09D2  00                 .    BRK
09D3  00                 .    BRK
09D4  00                 .    BRK
09D5  00                 .    BRK
09D6  00                 .    BRK
09D7  00                 .    BRK
09D8  00                 .    BRK
09D9  00                 .    BRK
09DA  00                 .    BRK
09DB  00                 .    BRK
09DC  00                 .    BRK
09DD  00                 .    BRK
09DE  00                 .    BRK
09DF  00                 .    BRK
09E0  00                 .    BRK
09E1  00                 .    BRK
09E2  00                 .    BRK
09E3  00                 .    BRK
09E4  00                 .    BRK
09E5  00                 .    BRK
09E6  00                 .    BRK
09E7  00                 .    BRK
09E8  00                 .    BRK
09E9  00                 .    BRK
09EA  00                 .    BRK
09EB  00                 .    BRK
09EC  00                 .    BRK
09ED  00                 .    BRK
09EE  00                 .    BRK
09EF  00                 .    BRK
09F0  00                 .    BRK
09F1  00                 .    BRK
09F2  00                 .    BRK
09F3  00                 .    BRK
09F4  00                 .    BRK
09F5  00                 .    BRK
09F6  00                 .    BRK
09F7  00                 .    BRK
09F8  00                 .    BRK
09F9  00                 .    BRK
09FA  00                 .    BRK
09FB  00                 .    BRK
09FC  00                 .    BRK
09FD  00                 .    BRK
09FE  00                 .    BRK
09FF  00                 .    BRK
0A00  00                 .    BRK
0A01  00                 .    BRK
0A02  00                 .    BRK
0A03  00                 .    BRK
0A04  00                 .    BRK
0A05  00                 .    BRK
0A06  00                 .    BRK
0A07  00                 .    BRK
0A08  00                 .    BRK
0A09  00                 .    BRK
0A0A  00                 .    BRK
0A0B  00                 .    BRK
0A0C  00                 .    BRK
0A0D  00                 .    BRK
0A0E  00                 .    BRK
0A0F  00                 .    BRK
0A10  00                 .    BRK
0A11  00                 .    BRK
0A12  00                 .    BRK
0A13  00                 .    BRK
0A14  00                 .    BRK
0A15  00                 .    BRK
0A16  00                 .    BRK
0A17  00                 .    BRK
0A18  00                 .    BRK
0A19  00                 .    BRK
0A1A  00                 .    BRK
0A1B  00                 .    BRK
0A1C  00                 .    BRK
0A1D  00                 .    BRK
0A1E  00                 .    BRK
0A1F  00                 .    BRK
0A20  00                 .    BRK
0A21  00                 .    BRK
0A22  00                 .    BRK
0A23  00                 .    BRK
0A24  00                 .    BRK
0A25  00                 .    BRK
0A26  00                 .    BRK
0A27  00                 .    BRK
0A28  00                 .    BRK
0A29  00                 .    BRK
0A2A  00                 .    BRK
0A2B  00                 .    BRK
0A2C  00                 .    BRK
0A2D  00                 .    BRK
0A2E  00                 .    BRK
0A2F  00                 .    BRK
0A30  00                 .    BRK
0A31  00                 .    BRK
0A32  00                 .    BRK
0A33  00                 .    BRK
0A34  00                 .    BRK
0A35  00                 .    BRK
0A36  00                 .    BRK
0A37  00                 .    BRK
0A38  00                 .    BRK
0A39  00                 .    BRK
0A3A  00                 .    BRK
0A3B  00                 .    BRK
0A3C  00                 .    BRK
0A3D  00                 .    BRK
0A3E  00                 .    BRK
0A3F  00                 .    BRK
0A40  00                 .    BRK
0A41  00                 .    BRK
0A42  00                 .    BRK
0A43  00                 .    BRK
0A44  00                 .    BRK
0A45  00                 .    BRK
0A46  00                 .    BRK
0A47  00                 .    BRK
0A48  00                 .    BRK
0A49  00                 .    BRK
0A4A  00                 .    BRK
0A4B  00                 .    BRK
0A4C  00                 .    BRK
0A4D  00                 .    BRK
0A4E  00                 .    BRK
0A4F  00                 .    BRK
0A50  00                 .    BRK
0A51  00                 .    BRK
0A52  00                 .    BRK
0A53  00                 .    BRK
0A54  00                 .    BRK
0A55  00                 .    BRK
0A56  00                 .    BRK
0A57  00                 .    BRK
0A58  00                 .    BRK
0A59  00                 .    BRK
0A5A  00                 .    BRK
0A5B  00                 .    BRK
0A5C  00                 .    BRK
0A5D  00                 .    BRK
0A5E  00                 .    BRK
0A5F  00                 .    BRK
0A60  00                 .    BRK
0A61  00                 .    BRK
0A62  00                 .    BRK
0A63  00                 .    BRK
0A64  00                 .    BRK
0A65  00                 .    BRK
0A66  00                 .    BRK
0A67  00                 .    BRK
0A68  00                 .    BRK
0A69  00                 .    BRK
0A6A  00                 .    BRK
0A6B  00                 .    BRK
0A6C  00                 .    BRK
0A6D  00                 .    BRK
0A6E  00                 .    BRK
0A6F  00                 .    BRK
0A70  00                 .    BRK
0A71  00                 .    BRK
0A72  00                 .    BRK
0A73  00                 .    BRK
0A74  00                 .    BRK
0A75  00                 .    BRK
0A76  00                 .    BRK
0A77  00                 .    BRK
0A78  00                 .    BRK
0A79  00                 .    BRK
0A7A  00                 .    BRK
0A7B  00                 .    BRK
0A7C  00                 .    BRK
0A7D  00                 .    BRK
0A7E  00                 .    BRK
0A7F  00                 .    BRK
0A80  00                 .    BRK
0A81  00                 .    BRK
0A82  00                 .    BRK
0A83  00                 .    BRK
0A84  00                 .    BRK
0A85  00                 .    BRK
0A86  00                 .    BRK
0A87  00                 .    BRK
0A88  00                 .    BRK
0A89  00                 .    BRK
0A8A  00                 .    BRK
0A8B  00                 .    BRK
0A8C  00                 .    BRK
0A8D  00                 .    BRK
0A8E  00                 .    BRK
0A8F  00                 .    BRK
0A90  00                 .    BRK
0A91  00                 .    BRK
0A92  00                 .    BRK
0A93  00                 .    BRK
0A94  00                 .    BRK
0A95  00                 .    BRK
0A96  00                 .    BRK
0A97  00                 .    BRK
0A98  00                 .    BRK
0A99  00                 .    BRK
0A9A  00                 .    BRK
0A9B  00                 .    BRK
0A9C  00                 .    BRK
0A9D  00                 .    BRK
0A9E  00                 .    BRK
0A9F  00                 .    BRK
0AA0  00                 .    BRK
0AA1  00                 .    BRK
0AA2  00                 .    BRK
0AA3  00                 .    BRK
0AA4  00                 .    BRK
0AA5  00                 .    BRK
0AA6  00                 .    BRK
0AA7  00                 .    BRK
0AA8  00                 .    BRK
0AA9  00                 .    BRK
0AAA  00                 .    BRK
0AAB  00                 .    BRK
0AAC  00                 .    BRK
0AAD  00                 .    BRK
0AAE  00                 .    BRK
0AAF  00                 .    BRK
0AB0  00                 .    BRK
0AB1  00                 .    BRK
0AB2  00                 .    BRK
0AB3  00                 .    BRK
0AB4  00                 .    BRK
0AB5  00                 .    BRK
0AB6  00                 .    BRK
0AB7  00                 .    BRK
0AB8  00                 .    BRK
0AB9  00                 .    BRK
0ABA  00                 .    BRK
0ABB  00                 .    BRK
0ABC  00                 .    BRK
0ABD  00                 .    BRK
0ABE  00                 .    BRK
0ABF  00                 .    BRK
0AC0  00                 .    BRK
0AC1  00                 .    BRK
0AC2  00                 .    BRK
0AC3  00                 .    BRK
0AC4  00                 .    BRK
0AC5  00                 .    BRK
0AC6  00                 .    BRK
0AC7  00                 .    BRK
0AC8  00                 .    BRK
0AC9  00                 .    BRK
0ACA  00                 .    BRK
0ACB  00                 .    BRK
0ACC  00                 .    BRK
0ACD  00                 .    BRK
0ACE  00                 .    BRK
0ACF  00                 .    BRK
0AD0  00                 .    BRK
0AD1  00                 .    BRK
0AD2  00                 .    BRK
0AD3  00                 .    BRK
0AD4  00                 .    BRK
0AD5  00                 .    BRK
0AD6  00                 .    BRK
0AD7  00                 .    BRK
0AD8  00                 .    BRK
0AD9  00                 .    BRK
0ADA  00                 .    BRK
0ADB  00                 .    BRK
0ADC  00                 .    BRK
0ADD  00                 .    BRK
0ADE  00                 .    BRK
0ADF  00                 .    BRK
0AE0  00                 .    BRK
0AE1  00                 .    BRK
0AE2  00                 .    BRK
0AE3  00                 .    BRK
0AE4  00                 .    BRK
0AE5  00                 .    BRK
0AE6  00                 .    BRK
0AE7  00                 .    BRK
0AE8  00                 .    BRK
0AE9  00                 .    BRK
0AEA  00                 .    BRK
0AEB  00                 .    BRK
0AEC  00                 .    BRK
0AED  00                 .    BRK
0AEE  00                 .    BRK
0AEF  00                 .    BRK
0AF0  00                 .    BRK
0AF1  00                 .    BRK
0AF2  00                 .    BRK
0AF3  00                 .    BRK
0AF4  00                 .    BRK
0AF5  00                 .    BRK
0AF6  00                 .    BRK
0AF7  00                 .    BRK
0AF8  00                 .    BRK
0AF9  00                 .    BRK
0AFA  00                 .    BRK
0AFB  00                 .    BRK
0AFC  00                 .    BRK
0AFD  00                 .    BRK
0AFE  00                 .    BRK
0AFF  00                 .    BRK
0B00  8D 48 FE           .H.  STA via1_t2cl
0B03  CE 69 FE           .i.  DEC via2_t2ch
0B06  A5 FC              ..   LDA &FC
0B08  40                 @    RTI
.
0B09  78                 x    SEI
0B0A  A2 FF              ..   LDX #&FF
0B0C  9A                 .    TXS                           ; Reset stack pointer
0B0D  A9 2A              .*   LDA #&0C2A MOD 256
0B0F  8D 04 02           ...  STA irq1v
0B12  A9 0C              ..   LDA #&0C2A DIV 256
0B14  8D 05 02           ...  STA irq1v+1                   ; Set the IRQ vector to the new IRQ handler
0B17  A2 00              ..   LDX #&00
.
0B19  A9 49              .I   LDA #&49
0B1B  9D 00 0A           ...  STA &0A00,X
0B1E  8A                 .    TXA
0B1F  9D 01 0A           ...  STA &0A01,X
0B22  E8                 .    INX
0B23  E8                 .    INX
0B24  D0 F3              ..   BNE &0B19
0B26  A9 40              .@   LDA #%01000000                ; bit 0  : Port A latch = disabled
                                                            ; bit 1  : Port B latch = disabled
                                                            ; bit 2-4: Shift register = disabled
                                                            ; bit 5  : Timer 2 control: timed interrupt
                                                            ; bit 6-7: Timer 1 control: continous interrupts, PB7 = disabled
0B28  8D 4B FE           .K.  STA via1_acr
0B2B  8D 6B FE           .k.  STA via2_acr
0B2E  A9 7F              .   LDA #%01111111                ; bit 0  : CA2 interrupt = disabled
                                                            ; bit 1  : CA1 interrupt = disabled
                                                            ; bit 2  : Shift register interrupt = disabled
                                                            ; bit 3  : CB2 interrupt = disabled
                                                            ; bit 4  : CB1 interrupt = disabled
                                                            ; bit 5  : Timer 2 interrupt = disabled
                                                            ; bit 6  : Timer 1 interrupt = disabled
                                                            ; bit 7  : Clear interrupt bits
0B30  8D 4E FE           .N.  STA via1_ier
0B33  8D 6E FE           .n.  STA via2_ier
0B36  A9 E0              ..   LDA #%11100000                ; bit 0  : CA2 interrupt = disabled
                                                            ; bit 1  : CA1 interrupt = disabled
                                                            ; bit 2  : Shift register interrupt = disabled
                                                            ; bit 3  : CB2 interrupt = disabled
                                                            ; bit 4  : CB1 interrupt = disabled
                                                            ; bit 5  : Timer 2 interrupt = enabled
                                                            ; bit 6  : Timer 1 interrupt = enabled
                                                            ; bit 7  : Set interrupt bits
0B38  8D 4E FE           .N.  STA via1_ier
0B3B  8D 6E FE           .n.  STA via2_ier
0B3E  A9 94              ..   LDA #&94
0B40  8D 48 FE           .H.  STA via1_t2cl
0B43  8D 49 FE           .I.  STA via1_t2ch
0B46  A9 CA              ..   LDA #&CA
0B48  8D 68 FE           .h.  STA via2_t2cl
0B4B  8D 69 FE           .i.  STA via2_t2ch
0B4E  A9 D2              ..   LDA #&D2
0B50  8D 44 FE           .D.  STA via1_t1cl
0B53  8D 45 FE           .E.  STA via1_t1ch
0B56  A9 CD              ..   LDA #&CD
0B58  8D 64 FE           .d.  STA via2_t1cl
0B5B  8D 65 FE           .e.  STA via2_t1ch
0B5E  A0 00              ..   LDY #&1000 MOD 256
0B60  84 70              .p   STY &70
0B62  A9 10              ..   LDA #&1000 DIV 256
0B64  85 71              .q   STA &71
.
0B66  AD 49 FE           .I.  LDA via1_t2ch
0B69  4D 68 FE           Mh.  EOR via2_t2cl
0B6C  4D 69 FE           Mi.  EOR via2_t2ch
0B6F  38                 8    SEC
0B70  ED 44 FE           .D.  SBC via1_t1cl
0B73  4D 48 FE           MH.  EOR via1_t2cl
0B76  59 00 0B           Y..  EOR &0B00,Y
0B79  91 70              .p   STA (&70),Y
0B7B  C8                 .    INY
0B7C  D0 E8              ..   BNE &0B66
0B7E  E6 71              .q   INC &71
0B80  A5 71              .q   LDA &71
0B82  C9 40              .@   CMP #&40
0B84  90 E0              ..   BCC &0B66           ; Loop from &1000 till &3FFF
0B86  A2 00              ..   LDX #&00
0B88  A0 00              ..   LDY #&00
0B8A  4C 00 0D           L..  JMP &0D00
.
0B8D  78                 x    SEI
0B8E  A9 00              ..   LDA #&00
0B90  85 70              .p   STA &70
0B92  85 71              .q   STA &71
0B94  A8                 .    TAY
.
0B95  A5 71              .q   LDA &71
0B97  59 00 0E           Y..  EOR &0E00,Y
0B9A  85 71              .q   STA &71
0B9C  A2 08              ..   LDX #&08
.
0B9E  A5 71              .q   LDA &71
0BA0  2A                 *    ROL A
0BA1  90 0C              ..   BCC &0BAF
0BA3  A5 71              .q   LDA &71
0BA5  49 08              I.   EOR #&08
0BA7  85 71              .q   STA &71
0BA9  A5 70              .p   LDA &70
0BAB  49 10              I.   EOR #&10
0BAD  85 70              .p   STA &70
.
0BAF  26 70              &p   ROL &70
0BB1  26 71              &q   ROL &71
0BB3  CA                 .    DEX
0BB4  D0 E8              ..   BNE &0B9E
0BB6  C8                 .    INY
0BB7  C0 20              .    CPY #&20
0BB9  D0 DA              ..   BNE &0B95
0BBB  A5 70              .p   LDA &70
0BBD  CD FE 0E           ...  CMP &0EFE
0BC0  D0 0A              ..   BNE &0BCC
0BC2  A5 71              .q   LDA &71
0BC4  CD FF 0E           ...  CMP &0EFF
0BC7  D0 03              ..   BNE &0BCC
0BC9  4C 00 0E           L..  JMP &0E00
.
0BCC  A9 C8              ..   LDA #&C8
0BCE  A2 03              ..   LDX #&03
0BD0  A0 00              ..   LDY #&00
0BD2  20 F4 FF            ..  JSR osbyte
.
0BD5  99 00 0E           ...  STA &0E00,Y
0BD8  C8                 .    INY
0BD9  4C D5 0B           L..  JMP &0BD5

0BDC  4B 65 76           Kev  DS "Kevin!"
      69 6E 21           in!


; -----------------------------------------------------------------------------
; Initialize cassette hardware
; -----------------------------------------------------------------------------
.
0BE2  78                 x    SEI
0BE3  A9 05              ..   LDA #%00000101      ; bit 0-2: transmit baudrate = 300 baud
                                                  ; bit 3-5: receive baudrate = 19200 baud
                                                  ; bit 6  : select cassette hardware
                                                  ; bit 7  : cassette motor relay = off
0BE5  8D 10 FE           ...  STA serial_ula
0BE8  A9 03              ..   LDA #%00000011      ; bit 0-1: master reset
                                                  ; bit 2-4: 7 bits, even parity, 2 stop bits
                                                  ; bit 5-6: RTS = low, transmitting interrupt = disabled
                                                  ; bit 7  : receive interrupt = disabled
0BEA  8D 08 FE           ...  STA acia_control
0BED  60                 `    RTS


; -----------------------------------------------------------------------------
; Display LOAD ERROR! TRY AGAIN and loop infinitely
; -----------------------------------------------------------------------------
.
0BEE  20 E2 0B            ..  JSR &0BE2           ; Initialize cassette hardware
0BF1  A2 00              ..   LDX #&00
.
0BF3  9D 00 0E           ...  STA &0E00,X         ; Delete
0BF6  9D 2A 0C           .*.  STA &0C2A,X         ; Delete IRQ handler
0BF9  E8                 .    INX
0BFA  D0 F7              ..   BNE &0BF3
0BFC  EA                 .    NOP                 ; In previous versions of this protection system these bytes read
0BFD  EA                 .    NOP                 ; LDA #&07
0BFE  EA                 .    NOP                 ; JSR &CB1D
0BFF  EA                 .    NOP                 ; Which would do a direct MODE 7 call to the OS. In the Red Arrows loader this statement is left out probably
0C00  EA                 .    NOP                 ; Due to the incompatibility with non-OS1.2 systems
.
0C01  A2 00              ..   LDX #&00
.
0C03  BD 14 0C           ...  LDA &0C14,X         ; Write the "LOAD ERROR! TRY AGAIN" message
0C06  F0 06              ..   BEQ &0C0E
0C08  20 EE FF            ..  JSR oswrch
0C0B  E8                 .    INX
0C0C  D0 F5              ..   BNE &0C03
.
0C0E  20 E7 FF            ..  JSR osnewl
0C11  4C 01 0C           L..  JMP &0C01           ; Loop infinitely

.
0C14  4C 4F 41           LOA  DS "LOAD ERROR! TRY AGAIN"
      44 20 45           D E
      52 52 4F           RRO
      52 21 20           R !
      54 52 59           TRY
      20 41 47            AG
      41 49 4E           AIN
0C29  00

; -----------------------------------------------------------------------------
; IRQ handler
; -----------------------------------------------------------------------------
.
0C2A  AD 4D FE           .M.  LDA via1_ifr        ; Did the system VIA caused an interrupt?
0C2D  10 4D              .M   BPL &0C7C           ; Jump if it didn't
0C2F  29 40              )@   AND #%01000000      ; Has Timer 1 of the system VIA timed out?
0C31  F0 16              ..   BEQ &0C49           ; Jump if it hasn't
0C33  38                 8    SEC
0C34  6E 64 FE           nd.  ROR via2_t1cl
0C37  CE 49 FE           .I.  DEC via1_t2ch
0C3A  AD 48 FE           .H.  LDA via1_t2cl
0C3D  09 01              ..   ORA #&01
0C3F  AA                 .    TAX
0C40  FE 00 0A           ...  INC &0A00,X
0C43  AE 44 FE           .D.  LDX via1_t1cl
0C46  A5 FC              ..   LDA &FC
0C48  40                 @    RTI

.
0C49  AD 64 FE           .d.  LDA via2_t1cl
0C4C  4D 68 FE           Mh.  EOR via2_t2cl
0C4F  09 01              ..   ORA #&01
0C51  8D 48 FE           .H.  STA via1_t2cl
0C54  EE 44 FE           .D.  INC via1_t1cl
0C57  CE 69 FE           .i.  DEC via2_t2ch
0C5A  AD 69 FE           .i.  LDA via2_t2ch
0C5D  09 01              ..   ORA #&01
0C5F  8D 44 FE           .D.  STA via1_t1cl
0C62  4D 45 FE           ME.  EOR via1_t1ch
0C65  49 D4              I.   EOR #&D4
0C67  09 01              ..   ORA #&01
0C69  8D 49 FE           .I.  STA via1_t2ch
0C6C  AD 48 FE           .H.  LDA via1_t2cl
0C6F  0A                 .    ASL A
0C70  85 70              .p   STA &70             ; LSB
0C72  A9 0A              ..   LDA #&0A
0C74  85 71              .q   STA &71             ; MSB
0C76  AD 64 FE           .d.  LDA via2_t1cl
0C79  6C 70 00           lp.  JMP (&0070)

.
0C7C  AD 6D FE           .m.  LDA via2_ifr
0C7F  29 40              )@   AND #%01000000      ; Has Timer 1 of the user VIA timed out?
0C81  F0 30              .0   BEQ &0CB3           ; Jump if it hasn't
0C83  AD 64 FE           .d.  LDA via2_t1cl
0C86  AD 68 FE           .h.  LDA via2_t2cl
0C89  4D 48 FE           MH.  EOR via1_t2cl
0C8C  09 01              ..   ORA #&01
0C8E  8D 45 FE           .E.  STA via1_t1ch
0C91  BA                 .    TSX
0C92  E0 FE              ..   CPX #&FE
0C94  B0 0D              ..   BCS &0CA3
0C96  BD 02 01           ...  LDA &0102,X
0C99  4D 48 FE           MH.  EOR via1_t2cl
0C9C  09 01              ..   ORA #&01
0C9E  8D 68 FE           .h.  STA via2_t2cl
0CA1  D0 0A              ..   BNE &0CAD           ; Branch always
.
0CA3  B5 02              ..   LDA &02,X
0CA5  4D 49 FE           MI.  EOR via1_t2ch
0CA8  09 01              ..   ORA #&01
0CAA  8D 69 FE           .i.  STA via2_t2ch
.
0CAD  A5 FC              ..   LDA &FC
0CAF  CE 65 FE           .e.  DEC via2_t1ch
0CB2  40                 @    RTI

.
0CB3  AE 44 FE           .D.  LDX via1_t1cl
0CB6  AD 67 FE           .g.  LDA via2_t1lh
0CB9  4D 49 FE           MI.  EOR via1_t2ch
0CBC  4D 64 FE           Md.  EOR via2_t1cl
0CBF  49 EE              I.   EOR #&EE
0CC1  09 01              ..   ORA #&01
0CC3  8D 68 FE           .h.  STA via2_t2cl
0CC6  4D 46 FE           MF.  EOR &via1_t1ll
0CC9  EE 49 FE           .I.  INC via1_t2ch
0CCC  09 01              ..   ORA #&01
0CCE  8D 69 FE           .i.  STA via2_t2ch
0CD1  A5 FC              ..   LDA &FC
0CD3  40                 @    RTI

.
0CD4  78                 x    SEI
0CD5  EA                 .    NOP
0CD6  EA                 .    NOP
0CD7  EA                 .    NOP
0CD8  EA                 .    NOP
0CD9  EA                 .    NOP
0CDA  EA                 .    NOP
0CDB  EA                 .    NOP
0CDC  EA                 .    NOP
0CDD  EA                 .    NOP
0CDE  EA                 .    NOP
0CDF  EA                 .    NOP
0CE0  A9 2A              .*   LDA #&0C2A MOD 256
0CE2  8D 04 02           ...  STA irq1v
0CE5  A9 0C              ..   LDA #&0C2A DIV 256
0CE7  8D 05 02           ...  STA irq1v+1
0CEA  A9 4C              .L   LDA #&4C                      ; JMP &0287 (hang computer when <BREAK> is pressed)
0CEC  8D 87 02           ...  STA &0287                     ; *FX 247, 76
0CEF  A9 87              ..   LDA #&0287 MOD 256
0CF1  8D 88 02           ...  STA &0288                     ; *FX 248, 135
0CF4  A9 02              ..   LDA #&0287 DIV 256
0CF6  8D 89 02           ...  STA &0289                     ; *FX 249, 0
0CF9  A9 03              ..   LDA #&03
0CFB  8D 58 02           .X.  STA &0258                     ; *FX 200, 3
0CFE  58                 X    CLI
0CFF  60                 `    RTS

.
0D00  AD 00 0D           ...  LDA &0D00
0D03  38                 8    SEC
0D04  69 CD              i.   ADC #&CD
0D06  4D 68 FE           Mh.  EOR via2_t2cl
0D09  EE 05 0D           ...  INC &0D05                     ; Self-modifying code
0D0C  CE 69 FE           .i.  DEC via2_t2ch
0D0F  4D FA FF           M..  EOR &FFFA
0D12  4D 68 FE           Mh.  EOR via2_t2cl
0D15  4D 64 FE           Md.  EOR via2_t1cl
0D18  AE 69 FE           .i.  LDX via2_t2ch
0D1B  EC 48 FE           .H.  CPX via1_t2cl
0D1E  6E 49 FE           nI.  ROR via1_t2ch
0D21  59 00 0E           Y..  EOR &0E00,Y
0D24  EE 28 0D           .(.  INC &0D28
0D27  49 D9              I.   EOR #&D9
0D29  4D 65 FE           Me.  EOR via2_t1ch
0D2C  38                 8    SEC
0D2D  2E 48 FE           .H.  ROL via1_t2cl
0D30  AE 44 FE           .D.  LDX via1_t1cl
0D33  4D FB FF           M..  EOR &FFFB
0D36  59 00 0B           Y..  EOR &0B00,Y
0D39  CE 48 FE           .H.  DEC via1_t2cl
0D3C  EA                 .    NOP
0D3D  4D 47 FE           MG.  EOR via1_t1lh
0D40  59 00 0D           Y..  EOR &0D00,Y
0D43  CE 48 0D           .H.  DEC &0D48
0D46  18                 .    CLC
0D47  ED 00 0C           ...  SBC &0C00
0D4A  4D 64 FE           Md.  EOR via2_t1cl
0D4D  4D 46 FE           MF.  EOR &via1_t1ll
0D50  5D 01 0B           ]..  EOR &0B01,X
0D53  4D 66 FE           Mf.  EOR via2_t1ll
0D56  59 00 19           Y..  EOR &1900,Y
0D59  4D 69 FE           Mi.  EOR via2_t2ch
0D5C  78                 x    SEI                           ; Disable interrupts
0D5D  48                 H    PHA
0D5E  AD 68 FE           .h.  LDA via2_t2cl
0D61  8D 66 0C           .f.  STA &0C66
0D64  4D 05 0D           M..  EOR &0D05
0D67  4D 44 FE           MD.  EOR via1_t1cl
0D6A  AA                 .    TAX
0D6B  68                 h    PLA
0D6C  58                 X    CLI                           ; Enable interrupts
0D6D  4D 68 FE           Mh.  EOR via2_t2cl
0D70  4D 45 FE           ME.  EOR via1_t1ch
0D73  38                 8    SEC
0D74  ED 48 FE           .H.  SBC via1_t2cl
0D77  59 01 0D           Y..  EOR &0D01,Y
0D7A  4D 68 FE           Mh.  EOR via2_t2cl
0D7D  49 FF              I.   EOR #&FF
0D7F  48                 H    PHA
0D80  FE 00 19           ...  INC &1900,X
0D83  4D 65 FE           Me.  EOR via2_t1ch
0D86  4D 64 FE           Md.  EOR via2_t1cl
0D89  4D 68 FE           Mh.  EOR via2_t2cl
0D8C  AE 45 FE           .E.  LDX via1_t1ch
0D8F  8E C0 0C           ...  STX &0CC0
0D92  59 00 13           Y..  EOR &1300,Y
0D95  5D 00 0B           ]..  EOR &0B00,X
0D98  CE 96 0D           ...  DEC &0D96
0D9B  4D 45 FE           ME.  EOR via1_t1ch
0D9E  59 00 07           Y..  EOR &0700,Y
0DA1  AE 48 FE           .H.  LDX via1_t2cl
0DA4  EC 44 FE           .D.  CPX via1_t1cl
0DA7  ED 49 FE           .I.  SBC via1_t2ch
0DAA  59 00 20           Y.   EOR &2000,Y
0DAD  99 00 0E           ...  STA &0E00,Y
0DB0  C8                 .    INY
0DB1  F0 03              ..   BEQ &0DB6
0DB3  4C 00 0D           L..  JMP &0D00
.
0DB6  EE 94 0D           ...  INC &0D94
0DB9  AD 94 0D           ...  LDA &0D94
0DBC  C9 30              .0   CMP #&30
0DBE  90 05              ..   BCC &0DC5
0DC0  A9 10              ..   LDA #&10
0DC2  8D 94 0D           ...  STA &0D94
.
0DC5  EE 58 0D           .X.  INC &0D58
0DC8  AD 58 0D           .X.  LDA &0D58
0DCB  C9 40              .@   CMP #&40
0DCD  90 05              ..   BCC &0DD4
0DCF  A9 10              ..   LDA #&10
0DD1  8D 58 0D           .X.  STA &0D58
.
0DD4  EE 82 0D           ...  INC &0D82
0DD7  AD 82 0D           ...  LDA &0D82
0DDA  C9 40              .@   CMP #&40
0DDC  90 05              ..   BCC &0DE3
0DDE  A9 10              ..   LDA #&10
0DE0  8D 82 0D           ...  STA &0D82
.
0DE3  EE AC 0D           ...  INC &0DAC
0DE6  AD AC 0D           ...  LDA &0DAC
0DE9  C9 30              .0   CMP #&30
0DEB  90 05              ..   BCC &0DF2
0DED  A9 20              .    LDA #&20
0DEF  8D AC 0D           ...  STA &0DAC
.
0DF2  EE 01 0D           ...  INC &0D01
0DF5  F0 06              ..   BEQ &0DFD
0DF7  20 D4 0C            ..  JSR &0CD4
0DFA  4C 00 0D           L..  JMP &0D00
.
0DFD  4C 8D 0B           L..  JMP &0B8D


; -----------------------------------------------------------------------------
; 
; -----------------------------------------------------------------------------
.
0E00  61 56              aV   ADC (&56,X)
0E02  DA                 .    ...
0E03  DF                 .    ...
0E04  0E CD 00           ...  ASL &00CD
0E07  63                 c    ...
0E08  A5 BF              ..   LDA &BF
0E0A  EF                 .    ...
0E0B  7E 71 1E           ~q.  ROR &1E71,X
0E0E  74                 t    ...
0E0F  90 61              .a   BCC &0E72
0E11  DA                 .    ...
0E12  9E                 .    ...
0E13  D0 31              .1   BNE &0E46
0E15  B2                 .    ...
0E16  D7                 .    ...
0E17  8C F0 AA           ...  STY &AAF0
0E1A  E6 06              ..   INC &06
0E1C  0B                 .    ...
0E1D  DC                 .    ...
0E1E  58                 X    CLI
0E1F  48                 H    PHA
0E20  E8                 .    INX
0E21  00                 .    BRK
0E22  7E 22 D9           ~".  ROR &D922,X
0E25  6B                 k    ...
0E26  D4                 .    ...
0E27  CF                 .    ...
0E28  54                 T    ...
0E29  72                 r    ...
0E2A  6F                 o    ...
0E2B  23                 #    ...
0E2C  92                 .    ...
0E2D  9A                 .    TXS
0E2E  51 18              Q.   EOR (&18),Y
0E30  6E 9A 32           n.2  ROR &329A
0E33  BD DC 7B           ..{  LDA &7BDC,X
0E36  BF                 .    ...
0E37  B0 21              .!   BCS &0E5A
0E39  D3                 .    ...
0E3A  A7                 .    ...
0E3B  F0 8A              ..   BEQ &0DC7
0E3D  B4 A2              ..   LDY &A2
0E3F  BE 87 C5           ...  LDX &C587,Y
0E42  C0 A9              ..   CPY #&A9
0E44  D2                 .    ...
0E45  37                 7    ...
0E46  9C                 .    ...
0E47  39 90 03           9..  AND &0390,Y
0E4A  DD C8 20           ..   CMP &20C8,X
0E4D  A8                 .    TAY
0E4E  A6 B6              ..   LDX &B6
0E50  C1 87              ..   CMP (&87,X)
0E52  FD 75 D2           .u.  SBC &D275,X
0E55  66 C0              f.   ROR &C0
0E57  25 D7              %.   AND &D7
0E59  70 54              pT   BCS &0EAF
0E5B  F6 F5              ..   INC &F5,X
0E5D  40                 @    RTI
0E5E  6D 8D FF           m..  ADC &FF8D
0E61  A5 B7              ..   LDA &B7
0E63  59 D3 EE           Y..  EOR &EED3,Y
0E66  06 40              .@   ASL &40
0E68  F8                 .    SED
0E69  85 72              .r   STA &72
0E6B  EC E5 00           ...  CPX &00E5
0E6E  8E 0C 0E           ...  STX &0E0C
0E71  27                 '    ...
0E72  0E 2E 24           ..$  ASL &242E
0E75  CC C5 8A           ...  CPY &8AC5
0E78  BC 2E 78           ..x  LDY &782E,X
0E7B  3F                 ?    ...
0E7C  EC 34 8F           .4.  CPX &8F34
0E7F  0F                 .    ...
0E80  76 43              vC   ROR &43,X
0E82  26 97              &.   ROL &97
0E84  C7                 .    ...
0E85  37                 7    ...
0E86  F5 5A              .Z   SBC &5A,X
0E88  7A                 z    ...
0E89  C3                 .    ...
0E8A  A0 57              .W   LDY #&57
0E8C  2B                 +    ...
0E8D  26 CF              &.   ROL &CF
0E8F  9A                 .    TXS
0E90  55 42              UB   EOR &42,X
0E92  48                 H    PHA
0E93  D1 47              .G   CMP (&47),Y
0E95  41 2D              A-   EOR (&2D,X)
0E97  4B                 K    ...
0E98  D5 69              .i   CMP &69,X
0E9A  FC                 .    ...
0E9B  5A                 Z    ...
0E9C  43                 C    ...
0E9D  78                 x    SEI
0E9E  E0 F8              ..   CPX #&F8
0EA0  13                 .    ...
0EA1  84 04              ..   STY &04
0EA3  CA                 .    DEX
0EA4  8F                 .    ...
0EA5  67                 g    ...
0EA6  E4 37              .7   CPX &37
0EA8  4D 85 B8           M..  EOR &B885
0EAB  48                 H    PHA
0EAC  3B                 ;    ...
0EAD  0F                 .    ...
0EAE  B7                 .    ...
0EAF  D1 F6              ..   CMP (&F6),Y
0EB1  9E                 .    ...
0EB2  6E 94 1B           n..  ROR &1B94
0EB5  AB                 .    ...
0EB6  4A                 J    LSR A
0EB7  DA                 .    ...
0EB8  8F                 .    ...
0EB9  A2 E2              ..   LDX #&E2
0EBB  23                 #    ...
0EBC  3A                 :    ...
0EBD  6A                 j    ROR A
0EBE  DC                 .    ...
0EBF  21 58              !X   AND (&58,X)
0EC1  8D E3 B9           ...  STA &B9E3
0EC4  40                 @    RTI
0EC5  B9 52 56           .RV  LDA &5652,Y
0EC8  09 12              ..   ORA #&12
0ECA  C7                 .    ...
0ECB  86 8E              ..   STX &8E
0ECD  AA                 .    TAX
0ECE  6F                 o    ...
0ECF  84 89              ..   STY &89
0ED1  49 C4              I.   EOR #&C4
0ED3  B8                 .    CLV
0ED4  4B                 K    ...
0ED5  47                 G    ...
0ED6  CE 30 4A           .0J  DEC &4A30
0ED9  05 C4              ..   ORA &C4
0EDB  1C                 .    ...
0EDC  10 EC              ..   BPL &0ECA
0EDE  77                 w    ...
0EDF  8E 69 98           .i.  STX &9869
0EE2  C2                 .    ...
0EE3  60                 `    RTS
0EE4  A1 56              .V   LDA (&56,X)
0EE6  C9 6B              .k   CMP #&6B
0EE8  E6 81              ..   INC &81
0EEA  E7                 .    ...
0EEB  7B                 {    ...
0EEC  C1 54              .T   CMP (&54,X)
0EEE  E0 C7              ..   CPX #&C7
0EF0  21 12              !.   AND (&12,X)
0EF2  AD 1F C5           ...  LDA &C51F
0EF5  55 74              Ut   EOR &74,X
0EF7  06 DF              ..   ASL &DF
0EF9  18                 .    CLC
0EFA  18                 .    CLC
0EFB  0B                 .    ...
0EFC  3C                 <    ...
0EFD  F0 4C              .L   BEQ &0F4B
0EFF  D8                 .    CLD
0F00  00                 .    BRK
.
0F01  A9 0F              ..   LDA #&0F
0F03  A2 00              ..   LDX #&00
0F05  20 F4 FF            ..  JSR osbyte
0F08  A2 00              ..   LDX #&00
.
0F0A  BD 18 0F           ...  LDA &0F18,X
0F0D  F0 06              ..   BEQ &0F15
0F0F  20 EE FF            ..  JSR oswrch
0F12  E8                 .    INX
0F13  D0 F5              ..   BNE &0F0A
.
0F15  4C 09 0B           L..  JMP &0B09
0F18  0C                 .    ...
0F19  1F                 .    ...
0F1A  09 09              ..   ORA #&09
0F1C  81                 .    DB &81
0F1D  4C 6F 61           Loa  DS "Loading Red Arrows"
      64 69 6E           din
      67 20 52           g R
      65 64 20           ed 
      41 72 72           Arr
      6F 77 73           ows
0F2F  1F                 .    DB &1F
0F30  09                 .    DB &09
0F31  0B                 .    DB &0B
0F32  83                 .    DB &83
0F33  42 6C 6F           Blo  DS "Blocks remaining ??"
      63 6B 73           cks
      20 72 65            re
      6D 61 69           mai
      6E 69 6E           nin
      67 20 3F           g ?
      3F                 ?
0F46  00                 .    DB &00

0F47  50 72 6F           Pro  DS "Protection (c) Kevin Edwards 1985 This protection system may not be copied in part or whole without written permission from the author."
      74 65 63           tec
      74 69 6F           tio
      6E 20 28           n (
      63 29 20           c) 
      4B 65 76           Kev
0F59  69 6E              in   ADC #&6E
0F5B  20 45 64            Ed  JSR &6445
0F5E  77                 w    ...
0F5F  61 72              ar   ADC (&72,X)
0F61  64                 d    ...
0F62  73                 s    ...
0F63  20 31 39            19  JSR &3931
0F66  38                 8    SEC
0F67  35 20              5    AND &20,X
0F69  54                 T    ...
0F6A  68                 h    PLA
0F6B  69 73              is   ADC #&73
0F6D  20 70 72            pr  JSR &7270
0F70  6F                 o    ...
0F71  74                 t    ...
0F72  65 63              ec   ADC &63
0F74  74                 t    ...
0F75  69 6F              io   ADC #&6F
0F77  6E 20 73           n s  ROR &7320
0F7A  79 73 74           yst  ADC &7473,Y
0F7D  65 6D              em   ADC &6D
0F7F  20 6D 61            ma  JSR &616D
0F82  79 20 6E           y n  ADC &6E20,Y
0F85  6F                 o    ...
0F86  74                 t    ...
0F87  20 62 65            be  JSR &6562
0F8A  20 63 6F            co  JSR &6F63
0F8D  70 69              pi   BCS &0FF8
0F8F  65 64              ed   ADC &64
0F91  20 69 6E            in  JSR &6E69
0F94  20 70 61            pa  JSR &6170
0F97  72                 r    ...
0F98  74                 t    ...
0F99  20 6F 72            or  JSR &726F
0F9C  20 77 68            wh  JSR &6877
0F9F  6F                 o    ...
0FA0  6C 65 20           le   JMP (&2065)
0FA3  77                 w    ...
0FA4  69 74              it   ADC #&74
0FA6  68                 h    PLA
0FA7  6F                 o    ...
0FA8  75 74              ut   ADC &74,X
0FAA  20 77 72            wr  JSR &7277
0FAD  69 74              it   ADC #&74
0FAF  74                 t    ...
0FB0  65 6E              en   ADC &6E
0FB2  20 70 65            pe  JSR &6570
0FB5  72                 r    ...
0FB6  6D 69 73           mis  ADC &7369
0FB9  73                 s    ...
0FBA  69 6F              io   ADC #&6F
0FBC  6E 20 66           n f  ROR &6620
0FBF  72                 r    ...
0FC0  6F                 o    ...
0FC1  6D 20 74           m t  ADC &7420
0FC4  68                 h    PLA
0FC5  65 20              e    ADC &20
0FC7  61 75              au   ADC (&75,X)
0FC9  74                 t    ...
0FCA  68                 h    PLA
0FCB  6F                 o    ...
0FCC  72                 r    ...
0FCD  2E 00 00           ...  ROL &0000
0FD0  00                 .    BRK
0FD1  00                 .    BRK
0FD2  00                 .    BRK
0FD3  00                 .    BRK
0FD4  00                 .    BRK
0FD5  00                 .    BRK
0FD6  00                 .    BRK
0FD7  00                 .    BRK
0FD8  00                 .    BRK
0FD9  00                 .    BRK
0FDA  00                 .    BRK
0FDB  00                 .    BRK
0FDC  00                 .    BRK
0FDD  00                 .    BRK
0FDE  00                 .    BRK
0FDF  00                 .    BRK
0FE0  00                 .    BRK
0FE1  00                 .    BRK
0FE2  00                 .    BRK
0FE3  00                 .    BRK
0FE4  00                 .    BRK
0FE5  00                 .    BRK
0FE6  00                 .    BRK
0FE7  00                 .    BRK
0FE8  00                 .    BRK
0FE9  00                 .    BRK
0FEA  00                 .    BRK
0FEB  00                 .    BRK
0FEC  00                 .    BRK
0FED  00                 .    BRK
0FEE  00                 .    BRK
0FEF  00                 .    BRK
0FF0  00                 .    BRK
0FF1  00                 .    BRK
0FF2  00                 .    BRK
0FF3  00                 .    BRK
0FF4  00                 .    BRK
0FF5  00                 .    BRK
0FF6  00                 .    BRK
0FF7  00                 .    BRK
0FF8  00                 .    BRK
0FF9  00                 .    BRK
0FFA  00                 .    BRK
0FFB  00                 .    BRK
0FFC  00                 .    BRK
0FFD  00                 .    BRK
0FFE  00                 .    BRK
0FFF  00                 .    BRK
