changeset 988:cf18a377dd4b

Disassembly and comments first pass. Module compiles to original crc. Was coded in C and seems to be a lot of unnecessary code in it
author pwz
date Thu, 20 Feb 2003 22:09:21 +0000
parents 30f5cce9eb76
children 979b7f290efc
files 3rdparty/packages/sierra/objs/tocgen.asm
diffstat 1 files changed, 3200 insertions(+), 674 deletions(-) [+]
line wrap: on
line diff
--- a/3rdparty/packages/sierra/objs/tocgen.asm	Mon Feb 17 22:56:25 2003 +0000
+++ b/3rdparty/packages/sierra/objs/tocgen.asm	Thu Feb 20 22:09:21 2003 +0000
@@ -1,677 +1,3200 @@
+********************************************************************
+********************************************************************
+* TOCGEN - Kings Quest III Table of Contents module
+*
+* $Id$
+*
+* Ed.    Comments                                       Who YY/MM/DD
+* ------------------------------------------------------------------
+* 1      Disassembly of original distribution           PWZ 03/01/31
+*        added comments from the C-modules from
+*        dev system disk. This code recompiles to
+*        duplicate of the original module.
+*
+*
+*
+*        Module header for original tocgen
+*
+*
+*        Header for : tocgen
+*        Module size: $1678  #5752
+*        Module CRC : $FD7921 (Good)
+*        Hdr parity : $46
+*        Exec. off  : $001D  #29
+*        Data size  : $054F  #1359
+*        Edition    : $01  #1
+*        Ty/La At/Rv: $11 $81
+*        Prog mod, 6809 Obj, re-ent, R/O
+*
+********************************************************************
+***
+***
+*** See
+***  Section 1 - The C Compiler system  
+***  Section 2 - Characteristics of Compiled Programs
+***  of the Microware C compiler user's guide
+***  for interesting info 
+***  Review the cstart.a  
+***
+********************************************************************
+*
+*   Definitions from compiler user guide
+*   labels defined in the linkage editor
+*   used to establish the end addresses of the respective sections
+*   etext  - executable text  
+*   edata  - initialized data
+*   end    - uninitialized data
+*
+*   where is btext defined ???
+ 
 
-L0000    fcb   $87,$CD,$16,$78,$00,$0D,$11,$81   .M.x....
-L0008    fcb   $46,$00,$1D,$05,$4F,$74,$6F,$63   F...Otoc
-L0010    fcb   $67,$65,$EE,$01,$A6,$A0,$A7,$C0   gen.& '@
-L0018    fcb   $30,$1F,$26,$F8,$39,$34,$20,$34   0.&x94 4
-L0020    fcb   $40,$4F,$5F,$A7,$C0,$5A,$26,$FB   @O_'@Z&.
-L0028    fcb   $AE,$E4,$33,$84,$30,$89,$01,$CF   .d3.0..O
-L0030    fcb   $34,$10,$31,$8D,$14,$CB,$AE,$A1   4.1..K.!
-L0038    fcb   $27,$04,$8D,$D8,$EE,$62,$33,$C9   '..Xnb3I
-L0040    fcb   $00,$01,$AE,$A1,$27,$03,$8D,$CC   ...!'..L
-L0048    fcb   $4F,$11,$A3,$E4,$27,$04,$A7,$C0   O.#d'.'@
-L0050    fcb   $20,$F7,$EE,$62,$EC,$A1,$27,$07    wnbl!'.
-L0058    fcb   $30,$8D,$FF,$A4,$17,$01,$03,$EC   0..$...l
-L0060    fcb   $A1,$27,$05,$30,$C4,$17,$00,$FA   !'.0D..z
-L0068    fcb   $32,$64,$35,$10,$AF,$C9,$01,$A3   2d5./I.#
-L0070    fcb   $10,$AF,$C9,$01,$63,$CC,$00,$01   ./I.cL..
-L0078    fcb   $ED,$C9,$01,$9F,$31,$C9,$01,$65   mI..1I.e
-L0080    fcb   $30,$E4,$A6,$80,$E6,$C9,$01,$A0   0d&.fI. 
-L0088    fcb   $C1,$1D,$27,$54,$81,$0D,$27,$50   A.'T..'P
-L0090    fcb   $81,$20,$27,$04,$81,$2C,$26,$04   . '..,&.
-L0098    fcb   $A6,$80,$20,$F0,$81,$22,$27,$04   &. p."'.
-L00A0    fcb   $81,$27,$26,$1E,$AF,$A1,$6C,$C9   .'&./!lI
-L00A8    fcb   $01,$A0,$34,$02,$A6,$80,$81,$0D   . 4.&...
-L00B0    fcb   $27,$04,$A1,$E4,$26,$F6,$35,$04   '.!d&v5.
-L00B8    fcb   $6F,$1F,$81,$0D,$27,$22,$A6,$80   o...'"&.
-L00C0    fcb   $20,$C2,$30,$1F,$AF,$A1,$30,$01    B0./!0.
-L00C8    fcb   $6C,$C9,$01,$A0,$81,$0D,$27,$0C   lI. ..'.
-L00D0    fcb   $81,$20,$27,$08,$81,$2C,$27,$04   . '..,'.
-L00D8    fcb   $A6,$80,$20,$F0,$6F,$1F,$20,$A4   &. po. $
-L00E0    fcb   $30,$C9,$01,$63,$34,$10,$EC,$C9   0I.c4.lI
-L00E8    fcb   $01,$9F,$34,$06,$31,$C4,$8D,$0A   ..4.1D..
-L00F0    fcb   $17,$00,$89,$6F,$E2,$6F,$E2,$17   ...obob.
-L00F8    fcb   $13,$FB,$30,$A9,$01,$CF,$AF,$A9   ..0).O/)
-L0100    fcb   $01,$AD,$10,$EF,$A9,$01,$A1,$10   .-.o).!.
-L0108    fcb   $EF,$A9,$01,$AF,$CC,$FF,$82,$30   o)./L..0
-L0110    fcb   $EB,$AC,$A9,$01,$AF,$24,$0A,$AC   k,)./$.,
-L0118    fcb   $A9,$01,$AD,$25,$1E,$AF,$A9,$01   ).-%./).
-L0120    fcb   $AF,$39,$2A,$2A,$2A,$2A,$20,$53   /9**** S
-L0128    fcb   $54,$41,$43,$4B,$20,$4F,$56,$45   TACK OVE
-L0130    fcb   $52,$46,$4C,$4F,$57,$20,$2A,$2A   RFLOW **
-L0138    fcb   $2A,$2A,$0D,$30,$8C,$E4,$C6,$CF   **.0.dFO
-L0140    fcb   $34,$04,$86,$02,$10,$8E,$00,$64   4......d
-L0148    fcb   $10,$3F,$8C,$6F,$E2,$17,$13,$AB   .?.ob..+
-L0150    fcb   $EC,$A9,$01,$A1,$A3,$A9,$01,$AF   l).!#)./
-L0158    fcb   $39,$EC,$A9,$01,$AF,$A3,$A9,$01   9l)./#).
-L0160    fcb   $AD,$39,$34,$10,$30,$AB,$30,$8B   -94.0+0.
-L0168    fcb   $34,$10,$EC,$A1,$30,$CB,$EC,$84   4.l!0Kl.
-L0170    fcb   $E3,$62,$ED,$84,$10,$AC,$E4,$26   cbm..,d&
-L0178    fcb   $F1,$32,$64,$39,$34,$40,$CC,$FD   q2d94@L.
-L0180    fcb   $57,$17,$FF,$8B,$32,$E9,$FD,$A3   W...2i.#
-L0188    fcb   $EC,$E9,$02,$61,$10,$83,$00,$02   li.a....
-L0190    fcb   $27,$1A,$EC,$F9,$02,$63,$34,$06   '.ly.c4.
-L0198    fcb   $30,$8D,$03,$19,$34,$10,$17,$06   0...4...
-L01A0    fcb   $4E,$32,$64,$4F,$5F,$34,$06,$17   N2dO_4..
-L01A8    fcb   $13,$4B,$32,$62,$30,$8D,$03,$18   .K2b0...
-L01B0    fcb   $34,$10,$AE,$E9,$02,$65,$EC,$02   4..i.el.
-L01B8    fcb   $34,$06,$17,$05,$12,$32,$64,$ED   4....2dm
-L01C0    fcb   $E9,$02,$5B,$26,$1C,$AE,$E9,$02   i.[&..i.
-L01C8    fcb   $63,$EC,$02,$34,$06,$30,$8D,$02   cl.4.0..
-L01D0    fcb   $F9,$34,$10,$17,$06,$19,$32,$64   y4....2d
-L01D8    fcb   $4F,$5F,$34,$06,$17,$13,$16,$32   O_4....2
-L01E0    fcb   $62,$4F,$5F,$ED,$E9,$00,$82,$58   bO_mi..X
-L01E8    fcb   $49,$30,$E4,$30,$8B,$4F,$5F,$ED   I0d0.O_m
-L01F0    fcb   $84,$30,$E9,$00,$84,$AF,$E9,$02   .0i../i.
-L01F8    fcb   $55,$16,$01,$9A,$EC,$E9,$02,$57   U...li.W
-L0200    fcb   $C3,$00,$01,$ED,$E9,$02,$57,$E6   C..mi.Wf
-L0208    fcb   $F9,$02,$57,$C1,$0D,$27,$10,$E6   y.WA.'.f
-L0210    fcb   $F9,$02,$57,$C1,$64,$27,$08,$E6   y.WAd'.f
-L0218    fcb   $F9,$02,$57,$C1,$44,$26,$DD,$E6   y.WAD&]f
-L0220    fcb   $F9,$02,$57,$C1,$0D,$27,$20,$EC   y.WA.' l
-L0228    fcb   $E9,$02,$57,$C3,$00,$01,$ED,$E9   i.WC..mi
-L0230    fcb   $02,$57,$34,$06,$17,$0F,$8B,$32   .W4....2
-L0238    fcb   $62,$AE,$E9,$02,$55,$30,$01,$AF   b.i.U0./
-L0240    fcb   $E9,$02,$55,$E7,$1F,$20,$27,$30   i.Ug. '0
-L0248    fcb   $E9,$02,$04,$34,$10,$30,$8D,$02   i..4.0..
-L0250    fcb   $95,$34,$10,$17,$05,$99,$32,$64   .4....2d
-L0258    fcb   $4F,$5F,$34,$06,$17,$12,$96,$32   O_4....2
-L0260    fcb   $62,$20,$0B,$EC,$E9,$02,$57,$C3   b .li.WC
-L0268    fcb   $00,$01,$ED,$E9,$02,$57,$E6,$F9   ..mi.Wfy
-L0270    fcb   $02,$57,$C1,$0D,$27,$10,$E6,$F9   .WA.'.fy
-L0278    fcb   $02,$57,$C1,$73,$27,$08,$E6,$F9   .WAs'.fy
-L0280    fcb   $02,$57,$C1,$53,$26,$DD,$E6,$F9   .WAS&]fy
-L0288    fcb   $02,$57,$C1,$0D,$27,$40,$EC,$E9   .WA.'@li
-L0290    fcb   $02,$57,$C3,$00,$01,$ED,$E9,$02   .WC..mi.
-L0298    fcb   $57,$34,$06,$17,$0F,$24,$32,$62   W4...$2b
-L02A0    fcb   $E7,$E9,$02,$5A,$C1,$01,$27,$08   gi.ZA.'.
-L02A8    fcb   $E6,$E9,$02,$5A,$C1,$02,$26,$12   fi.ZA.&.
-L02B0    fcb   $E6,$E9,$02,$5A,$AE,$E9,$02,$55   fi.Z.i.U
-L02B8    fcb   $30,$01,$AF,$E9,$02,$55,$E7,$1F   0./i.Ug.
-L02C0    fcb   $20,$26,$30,$E9,$02,$04,$34,$10    &0i..4.
-L02C8    fcb   $30,$8D,$02,$32,$20,$0A,$30,$E9   0..2 .0i
-L02D0    fcb   $02,$04,$34,$10,$30,$8D,$02,$3E   ..4.0..>
-L02D8    fcb   $34,$10,$17,$05,$12,$32,$64,$4F   4....2dO
-L02E0    fcb   $5F,$34,$06,$17,$12,$0F,$32,$62   _4....2b
-L02E8    fcb   $4F,$5F,$E7,$E9,$02,$59,$20,$52   O_gi.Y R
-L02F0    fcb   $EC,$E9,$02,$57,$C3,$00,$01,$ED   li.WC..m
-L02F8    fcb   $E9,$02,$57,$E6,$F9,$02,$57,$C1   i.Wfy.WA
-L0300    fcb   $0D,$27,$10,$E6,$F9,$02,$57,$C1   .'.fy.WA
-L0308    fcb   $76,$27,$08,$E6,$F9,$02,$57,$C1   v'.fy.WA
-L0310    fcb   $56,$26,$DD,$E6,$F9,$02,$57,$C1   V&]fy.WA
-L0318    fcb   $0D,$27,$2F,$EC,$E9,$02,$57,$C3   .'/li.WC
-L0320    fcb   $00,$01,$ED,$E9,$02,$57,$34,$06   ..mi.W4.
-L0328    fcb   $17,$0E,$97,$32,$62,$AE,$E9,$02   ...2b.i.
-L0330    fcb   $55,$30,$01,$AF,$E9,$02,$55,$E7   U0./i.Ug
-L0338    fcb   $1F,$CC,$00,$01,$E7,$E9,$02,$59   .L..gi.Y
-L0340    fcb   $20,$00,$E6,$F9,$02,$57,$C1,$0D    .fy.WA.
-L0348    fcb   $26,$B1,$E6,$E9,$02,$59,$26,$1A   &1fi.Y&.
-L0350    fcb   $30,$E9,$02,$04,$34,$10,$30,$8D   0i..4.0.
-L0358    fcb   $01,$D4,$34,$10,$17,$04,$90,$32   .T4....2
-L0360    fcb   $64,$4F,$5F,$34,$06,$17,$11,$8D   dO_4....
-L0368    fcb   $32,$62,$AE,$E9,$02,$55,$E6,$1F   2b.i.Uf.
-L0370    fcb   $1D,$CA,$80,$E7,$1F,$EC,$E9,$00   .J.g.li.
-L0378    fcb   $82,$C3,$00,$01,$ED,$E9,$00,$82   .C..mi..
-L0380    fcb   $58,$49,$30,$E4,$30,$8B,$34,$10   XI0d0.4.
-L0388    fcb   $30,$E9,$00,$86,$34,$10,$EC,$E9   0i..4.li
-L0390    fcb   $02,$59,$A3,$E1,$ED,$F1,$EC,$E9   .Y#amqli
-L0398    fcb   $02,$5B,$34,$06,$CC,$00,$51,$34   .[4.L.Q4
-L03A0    fcb   $06,$30,$E9,$02,$08,$34,$10,$17   .0i..4..
-L03A8    fcb   $03,$B2,$32,$66,$ED,$E9,$02,$57   .22fmi.W
-L03B0    fcb   $10,$26,$FE,$53,$4F,$5F,$20,$1F   .&.SO_ .
-L03B8    fcb   $EC,$E9,$00,$80,$58,$49,$30,$E4   li..XI0d
-L03C0    fcb   $30,$8B,$EC,$84,$34,$16,$EC,$E9   0.l.4.li
-L03C8    fcb   $00,$86,$58,$49,$E3,$E1,$ED,$F1   ..XIcamq
-L03D0    fcb   $EC,$E9,$00,$80,$C3,$00,$01,$ED   li..C..m
-L03D8    fcb   $E9,$00,$80,$EC,$E9,$00,$80,$10   i..li...
-L03E0    fcb   $A3,$E9,$00,$82,$25,$D2,$EC,$E9   #i..%Rli
-L03E8    fcb   $02,$5B,$34,$06,$17,$09,$F5,$32   .[4...u2
-L03F0    fcb   $62,$30,$8D,$01,$53,$34,$10,$30   b0..S4.0
-L03F8    fcb   $A9,$00,$01,$34,$10,$17,$02,$CF   )..4...O
-L0400    fcb   $32,$64,$ED,$E9,$02,$5B,$26,$1A   2dmi.[&.
-L0408    fcb   $30,$A9,$00,$01,$34,$10,$30,$8D   0)..4.0.
-L0410    fcb   $01,$38,$34,$10,$17,$03,$D8,$32   .84...X2
-L0418    fcb   $64,$4F,$5F,$34,$06,$17,$10,$D5   dO_4...U
-L0420    fcb   $32,$62,$EC,$E9,$02,$5B,$34,$06   2bli.[4.
-L0428    fcb   $EC,$E9,$00,$84,$34,$06,$17,$08   li..4...
-L0430    fcb   $C2,$32,$64,$10,$83,$FF,$FF,$27   B2d....'
-L0438    fcb   $48,$EC,$E9,$02,$5B,$34,$06,$CC   Hli.[4.L
-L0440    fcb   $00,$01,$34,$06,$EC,$E9,$00,$86   ..4.li..
-L0448    fcb   $58,$49,$34,$06,$30,$66,$34,$10   XI4.0f4.
-L0450    fcb   $17,$03,$52,$32,$68,$ED,$7E,$27   ..R2hm~'
-L0458    fcb   $28,$EC,$E9,$02,$5B,$34,$06,$CC   (li.[4.L
-L0460    fcb   $00,$01,$34,$06,$30,$E9,$00,$88   ..4.0i..
-L0468    fcb   $34,$10,$EC,$E9,$02,$5B,$A3,$E1   4.li.[#a
-L0470    fcb   $34,$06,$30,$E9,$00,$8A,$34,$10   4.0i..4.
-L0478    fcb   $17,$03,$2A,$32,$68,$ED,$7E,$26   ..*2hm~&
-L0480    fcb   $1A,$30,$A9,$00,$01,$34,$10,$30   .0)..4.0
-L0488    fcb   $8D,$00,$DB,$34,$10,$17,$03,$5F   ..[4..._
-L0490    fcb   $32,$64,$4F,$5F,$34,$06,$17,$10   2dO_4...
-L0498    fcb   $5C,$32,$62,$EC,$E9,$02,$5B,$34   \2bli.[4
-L04A0    fcb   $06,$17,$09,$40,$32,$62,$4F,$5F   ...@2bO_
-L04A8    fcb   $34,$06,$17,$10,$48,$32,$62,$32   4...H2b2
-L04B0    fcb   $E9,$02,$5D,$35,$C0,$55,$73,$61   i.]5@Usa
-L04B8    fcb   $67,$65,$3A,$20,$25,$73,$20,$70   ge: %s p
-L04C0    fcb   $61,$74,$68,$6C,$69,$73,$74,$00   athlist.
-L04C8    fcb   $72,$00,$43,$61,$6E,$27,$74,$20   r.Can't 
-L04D0    fcb   $6F,$70,$65,$6E,$20,$25,$73,$20   open %s 
-L04D8    fcb   $66,$6F,$72,$20,$72,$65,$61,$64   for read
-L04E0    fcb   $69,$6E,$67,$2E,$0D,$00,$44,$69   ing...Di
-L04E8    fcb   $73,$6B,$20,$6E,$75,$6D,$62,$65   sk numbe
-L04F0    fcb   $72,$20,$6D,$69,$73,$73,$69,$6E   r missin
-L04F8    fcb   $67,$3A,$0D,$25,$73,$00,$49,$6E   g:.%s.In
-L0500    fcb   $76,$61,$6C,$69,$64,$20,$73,$69   valid si
-L0508    fcb   $64,$65,$20,$6E,$75,$6D,$62,$65   de numbe
-L0510    fcb   $72,$3A,$0D,$25,$73,$00,$53,$69   r:.%s.Si
-L0518    fcb   $64,$65,$20,$6E,$75,$6D,$62,$65   de numbe
-L0520    fcb   $72,$20,$6D,$69,$73,$73,$69,$6E   r missin
-L0528    fcb   $67,$3A,$0D,$25,$73,$00,$56,$6F   g:.%s.Vo
-L0530    fcb   $6C,$75,$6D,$65,$20,$6E,$75,$6D   lume num
-L0538    fcb   $62,$65,$72,$20,$6D,$69,$73,$73   ber miss
-L0540    fcb   $69,$6E,$67,$3A,$0D,$25,$73,$00   ing:.%s.
-L0548    fcb   $77,$00,$43,$61,$6E,$27,$74,$20   w.Can't 
-L0550    fcb   $6F,$70,$65,$6E,$20,$25,$73,$20   open %s 
-L0558    fcb   $66,$6F,$72,$20,$77,$72,$69,$74   for writ
-L0560    fcb   $69,$6E,$67,$2E,$0D,$00,$45,$72   ing...Er
-L0568    fcb   $72,$6F,$72,$20,$77,$72,$69,$74   ror writ
-L0570    fcb   $69,$6E,$67,$20,$25,$73,$2E,$0D   ing %s..
-L0578    fcb   $00,$34,$40,$33,$A9,$00,$12,$EC   .4@3)..l
-L0580    fcb   $46,$4F,$C4,$03,$10,$27,$00,$68   FOD..'.h
-L0588    fcb   $33,$4D,$34,$40,$30,$A9,$00,$E2   3M4@0).b
-L0590    fcb   $AC,$E1,$22,$EB,$CC,$00,$C8,$ED   ,a"kL.Hm
-L0598    fcb   $A9,$01,$B1,$16,$00,$56,$35,$C0   ).1..V5@
-L05A0    fcb   $34,$40,$EE,$68,$26,$04,$8D,$D1   4@nh&..Q
-L05A8    fcb   $1F,$03,$EF,$7E,$27,$46,$EC,$64   ..o~'Fld
-L05B0    fcb   $ED,$48,$AE,$66,$E6,$01,$C1,$2B   mH.ff.A+
-L05B8    fcb   $27,$08,$AE,$66,$E6,$02,$C1,$2B   '..ff.A+
-L05C0    fcb   $26,$06,$EC,$46,$CA,$03,$20,$1E   &.lFJ. .
-L05C8    fcb   $EC,$46,$34,$06,$E6,$F8,$08,$C1   lF4.fx.A
-L05D0    fcb   $72,$27,$07,$E6,$F8,$08,$C1,$64   r'.fx.Ad
-L05D8    fcb   $26,$05,$CC,$00,$01,$20,$03,$CC   &.L.. .L
-L05E0    fcb   $00,$02,$AA,$E0,$EA,$E0,$ED,$46   ..*`j`mF
-L05E8    fcb   $EC,$42,$E3,$4B,$ED,$44,$ED,$C4   lBcKmDmD
-L05F0    fcb   $1F,$30,$35,$C0,$4F,$5F,$35,$C0   .05@O_5@
-L05F8    fcb   $34,$40,$EE,$64,$32,$7C,$4F,$5F   4@nd2|O_
-L0600    fcb   $ED,$E4,$AE,$6A,$E6,$01,$1D,$1F   md.jf...
-L0608    fcb   $01,$20,$1E,$AE,$6A,$E6,$02,$C1   . ..jf.A
-L0610    fcb   $2B,$26,$05,$CC,$00,$07,$20,$08   +&.L.. .
-L0618    fcb   $CC,$00,$04,$20,$03,$CC,$00,$03   L.. .L..
-L0620    fcb   $ED,$E4,$20,$15,$30,$64,$16,$00   md .0d..
-L0628    fcb   $68,$AF,$7E,$27,$0C,$8C,$00,$78   h/~'...x
-L0630    fcb   $27,$D9,$8C,$00,$2B,$27,$E6,$20   'Y..+'f 
-L0638    fcb   $EB,$E6,$F8,$0A,$1D,$1F,$01,$16   kfx.....
-L0640    fcb   $00,$5C,$EC,$E4,$CA,$01,$20,$3C   .\ldJ. <
-L0648    fcb   $EC,$E4,$CA,$02,$34,$06,$34,$40   ldJ.4.4@
-L0650    fcb   $17,$0C,$D3,$32,$64,$ED,$62,$10   ..S2dmb.
-L0658    fcb   $83,$FF,$FF,$27,$16,$CC,$00,$02   ...'.L..
-L0660    fcb   $34,$06,$4F,$5F,$34,$06,$34,$06   4.O_4.4.
-L0668    fcb   $EC,$68,$34,$06,$17,$0D,$8D,$32   lh4....2
-L0670    fcb   $68,$20,$45,$EC,$E4,$CA,$02,$34   h EldJ.4
-L0678    fcb   $06,$34,$40,$17,$0C,$C9,$20,$0B   .4@..I .
-L0680    fcb   $EC,$E4,$CA,$81,$34,$06,$34,$40   ldJ.4.4@
-L0688    fcb   $17,$0C,$9B,$32,$64,$ED,$62,$20   ...2dmb 
-L0690    fcb   $27,$32,$1C,$CC,$00,$CB,$ED,$A9   '2.L.Km)
-L0698    fcb   $01,$B1,$4F,$5F,$20,$1C,$8C,$00   .1O_ ...
-L06A0    fcb   $72,$10,$27,$FF,$9D,$8C,$00,$61   r.'....a
-L06A8    fcb   $10,$27,$FF,$9C,$8C,$00,$77,$27   .'....w'
-L06B0    fcb   $C2,$8C,$00,$64,$27,$CA,$20,$DB   B..d'J [
-L06B8    fcb   $EC,$62,$32,$64,$35,$C0,$34,$40   lb2d5@4@
-L06C0    fcb   $4F,$5F,$34,$06,$EC,$68,$34,$06   O_4.lh4.
-L06C8    fcb   $EC,$68,$34,$06,$16,$00,$4B,$34   lh4...K4
-L06D0    fcb   $40,$EC,$66,$34,$06,$EC,$66,$34   @lf4.lf4
-L06D8    fcb   $06,$17,$FF,$1C,$32,$64,$1F,$03   ....2d..
-L06E0    fcb   $11,$83,$FF,$FF,$26,$04,$4F,$5F   ....&.O_
-L06E8    fcb   $20,$35,$4F,$5F,$20,$24,$34,$40    5O_ $4@
-L06F0    fcb   $EC,$68,$34,$06,$17,$06,$ED,$32   lh4...m2
-L06F8    fcb   $62,$EC,$66,$34,$06,$EC,$66,$34   blf4.lf4
-L0700    fcb   $06,$17,$FE,$F4,$32,$64,$1F,$03   ...t2d..
-L0708    fcb   $EF,$7E,$2C,$04,$4F,$5F,$20,$0F   o~,.O_ .
-L0710    fcb   $EC,$68,$34,$06,$EC,$68,$34,$06   lh4.lh4.
-L0718    fcb   $34,$40,$17,$FE,$83,$32,$66,$35   4@...2f5
-L0720    fcb   $C0,$34,$46,$EE,$66,$20,$04,$EC   @4Fnf .l
-L0728    fcb   $E4,$E7,$C0,$30,$A9,$00,$12,$34   dg@0)..4
-L0730    fcb   $10,$17,$07,$DA,$32,$62,$ED,$E4   ...Z2bmd
-L0738    fcb   $10,$83,$00,$0D,$27,$08,$EC,$E4   ....'.ld
-L0740    fcb   $10,$83,$FF,$FF,$26,$E1,$EC,$E4   ....&ald
-L0748    fcb   $10,$83,$FF,$FF,$26,$04,$4F,$5F   ....&.O_
-L0750    fcb   $20,$06,$4F,$5F,$E7,$C4,$EC,$66    .O_gDlf
-L0758    fcb   $32,$62,$35,$C0,$34,$40,$EE,$66   2b5@4@nf
-L0760    fcb   $32,$7C,$EC,$68,$ED,$E4,$20,$0E   2|lhmd .
-L0768    fcb   $EC,$62,$AE,$E4,$30,$01,$AF,$E4   lb.d0./d
-L0770    fcb   $E7,$1F,$C1,$0D,$27,$19,$1F,$30   g.A.'..0
-L0778    fcb   $33,$5F,$ED,$7E,$2F,$11,$EC,$6C   3_m~/.ll
-L0780    fcb   $34,$06,$17,$07,$89,$32,$62,$ED   4....2bm
-L0788    fcb   $62,$10,$83,$FF,$FF,$26,$D9,$4F   b....&YO
-L0790    fcb   $5F,$E7,$F4,$EC,$62,$10,$83,$FF   _gtlb...
-L0798    fcb   $FF,$26,$04,$4F,$5F,$20,$02,$EC   .&.O_ .l
-L07A0    fcb   $68,$32,$64,$35,$C0,$34,$40,$EE   h2d5@4@n
-L07A8    fcb   $64,$32,$7C,$4F,$5F,$20,$31,$4F   d2|O_ 1O
-L07B0    fcb   $5F,$ED,$E4,$20,$17,$EC,$6E,$34   _md .ln4
-L07B8    fcb   $06,$E6,$C0,$1D,$34,$06,$17,$05   .f@.4...
-L07C0    fcb   $32,$32,$64,$AE,$6E,$EC,$06,$4F   22d.nl.O
-L07C8    fcb   $C4,$20,$26,$1D,$EC,$E4,$C3,$00   D &.ldC.
-L07D0    fcb   $01,$ED,$E4,$83,$00,$01,$10,$A3   .md....#
-L07D8    fcb   $6A,$2D,$DA,$EC,$62,$C3,$00,$01   j-ZlbC..
-L07E0    fcb   $ED,$62,$EC,$62,$10,$A3,$6C,$2D   mblb.#l-
-L07E8    fcb   $C6,$EC,$62,$32,$64,$35,$C0,$34   Flb2d5@4
-L07F0    fcb   $40,$30,$A9,$00,$1F,$AF,$A9,$01   @0)../).
-L07F8    fcb   $B3,$30,$66,$34,$10,$EC,$66,$20   30f4.lf 
-L0800    fcb   $0E,$34,$40,$EC,$64,$ED,$A9,$01   .4@ldm).
-L0808    fcb   $B3,$30,$68,$34,$10,$EC,$68,$34   30h4.lh4
-L0810    fcb   $06,$30,$8D,$04,$B2,$34,$10,$8D   .0..24..
-L0818    fcb   $28,$32,$66,$35,$C0,$34,$40,$EC   (2f5@4@l
-L0820    fcb   $64,$ED,$A9,$01,$B3,$30,$68,$34   dm).30h4
-L0828    fcb   $10,$EC,$68,$34,$06,$30,$8D,$04   .lh4.0..
-L0830    fcb   $A9,$34,$10,$8D,$0C,$32,$66,$4F   )4...2fO
-L0838    fcb   $5F,$E7,$B9,$01,$B3,$EC,$64,$35   _g9.3ld5
-L0840    fcb   $C0,$34,$40,$EE,$66,$32,$75,$20   @4@nf2u 
-L0848    fcb   $10,$E6,$68,$10,$27,$02,$3B,$E6   .fh.'.;f
-L0850    fcb   $68,$1D,$34,$06,$AD,$F8,$11,$32   h.4.-x.2
-L0858    fcb   $62,$E6,$C0,$E7,$68,$C1,$25,$26   bf@ghA%&
-L0860    fcb   $E8,$E6,$C0,$E7,$68,$4F,$5F,$ED   hf@ghO_m
-L0868    fcb   $62,$ED,$66,$E6,$68,$C1,$2D,$26   bmffhA-&
-L0870    fcb   $0D,$CC,$00,$01,$ED,$A9,$01,$C9   .L..m).I
-L0878    fcb   $E6,$C0,$E7,$68,$20,$06,$4F,$5F   f@gh .O_
-L0880    fcb   $ED,$A9,$01,$C9,$E6,$68,$C1,$30   m).IfhA0
-L0888    fcb   $26,$05,$CC,$00,$30,$20,$03,$CC   &.L.0 .L
-L0890    fcb   $00,$20,$ED,$A9,$01,$CB,$20,$1A   . m).K .
-L0898    fcb   $EC,$66,$34,$06,$CC,$00,$0A,$17   lf4.L...
-L08A0    fcb   $09,$93,$34,$06,$E6,$6A,$1D,$C3   ..4.fj.C
-L08A8    fcb   $FF,$D0,$E3,$E1,$ED,$66,$E6,$C0   .Pcamff@
-L08B0    fcb   $E7,$68,$E6,$68,$1D,$30,$A9,$00   ghfh.0).
-L08B8    fcb   $E3,$30,$8B,$E6,$84,$4F,$C4,$08   c0.f.OD.
-L08C0    fcb   $26,$D6,$E6,$68,$C1,$2E,$26,$33   &VfhA.&3
-L08C8    fcb   $CC,$00,$01,$ED,$64,$20,$16,$EC   L..md .l
-L08D0    fcb   $62,$34,$06,$CC,$00,$0A,$17,$09   b4.L....
-L08D8    fcb   $5C,$34,$06,$E6,$6A,$1D,$C3,$FF   \4.fj.C.
-L08E0    fcb   $D0,$E3,$E1,$ED,$62,$E6,$C0,$E7   Pcambf@g
-L08E8    fcb   $68,$E6,$68,$1D,$30,$A9,$00,$E3   hfh.0).c
-L08F0    fcb   $30,$8B,$E6,$84,$4F,$C4,$08,$26   0.f.OD.&
-L08F8    fcb   $D6,$20,$04,$4F,$5F,$ED,$64,$E6   V .O_mdf
-L0900    fcb   $68,$1D,$1F,$01,$16,$01,$26,$EC   h.....&l
-L0908    fcb   $66,$34,$06,$AE,$E8,$15,$30,$02   f4..h.0.
-L0910    fcb   $AF,$E8,$15,$EC,$1E,$34,$06,$17   /h.l.4..
-L0918    fcb   $01,$74,$20,$13,$EC,$66,$34,$06   .t .lf4.
-L0920    fcb   $AE,$E8,$15,$30,$02,$AF,$E8,$15   .h.0./h.
-L0928    fcb   $EC,$1E,$34,$06,$17,$02,$1C,$ED   l.4....m
-L0930    fcb   $E4,$16,$00,$DF,$EC,$66,$34,$06   d.._lf4.
-L0938    fcb   $E6,$6A,$1D,$30,$A9,$00,$E3,$30   fj.0).c0
-L0940    fcb   $8B,$E6,$84,$4F,$C4,$02,$34,$06   .f.OD.4.
-L0948    fcb   $AE,$E8,$17,$30,$02,$AF,$E8,$17   .h.0./h.
-L0950    fcb   $EC,$1E,$34,$06,$17,$02,$3C,$16   l.4...<.
-L0958    fcb   $00,$B5,$EC,$66,$34,$06,$AE,$E8   .5lf4..h
-L0960    fcb   $15,$30,$02,$AF,$E8,$15,$EC,$1E   .0./h.l.
-L0968    fcb   $34,$06,$30,$A9,$01,$B5,$34,$10   4.0).54.
-L0970    fcb   $17,$01,$5F,$16,$00,$99,$EC,$64   .._...ld
-L0978    fcb   $26,$05,$CC,$00,$06,$ED,$62,$EC   &.L..mbl
-L0980    fcb   $66,$34,$06,$30,$E8,$15,$34,$10   f4.0h.4.
-L0988    fcb   $EC,$66,$34,$06,$E6,$6E,$1D,$34   lf4.fn.4
-L0990    fcb   $06,$17,$07,$9C,$32,$66,$16,$00   ....2f..
-L0998    fcb   $78,$AE,$E8,$13,$30,$02,$AF,$E8   x.h.0./h
-L09A0    fcb   $13,$EC,$1E,$16,$00,$7D,$AE,$E8   .l...}.h
-L09A8    fcb   $13,$30,$02,$AF,$E8,$13,$EC,$1E   .0./h.l.
-L09B0    fcb   $ED,$69,$EC,$64,$27,$38,$EC,$69   mild'8li
-L09B8    fcb   $ED,$64,$20,$0C,$E6,$F8,$09,$27   md .fx.'
-L09C0    fcb   $13,$EC,$69,$C3,$00,$01,$ED,$69   .liC..mi
-L09C8    fcb   $EC,$62,$C3,$FF,$FF,$ED,$62,$83   lbC..mb.
-L09D0    fcb   $FF,$FF,$26,$E8,$EC,$66,$34,$06   ..&hlf4.
-L09D8    fcb   $EC,$6B,$A3,$66,$34,$06,$EC,$68   lk#f4.lh
-L09E0    fcb   $34,$06,$EC,$E8,$15,$34,$06,$17   4.lh.4..
-L09E8    fcb   $02,$14,$32,$68,$20,$2F,$EC,$66   ..2h /lf
-L09F0    fcb   $34,$06,$EC,$6B,$20,$1B,$E6,$C0   4.lk .f@
-L09F8    fcb   $E7,$68,$20,$02,$32,$15,$EC,$66   gh .2.lf
-L0A00    fcb   $34,$06,$30,$E8,$15,$34,$10,$E6   4.0h.4.f
-L0A08    fcb   $6C,$1D,$34,$06,$17,$06,$E3,$32   l.4...c2
-L0A10    fcb   $64,$34,$06,$EC,$E8,$13,$34,$06   d4.lh.4.
-L0A18    fcb   $17,$02,$45,$32,$66,$16,$FE,$39   ..E2f..9
-L0A20    fcb   $E6,$68,$1D,$34,$06,$AD,$F8,$11   fh.4.-x.
-L0A28    fcb   $32,$62,$16,$FE,$2C,$8C,$00,$64   2b..,..d
-L0A30    fcb   $10,$27,$FE,$D3,$8C,$00,$6F,$10   .'.S..o.
-L0A38    fcb   $27,$FE,$E1,$8C,$00,$78,$10,$27   '.a..x.'
-L0A40    fcb   $FE,$F2,$8C,$00,$58,$10,$27,$FE   .r..X.'.
-L0A48    fcb   $EB,$8C,$00,$75,$10,$27,$FF,$0A   k..u.'..
-L0A50    fcb   $8C,$00,$66,$10,$27,$FF,$1F,$8C   ..f.'...
-L0A58    fcb   $00,$65,$10,$27,$FF,$18,$8C,$00   .e.'....
-L0A60    fcb   $67,$10,$27,$FF,$11,$8C,$00,$45   g.'....E
-L0A68    fcb   $10,$27,$FF,$0A,$8C,$00,$47,$10   .'....G.
-L0A70    fcb   $27,$FF,$03,$8C,$00,$63,$10,$27   '....c.'
-L0A78    fcb   $FF,$1F,$8C,$00,$73,$10,$27,$FF   ....s.'.
-L0A80    fcb   $25,$8C,$00,$6C,$10,$27,$FF,$6E   %..l.'.n
-L0A88    fcb   $20,$96,$32,$6B,$35,$C0,$34,$46    .2k5@4F
-L0A90    fcb   $30,$A9,$01,$B5,$AF,$E4,$EC,$66   0).5/dlf
-L0A98    fcb   $2C,$29,$EC,$66,$40,$50,$82,$00   ,)lf@P..
-L0AA0    fcb   $ED,$66,$2C,$14,$30,$8D,$02,$44   mf,.0..D
-L0AA8    fcb   $34,$10,$30,$A9,$01,$B5,$34,$10   4.0).54.
-L0AB0    fcb   $17,$06,$99,$32,$64,$16,$00,$D7   ...2d..W
-L0AB8    fcb   $CC,$00,$2D,$AE,$E4,$30,$01,$AF   L.-.d0./
-L0AC0    fcb   $E4,$E7,$1F,$EC,$66,$34,$06,$EC   dg.lf4.l
-L0AC8    fcb   $62,$34,$06,$8D,$05,$32,$64,$16   b4...2d.
-L0AD0    fcb   $00,$B7,$34,$76,$EE,$6A,$4F,$5F   .74vnjO_
-L0AD8    fcb   $ED,$62,$4F,$5F,$ED,$E4,$20,$0F   mbO_md .
-L0AE0    fcb   $EC,$E4,$C3,$00,$01,$ED,$E4,$EC   ldC..mdl
-L0AE8    fcb   $6C,$A3,$A9,$00,$05,$ED,$6C,$EC   l#)..mll
-L0AF0    fcb   $6C,$2D,$ED,$30,$A9,$00,$05,$AF   l-m0)../
-L0AF8    fcb   $64,$20,$36,$EC,$E4,$C3,$00,$01   d 6ldC..
-L0B00    fcb   $ED,$E4,$EC,$6C,$A3,$F8,$04,$ED   mdll#x.m
-L0B08    fcb   $6C,$2C,$F0,$EC,$6C,$E3,$F8,$04   l,pllcx.
-L0B10    fcb   $ED,$6C,$EC,$E4,$27,$05,$CC,$00   mlld'.L.
-L0B18    fcb   $01,$ED,$62,$EC,$62,$27,$07,$EC   .mblb'.l
-L0B20    fcb   $E4,$C3,$00,$30,$E7,$C0,$4F,$5F   dC.0g@O_
-L0B28    fcb   $ED,$E4,$EC,$64,$C3,$00,$02,$ED   mdldC..m
-L0B30    fcb   $64,$EC,$64,$10,$A3,$A9,$00,$0D   dld.#)..
-L0B38    fcb   $26,$C8,$EC,$6C,$C3,$00,$30,$E7   &HllC.0g
-L0B40    fcb   $C0,$4F,$5F,$E7,$C4,$EC,$6A,$32   @O_gDlj2
-L0B48    fcb   $66,$35,$C0,$34,$46,$30,$A9,$01   f5@4F0).
-L0B50    fcb   $B5,$AF,$E4,$33,$A9,$01,$BF,$EC   5/d3).?l
-L0B58    fcb   $66,$4F,$C4,$07,$C3,$00,$30,$E7   fOD.C.0g
-L0B60    fcb   $C0,$EC,$66,$44,$56,$44,$56,$44   @lfDVDVD
-L0B68    fcb   $56,$ED,$66,$26,$EA,$20,$0A,$E6   Vmf&j .f
-L0B70    fcb   $C4,$AE,$E4,$30,$01,$AF,$E4,$E7   D.d0./dg
-L0B78    fcb   $1F,$33,$5F,$34,$40,$30,$A9,$01   .3_4@0).
-L0B80    fcb   $BF,$AC,$E1,$23,$EA,$4F,$5F,$E7   ?,a#jO_g
-L0B88    fcb   $F4,$30,$A9,$01,$B5,$1F,$10,$32   t0).5..2
-L0B90    fcb   $62,$35,$C0,$34,$56,$30,$A9,$01   b5@4V0).
-L0B98    fcb   $B5,$AF,$62,$33,$A9,$01,$BF,$EC   5/b3).?l
-L0BA0    fcb   $68,$4F,$C4,$0F,$ED,$E4,$34,$06   hOD.md4.
-L0BA8    fcb   $EC,$62,$10,$83,$00,$09,$2F,$11   lb..../.
-L0BB0    fcb   $EC,$6C,$27,$05,$CC,$00,$41,$20   ll'.L.A 
-L0BB8    fcb   $03,$CC,$00,$61,$C3,$FF,$F6,$20   .L.aC.v 
-L0BC0    fcb   $03,$CC,$00,$30,$E3,$E1,$E7,$C0   .L.0cag@
-L0BC8    fcb   $EC,$68,$44,$56,$44,$56,$44,$56   lhDVDVDV
-L0BD0    fcb   $44,$56,$84,$0F,$ED,$68,$26,$C7   DV..mh&G
-L0BD8    fcb   $20,$0A,$E6,$C4,$AE,$62,$30,$01    .fD.b0.
-L0BE0    fcb   $AF,$62,$E7,$1F,$33,$5F,$34,$40   /bg.3_4@
-L0BE8    fcb   $30,$A9,$01,$BF,$AC,$E1,$23,$EA   0).?,a#j
-L0BF0    fcb   $4F,$5F,$E7,$F8,$02,$30,$A9,$01   O_gx.0).
-L0BF8    fcb   $B5,$1F,$10,$16,$00,$D8,$34,$40   5....X4@
-L0C00    fcb   $EE,$66,$EC,$6A,$A3,$68,$ED,$6A   nflj#hmj
-L0C08    fcb   $EC,$A9,$01,$C9,$26,$25,$20,$0B   l).I&% .
-L0C10    fcb   $EC,$A9,$01,$CB,$34,$06,$AD,$F8   l).K4.-x
-L0C18    fcb   $06,$32,$62,$EC,$6A,$C3,$FF,$FF   .2bljC..
-L0C20    fcb   $ED,$6A,$83,$FF,$FF,$2E,$E9,$20   mj....i 
-L0C28    fcb   $0A,$E6,$C0,$1D,$34,$06,$AD,$F8   .f@.4.-x
-L0C30    fcb   $06,$32,$62,$EC,$68,$C3,$FF,$FF   .2blhC..
-L0C38    fcb   $ED,$68,$83,$FF,$FF,$26,$EA,$EC   mh...&jl
-L0C40    fcb   $A9,$01,$C9,$27,$19,$20,$0B,$EC   ).I'. .l
-L0C48    fcb   $A9,$01,$CB,$34,$06,$AD,$F8,$06   ).K4.-x.
-L0C50    fcb   $32,$62,$EC,$6A,$C3,$FF,$FF,$ED   2bljC..m
-L0C58    fcb   $6A,$83,$FF,$FF,$2E,$E9,$35,$C0   j....i5@
-L0C60    fcb   $34,$40,$EE,$66,$EC,$68,$34,$06   4@nflh4.
-L0C68    fcb   $34,$40,$17,$04,$CE,$32,$62,$40   4@..N2b@
-L0C70    fcb   $50,$82,$00,$E3,$E1,$ED,$68,$EC   P..camhl
-L0C78    fcb   $A9,$01,$C9,$26,$25,$20,$0B,$EC   ).I&% .l
-L0C80    fcb   $A9,$01,$CB,$34,$06,$AD,$F8,$06   ).K4.-x.
-L0C88    fcb   $32,$62,$EC,$68,$C3,$FF,$FF,$ED   2blhC..m
-L0C90    fcb   $68,$83,$FF,$FF,$2E,$E9,$20,$0A   h....i .
-L0C98    fcb   $E6,$C0,$1D,$34,$06,$AD,$F8,$06   f@.4.-x.
-L0CA0    fcb   $32,$62,$E6,$C4,$26,$F2,$EC,$A9   2bfD&rl)
-L0CA8    fcb   $01,$C9,$27,$19,$20,$0B,$EC,$A9   .I'. .l)
-L0CB0    fcb   $01,$CB,$34,$06,$AD,$F8,$06,$32   .K4.-x.2
-L0CB8    fcb   $62,$EC,$68,$C3,$FF,$FF,$ED,$68   blhC..mh
-L0CC0    fcb   $83,$FF,$FF,$2E,$E9,$35,$C0,$34   ....i5@4
-L0CC8    fcb   $40,$EC,$A9,$01,$B3,$34,$06,$EC   @l).34.l
-L0CD0    fcb   $66,$34,$06,$17,$00,$1D,$32,$64   f4....2d
-L0CD8    fcb   $35,$C0,$34,$40,$EC,$64,$AE,$A9   5@4@ld.)
-L0CE0    fcb   $01,$B3,$30,$01,$AF,$A9,$01,$B3   .30./).3
-L0CE8    fcb   $E7,$1F,$35,$C0,$2D,$33,$32,$37   g.5@-327
-L0CF0    fcb   $36,$38,$00,$34,$40,$EE,$66,$EC   68.4@nfl
-L0CF8    fcb   $46,$84,$80,$C4,$22,$10,$83,$80   F..D"...
-L0D00    fcb   $02,$27,$14,$EC,$46,$4F,$C4,$22   .'.lFOD"
-L0D08    fcb   $10,$83,$00,$02,$10,$26,$01,$1F   .....&..
-L0D10    fcb   $34,$40,$17,$03,$4D,$32,$62,$EC   4@..M2bl
-L0D18    fcb   $46,$4F,$C4,$04,$27,$35,$CC,$00   FOD.'5L.
-L0D20    fcb   $01,$34,$06,$30,$67,$34,$10,$EC   .4.0g4.l
-L0D28    fcb   $48,$34,$06,$EC,$46,$4F,$C4,$40   H4.lFOD@
-L0D30    fcb   $27,$06,$30,$8D,$06,$B6,$20,$04   '.0..6 .
-L0D38    fcb   $30,$8D,$06,$97,$1F,$10,$1F,$01   0.......
-L0D40    fcb   $AD,$84,$32,$66,$10,$83,$FF,$FF   -.2f....
-L0D48    fcb   $26,$4A,$EC,$46,$CA,$20,$ED,$46   &JlFJ mF
-L0D50    fcb   $16,$00,$DC,$EC,$46,$84,$01,$5F   ..\lF.._
-L0D58    fcb   $ED,$7E,$26,$07,$34,$40,$17,$00   m~&.4@..
-L0D60    fcb   $EB,$32,$62,$EC,$C4,$C3,$00,$01   k2blDC..
-L0D68    fcb   $ED,$C4,$83,$00,$01,$1F,$01,$EC   mD.....l
-L0D70    fcb   $64,$E7,$84,$EC,$C4,$10,$A3,$44   dg.lD.#D
-L0D78    fcb   $24,$0F,$EC,$46,$4F,$C4,$40,$27   $.lFOD@'
-L0D80    fcb   $13,$EC,$64,$10,$83,$00,$0D,$26   .ld....&
-L0D88    fcb   $0B,$34,$40,$17,$00,$BE,$ED,$E1   .4@..>ma
-L0D90    fcb   $10,$26,$00,$9B,$EC,$64,$35,$C0   .&..ld5@
-L0D98    fcb   $34,$40,$EE,$64,$EC,$66,$34,$06   4@ndlf4.
-L0DA0    fcb   $34,$40,$CC,$00,$08,$17,$04,$EC   4@L....l
-L0DA8    fcb   $34,$06,$17,$FF,$46,$32,$64,$EC   4...F2dl
-L0DB0    fcb   $66,$34,$06,$34,$40,$17,$FF,$3B   f4.4@..;
-L0DB8    fcb   $16,$01,$4B,$34,$46,$33,$A9,$00   ..K4F3).
-L0DC0    fcb   $12,$4F,$5F,$ED,$E4,$20,$0A,$1F   .O_md ..
-L0DC8    fcb   $30,$33,$4D,$34,$06,$8D,$15,$32   03M4...2
-L0DD0    fcb   $62,$EC,$E4,$C3,$00,$01,$ED,$E4   bldC..md
-L0DD8    fcb   $83,$00,$01,$10,$83,$00,$10,$2D   .......-
-L0DE0    fcb   $E6,$16,$00,$64,$34,$40,$EE,$64   f..d4@nd
-L0DE8    fcb   $32,$7E,$11,$83,$00,$00,$27,$04   2~....'.
-L0DF0    fcb   $EC,$46,$26,$06,$CC,$FF,$FF,$16   lF&.L...
-L0DF8    fcb   $00,$4E,$EC,$46,$4F,$C4,$02,$27   .NlFOD.'
-L0E00    fcb   $08,$34,$40,$8D,$19,$32,$62,$20   .4@..2b 
-L0E08    fcb   $02,$4F,$5F,$ED,$E4,$EC,$48,$34   .O_mdlH4
-L0E10    fcb   $06,$17,$05,$21,$32,$62,$4F,$5F   ...!2bO_
-L0E18    fcb   $ED,$46,$EC,$E4,$20,$2A,$34,$40   mFld *4@
-L0E20    fcb   $EE,$64,$27,$0B,$EC,$46,$4F,$C4   nd'.lFOD
-L0E28    fcb   $22,$10,$83,$00,$02,$27,$05,$CC   "....'.L
-L0E30    fcb   $FF,$FF,$35,$C0,$EC,$46,$84,$80   ..5@lF..
-L0E38    fcb   $5F,$ED,$7E,$26,$07,$34,$40,$17   _m~&.4@.
-L0E40    fcb   $02,$20,$32,$62,$34,$40,$8D,$04   . 2b4@..
-L0E48    fcb   $32,$62,$35,$C0,$34,$40,$EE,$64   2b5@4@nd
-L0E50    fcb   $32,$7C,$EC,$46,$84,$01,$5F,$ED   2|lF.._m
-L0E58    fcb   $7E,$26,$23,$EC,$C4,$10,$A3,$44   ~&#lD.#D
-L0E60    fcb   $27,$1C,$4F,$5F,$34,$06,$34,$40   '.O_4.4@
-L0E68    fcb   $17,$00,$9F,$32,$62,$EC,$02,$34   ...2bl.4
-L0E70    fcb   $06,$EC,$84,$34,$06,$EC,$48,$34   .l.4.lH4
-L0E78    fcb   $06,$17,$05,$80,$32,$68,$EC,$C4   ....2hlD
-L0E80    fcb   $A3,$42,$ED,$62,$10,$27,$00,$6E   #Bmb.'.n
-L0E88    fcb   $EC,$46,$84,$01,$5F,$ED,$7E,$10   lF.._m~.
-L0E90    fcb   $27,$00,$63,$EC,$46,$4F,$C4,$40   '.clFOD@
-L0E98    fcb   $27,$33,$EC,$42,$20,$27,$EC,$62   '3lB 'lb
-L0EA0    fcb   $34,$06,$EC,$C4,$34,$06,$EC,$48   4.lD4.lH
-L0EA8    fcb   $34,$06,$17,$05,$3F,$32,$66,$ED   4...?2fm
-L0EB0    fcb   $E4,$10,$83,$FF,$FF,$26,$04,$30   d....&.0
-L0EB8    fcb   $64,$20,$2A,$EC,$62,$A3,$E4,$ED   d *lb#dm
-L0EC0    fcb   $62,$EC,$C4,$E3,$E4,$ED,$C4,$EC   blDcdmDl
-L0EC8    fcb   $62,$26,$D3,$20,$29,$EC,$62,$34   b&S )lb4
-L0ED0    fcb   $06,$EC,$42,$34,$06,$EC,$48,$34   .lB4.lH4
-L0ED8    fcb   $06,$17,$04,$F7,$32,$66,$10,$A3   ...w2f.#
-L0EE0    fcb   $62,$27,$13,$20,$02,$32,$1C,$EC   b'. .2.l
-L0EE8    fcb   $46,$CA,$20,$ED,$46,$EC,$44,$ED   FJ mFlDm
-L0EF0    fcb   $C4,$CC,$FF,$FF,$20,$10,$EC,$46   DL.. .lF
-L0EF8    fcb   $8A,$01,$ED,$46,$EC,$42,$ED,$C4   ..mFlBmD
-L0F00    fcb   $E3,$4B,$ED,$44,$4F,$5F,$32,$64   cKmDO_2d
-L0F08    fcb   $35,$C0,$34,$40,$35,$C0,$34,$40   5@4@5@4@
-L0F10    fcb   $EE,$64,$27,$46,$EC,$46,$84,$01   nd'FlF..
-L0F18    fcb   $5F,$ED,$7E,$26,$3D,$EC,$C4,$10   _m~&=lD.
-L0F20    fcb   $A3,$44,$24,$12,$EC,$C4,$C3,$00   #D$.lDC.
-L0F28    fcb   $01,$ED,$C4,$83,$00,$01,$1F,$01   .mD.....
-L0F30    fcb   $E6,$84,$4F,$16,$01,$2A,$34,$40   f.O..*4@
-L0F38    fcb   $17,$00,$6E,$16,$01,$20,$34,$40   ..n.. 4@
-L0F40    fcb   $EE,$66,$27,$16,$EC,$46,$4F,$C4   nf'.lFOD
-L0F48    fcb   $01,$27,$0F,$EC,$64,$10,$83,$FF   .'.ld...
-L0F50    fcb   $FF,$27,$07,$EC,$C4,$10,$A3,$42   .'.lD.#B
-L0F58    fcb   $22,$05,$CC,$FF,$FF,$35,$C0,$EC   ".L..5@l
-L0F60    fcb   $C4,$C3,$FF,$FF,$ED,$C4,$1F,$01   DC..mD..
-L0F68    fcb   $EC,$64,$E7,$84,$EC,$64,$35,$C0   ldg.ld5@
-L0F70    fcb   $34,$40,$EE,$64,$32,$7C,$34,$40   4@nd2|4@
-L0F78    fcb   $17,$FF,$93,$32,$62,$ED,$62,$10   ...2bmb.
-L0F80    fcb   $83,$FF,$FF,$27,$0F,$34,$40,$17   ...'.4@.
-L0F88    fcb   $FF,$84,$32,$62,$ED,$E4,$10,$83   ..2bmd..
-L0F90    fcb   $FF,$FF,$26,$05,$CC,$FF,$FF,$20   ..&.L.. 
-L0F98    fcb   $0C,$EC,$62,$34,$06,$CC,$00,$08   .lb4.L..
-L0FA0    fcb   $17,$03,$08,$E3,$E4,$32,$64,$35   ...cd2d5
-L0FA8    fcb   $C0,$34,$40,$EE,$64,$32,$7E,$EC   @4@nd2~l
-L0FB0    fcb   $46,$84,$80,$C4,$31,$10,$83,$80   F..D1...
-L0FB8    fcb   $01,$27,$14,$EC,$46,$4F,$C4,$31   .'.lFOD1
-L0FC0    fcb   $10,$83,$00,$01,$10,$26,$00,$80   .....&..
-L0FC8    fcb   $34,$40,$17,$00,$95,$32,$62,$30   4@...2b0
-L0FD0    fcb   $A9,$00,$12,$34,$10,$11,$A3,$E1   )..4..#a
-L0FD8    fcb   $26,$12,$EC,$46,$4F,$C4,$40,$27   &.lFOD@'
-L0FE0    fcb   $0B,$30,$A9,$00,$1F,$34,$10,$17   .0)..4..
-L0FE8    fcb   $FE,$34,$32,$62,$EC,$46,$4F,$C4   .42blFOD
-L0FF0    fcb   $08,$27,$25,$EC,$4B,$34,$06,$EC   .'%lK4.l
-L0FF8    fcb   $42,$34,$06,$EC,$48,$34,$06,$EC   B4.lH4.l
-L1000    fcb   $46,$4F,$C4,$40,$27,$06,$30,$8D   FOD@'.0.
-L1008    fcb   $03,$B9,$20,$04,$30,$8D,$03,$92   .9 .0...
-L1010    fcb   $1F,$10,$1F,$01,$AD,$84,$20,$12   ....-. .
-L1018    fcb   $CC,$00,$01,$34,$06,$30,$4A,$AF   L..4.0J/
-L1020    fcb   $42,$34,$10,$EC,$48,$34,$06,$17   B4.lH4..
-L1028    fcb   $03,$78,$32,$66,$ED,$E4,$EC,$E4   .x2fmdld
-L1030    fcb   $2E,$1B,$EC,$46,$34,$06,$EC,$62   ..lF4.lb
-L1038    fcb   $27,$05,$CC,$00,$20,$20,$03,$CC   '.L.  .L
-L1040    fcb   $00,$10,$AA,$E0,$EA,$E0,$ED,$46   ..*`j`mF
-L1048    fcb   $CC,$FF,$FF,$20,$11,$EC,$42,$C3   L.. .lBC
-L1050    fcb   $00,$01,$ED,$C4,$EC,$42,$E3,$E4   ..mDlBcd
-L1058    fcb   $ED,$44,$E6,$D8,$02,$4F,$32,$62   mDfX.O2b
-L1060    fcb   $35,$C0,$34,$40,$EE,$64,$EC,$46   5@4@ndlF
-L1068    fcb   $4F,$C4,$C0,$26,$2D,$32,$E8,$E0   OD@&-2h`
-L1070    fcb   $30,$E4,$34,$10,$EC,$48,$34,$06   0d4.lH4.
-L1078    fcb   $4F,$5F,$34,$06,$17,$02,$38,$32   O_4...82
-L1080    fcb   $66,$EC,$46,$34,$06,$E6,$62,$26   flF4.fb&
-L1088    fcb   $05,$CC,$00,$40,$20,$03,$CC,$00   .L.@ .L.
-L1090    fcb   $80,$AA,$E0,$EA,$E0,$ED,$46,$32   .*`j`mF2
-L1098    fcb   $E8,$20,$EC,$46,$8A,$80,$ED,$46   h lF..mF
-L10A0    fcb   $4F,$C4,$0C,$27,$02,$35,$C0,$EC   OD.'.5@l
-L10A8    fcb   $4B,$26,$11,$EC,$46,$4F,$C4,$40   K&.lFOD@
-L10B0    fcb   $27,$05,$CC,$00,$80,$20,$03,$CC   '.L.. .L
-L10B8    fcb   $01,$00,$ED,$4B,$EC,$42,$26,$11   ..mKlB&.
-L10C0    fcb   $EC,$4B,$34,$06,$17,$03,$F3,$32   lK4...s2
-L10C8    fcb   $62,$ED,$42,$10,$83,$FF,$FF,$27   bmB....'
-L10D0    fcb   $08,$EC,$46,$CA,$08,$ED,$46,$20   .lFJ.mF 
-L10D8    fcb   $0F,$EC,$46,$CA,$04,$ED,$46,$30   .lFJ.mF0
-L10E0    fcb   $4A,$AF,$42,$CC,$00,$01,$ED,$4B   J/BL..mK
-L10E8    fcb   $EC,$42,$E3,$4B,$ED,$44,$ED,$C4   lBcKmDmD
-L10F0    fcb   $35,$C0,$34,$40,$E6,$65,$1D,$1F   5@4@fe..
-L10F8    fcb   $01,$20,$1D,$EC,$F8,$06,$C3,$00   . .lx.C.
-L1100    fcb   $04,$ED,$F8,$06,$30,$8D,$00,$27   .mx.0..'
-L1108    fcb   $20,$0A,$E6,$65,$E7,$A9,$00,$10    .feg)..
-L1110    fcb   $30,$A9,$00,$0F,$1F,$10,$35,$C0   0)....5@
-L1118    fcb   $8C,$00,$64,$27,$DE,$8C,$00,$6F   ..d'^..o
-L1120    fcb   $10,$27,$FF,$D7,$8C,$00,$78,$10   .'.W..x.
-L1128    fcb   $27,$FF,$D0,$20,$DD,$35,$C0,$00   '.P ]5@.
-L1130    fcb   $34,$40,$30,$8D,$00,$04,$1F,$10   4@0.....
-L1138    fcb   $35,$C0,$00,$34,$40,$EE,$64,$E6   5@.4@ndf
-L1140    fcb   $C0,$26,$FC,$1F,$30,$A3,$64,$C3   @&..0#dC
-L1148    fcb   $FF,$FF,$35,$C0,$34,$40,$EE,$66   ..5@4@nf
-L1150    fcb   $32,$7E,$EC,$66,$ED,$E4,$E6,$C0   2~lfmdf@
-L1158    fcb   $AE,$E4,$30,$01,$AF,$E4,$E7,$1F   .d0./dg.
-L1160    fcb   $26,$F4,$20,$27,$34,$40,$EE,$66   &t '4@nf
-L1168    fcb   $32,$7E,$EC,$66,$ED,$E4,$AE,$E4   2~lfmd.d
-L1170    fcb   $30,$01,$AF,$E4,$E6,$1F,$26,$F6   0./df.&v
-L1178    fcb   $EC,$E4,$C3,$FF,$FF,$ED,$E4,$E6   ldC..mdf
-L1180    fcb   $C0,$AE,$E4,$30,$01,$AF,$E4,$E7   @.d0./dg
-L1188    fcb   $1F,$26,$F4,$EC,$66,$32,$62,$35   .&tlf2b5
-L1190    fcb   $C0,$34,$40,$EE,$64,$20,$10,$AE   @4@nd ..
-L1198    fcb   $66,$30,$01,$AF,$66,$E6,$1F,$26   f0./ff.&
-L11A0    fcb   $04,$4F,$5F,$35,$C0,$33,$41,$E6   .O_5@3Af
-L11A8    fcb   $C4,$1D,$34,$06,$E6,$F8,$08,$1D   D.4.fx..
-L11B0    fcb   $10,$A3,$E1,$27,$E2,$E6,$F8,$06   .#a'bfx.
-L11B8    fcb   $1D,$34,$06,$E6,$C4,$1D,$A3,$E1   .4.fD.#a
-L11C0    fcb   $35,$C0,$34,$40,$EE,$64,$32,$7B   5@4@nd2{
-L11C8    fcb   $4F,$5F,$ED,$61,$E6,$C0,$E7,$E4   O_maf@gd
-L11D0    fcb   $C1,$20,$27,$F8,$E6,$E4,$C1,$09   A 'xfdA.
-L11D8    fcb   $10,$27,$FF,$F0,$E6,$E4,$C1,$2D   .'.pfdA-
-L11E0    fcb   $26,$05,$CC,$00,$01,$20,$02,$4F   &.L.. .O
-L11E8    fcb   $5F,$ED,$63,$E6,$E4,$C1,$2D,$27   _mcfdA-'
-L11F0    fcb   $1E,$E6,$E4,$C1,$2B,$26,$1C,$20   .fdA+&. 
-L11F8    fcb   $16,$EC,$61,$34,$06,$CC,$00,$0A   .la4.L..
-L1200    fcb   $17,$00,$32,$34,$06,$E6,$62,$1D   ..24.fb.
-L1208    fcb   $E3,$E1,$C3,$FF,$D0,$ED,$61,$E6   caC.Pmaf
-L1210    fcb   $C0,$E7,$E4,$E6,$E4,$1D,$30,$A9   @gdfd.0)
-L1218    fcb   $00,$E3,$30,$8B,$E6,$84,$4F,$C4   .c0.f.OD
-L1220    fcb   $08,$26,$D6,$EC,$63,$27,$08,$EC   .&Vlc'.l
-L1228    fcb   $61,$40,$50,$82,$00,$20,$02,$EC   a@P.. .l
-L1230    fcb   $61,$32,$65,$35,$C0,$4D,$26,$12   a2e5@M&.
-L1238    fcb   $6D,$62,$26,$0E,$A6,$63,$3D,$AE   mb&.&c=.
-L1240    fcb   $E4,$AF,$62,$8E,$00,$00,$ED,$E4   d/b...md
-L1248    fcb   $35,$86,$34,$06,$CC,$00,$00,$34   5.4.L..4
-L1250    fcb   $06,$34,$06,$A6,$65,$E6,$69,$3D   .4.&efi=
-L1258    fcb   $ED,$62,$A6,$65,$E6,$68,$3D,$E3   mb&efh=c
-L1260    fcb   $61,$ED,$61,$24,$02,$6C,$E4,$A6   ama$.ld&
-L1268    fcb   $64,$E6,$69,$3D,$E3,$61,$ED,$61   dfi=cama
-L1270    fcb   $24,$02,$6C,$E4,$A6,$64,$E6,$68   $.ld&dfh
-L1278    fcb   $3D,$E3,$E4,$ED,$E4,$AE,$66,$AF   =cdmd.f/
-L1280    fcb   $68,$AE,$E4,$EC,$62,$32,$68,$39   h.dlb2h9
-L1288    fcb   $5D,$27,$13,$67,$62,$66,$63,$5A   ]'.gbfcZ
-L1290    fcb   $26,$F9,$20,$0A,$5D,$27,$07,$64   &y .]'.d
-L1298    fcb   $62,$66,$63,$5A,$26,$F9,$EC,$62   bfcZ&ylb
-L12A0    fcb   $34,$06,$EC,$62,$ED,$64,$EC,$E4   4.lbmdld
-L12A8    fcb   $32,$64,$39,$5D,$27,$F0,$68,$63   2d9]'phc
-L12B0    fcb   $69,$62,$5A,$26,$F9,$20,$E7,$A6   ibZ&y g&
-L12B8    fcb   $65,$E6,$63,$27,$2D,$C1,$01,$27   efc'-A.'
-L12C0    fcb   $2B,$C1,$06,$27,$27,$C1,$02,$27   +A.''A.'
-L12C8    fcb   $09,$C1,$05,$27,$05,$C6,$D0,$16   .A.'.FP.
-L12D0    fcb   $02,$15,$34,$40,$10,$3F,$8D,$24   ..4@.?.$
-L12D8    fcb   $05,$35,$40,$16,$02,$09,$AF,$F8   .5@.../x
-L12E0    fcb   $08,$AE,$68,$EF,$02,$35,$40,$4F   ..ho.5@O
-L12E8    fcb   $5F,$39,$AE,$66,$10,$3F,$8D,$16   _9.f.?..
-L12F0    fcb   $01,$FE,$A6,$65,$E6,$63,$27,$09   ..&efc'.
-L12F8    fcb   $C1,$02,$27,$0D,$C6,$D0,$16,$01   A.'.FP..
-L1300    fcb   $E6,$AE,$66,$10,$3F,$8E,$16,$01   f.f.?...
-L1308    fcb   $E7,$34,$40,$AE,$68,$EE,$6A,$10   g4@.hnj.
-L1310    fcb   $3F,$8E,$35,$40,$16,$01,$D9,$AE   ?.5@..Y.
-L1318    fcb   $62,$A6,$65,$10,$3F,$84,$25,$03   b&e.?.%.
-L1320    fcb   $10,$3F,$8F,$16,$01,$CA,$AE,$62   .?...J.b
-L1328    fcb   $A6,$65,$10,$3F,$84,$10,$25,$01   &e.?..%.
-L1330    fcb   $B6,$1F,$89,$4F,$39,$A6,$63,$10   6..O9&c.
-L1338    fcb   $3F,$8F,$16,$01,$B3,$AE,$62,$E6   ?...3.bf
-L1340    fcb   $65,$10,$3F,$85,$16,$01,$A9,$AE   e.?...).
-L1348    fcb   $62,$A6,$65,$1F,$89,$C4,$24,$CA   b&e..D$J
-L1350    fcb   $0B,$10,$3F,$83,$25,$04,$1F,$89   ..?.%...
-L1358    fcb   $4F,$39,$C1,$DA,$10,$26,$01,$87   O9AZ.&..
-L1360    fcb   $A6,$65,$85,$80,$10,$26,$01,$7F   &e...&.
-L1368    fcb   $84,$07,$AE,$62,$10,$3F,$84,$10   ...b.?..
-L1370    fcb   $25,$01,$74,$34,$42,$8E,$00,$00   %.t4B...
-L1378    fcb   $33,$84,$C6,$02,$10,$3F,$8E,$35   3.F..?.5
-L1380    fcb   $42,$24,$D3,$34,$04,$10,$3F,$8F   B$S4..?.
-L1388    fcb   $35,$04,$16,$01,$5A,$AE,$62,$10   5...Z.b.
-L1390    fcb   $3F,$87,$16,$01,$5B,$A6,$63,$10   ?...[&c.
-L1398    fcb   $3F,$82,$10,$25,$01,$49,$1F,$89   ?..%.I..
-L13A0    fcb   $4F,$39,$34,$20,$AE,$66,$A6,$65   O94 .f&e
-L13A8    fcb   $10,$AE,$68,$34,$20,$10,$3F,$89   ..h4 .?.
-L13B0    fcb   $24,$0D,$C1,$D3,$26,$04,$4F,$5F   $.AS&.O_
-L13B8    fcb   $35,$B0,$35,$30,$16,$01,$28,$1F   5050..(.
-L13C0    fcb   $20,$35,$B0,$34,$20,$A6,$65,$AE    504 &e.
-L13C8    fcb   $66,$10,$AE,$68,$34,$20,$10,$3F   f..h4 .?
-L13D0    fcb   $8B,$20,$DD,$34,$20,$10,$AE,$68   . ]4 ..h
-L13D8    fcb   $27,$0E,$A6,$65,$AE,$66,$10,$3F   '.&e.f.?
-L13E0    fcb   $8A,$24,$05,$35,$20,$16,$00,$FF   .$.5 ...
-L13E8    fcb   $1F,$20,$35,$A0,$34,$20,$10,$AE   . 5 4 ..
-L13F0    fcb   $68,$27,$F5,$A6,$65,$AE,$66,$10   h'u&e.f.
-L13F8    fcb   $3F,$8C,$20,$E5,$34,$40,$EC,$6A   ?. e4@lj
-L1400    fcb   $26,$08,$CE,$00,$00,$8E,$00,$00   &.N.....
-L1408    fcb   $20,$34,$10,$83,$00,$01,$27,$25    4....'%
-L1410    fcb   $10,$83,$00,$02,$27,$14,$C6,$F7   ....'.Fw
-L1418    fcb   $4F,$ED,$A9,$01,$B1,$CC,$FF,$FF   Om).1L..
-L1420    fcb   $30,$A9,$01,$A5,$ED,$84,$ED,$02   0).%m.m.
-L1428    fcb   $35,$C0,$A6,$65,$C6,$02,$10,$3F   5@&eF..?
-L1430    fcb   $8D,$25,$E5,$20,$09,$A6,$65,$C6   .%e .&eF
-L1438    fcb   $05,$10,$3F,$8D,$25,$DA,$1F,$30   ..?.%Z.0
-L1440    fcb   $E3,$68,$ED,$A9,$01,$A7,$1F,$03   chm).'..
-L1448    fcb   $1F,$10,$E9,$67,$A9,$66,$2B,$C8   ..ig)f+H
-L1450    fcb   $1F,$01,$ED,$A9,$01,$A5,$A6,$65   ..m).%&e
-L1458    fcb   $10,$3F,$88,$25,$BB,$30,$A9,$01   .?.%;0).
-L1460    fcb   $A5,$35,$C0,$EC,$A9,$01,$A3,$34   %5@l).#4
-L1468    fcb   $06,$EC,$64,$10,$A3,$A9,$01,$CD   .ld.#).M
-L1470    fcb   $25,$25,$E3,$A9,$01,$A3,$34,$20   %%c).#4 
-L1478    fcb   $A3,$E4,$10,$3F,$07,$1F,$20,$35   #d.?.. 5
-L1480    fcb   $20,$24,$06,$CC,$FF,$FF,$32,$62    $.L..2b
-L1488    fcb   $39,$ED,$A9,$01,$A3,$E3,$A9,$01   9m).#c).
-L1490    fcb   $CD,$A3,$E4,$ED,$A9,$01,$CD,$32   M#dm).M2
-L1498    fcb   $62,$EC,$A9,$01,$CD,$34,$06,$A3   bl).M4.#
-L14A0    fcb   $64,$ED,$A9,$01,$CD,$EC,$A9,$01   dm).Ml).
-L14A8    fcb   $A3,$A3,$E1,$34,$06,$4F,$AE,$E4   ##a4.O.d
-L14B0    fcb   $A7,$80,$AC,$A9,$01,$A3,$25,$F8   '.,).#%x
-L14B8    fcb   $35,$86,$EC,$62,$E3,$A9,$01,$AD   5.lbc).-
-L14C0    fcb   $25,$21,$10,$A3,$A9,$01,$AF,$24   %!.#)./$
-L14C8    fcb   $1A,$34,$06,$AE,$A9,$01,$AD,$4F   .4..).-O
-L14D0    fcb   $AC,$E4,$24,$04,$A7,$80,$20,$F8   ,d$.'. x
-L14D8    fcb   $EC,$A9,$01,$AD,$35,$10,$AF,$A9   l).-5./)
-L14E0    fcb   $01,$AD,$39,$CC,$FF,$FF,$39,$4F   .-9L..9O
-L14E8    fcb   $ED,$A9,$01,$B1,$CC,$FF,$FF,$39   m).1L..9
-L14F0    fcb   $25,$F5,$4F,$5F,$39,$17,$00,$08   %uO_9...
-L14F8    fcb   $17,$F8,$C0,$EC,$62,$10,$3F,$06   .x@lb.?.
-L1500    fcb   $39,$00,$01,$00,$01,$62,$74,$4F   9....btO
+
+
+         nam   tocgen
+         ttl   program module       
+
+* Disassembled 03/01/07 13:59:26 by Disasm v1.6 (C) 1988 by RML
+
+         ifp1
+         use   os9defs
+         endc
+
+* Params
+MAXARGS equ 30                   allow for 30 arguments
+nfiles  equ 2                    stdin and stdout at least
+Stk     equ nfiles*256+128+256   stdin,stdout,stderr and fudge
+
+* These are probably defined in scfdefs
+C$CR    equ $0D
+C$SPC   equ $20
+C$COMA  equ $2C
+C$DQUt  equ $22
+C$SQUT  equ $27
+
+
+* These should be defined somewhere
+stdin  equ 0
+stdout equ 1
+stderr equ 2
+
+* These should be defined somewhere 
+pmode   equ   $0b          r/w for owner, r for others
+EPEXEC. equ   %00100100    mask for public and owner executes
+
+
+
+* OS9 Header info
+
+tylg     set   Prgrm+Objct   
+atrv     set   ReEnt+rev
+rev      set   $01
+         mod   eom,name,tylg,atrv,start,size
+
+
+********************************************************************
+*   From cstart.a
+*   MAXARGS equ 30 allow for 30 arguments
+*
+*
+*   rob the first dp byte so nothing gets assigned
+*   here.  No valid pointer can point to byte zero.
+*
+* vsect dp
+* __$$ fcb 0
+* endsect
+*
+* pushzero is a rma macro not supported by asm used in cstart.a
+* pushzero macro
+*  clr ,-s clear a byte on the stack
+* endm
+
+********************************************************************
+btext    equ   .
+u0000    rmb   1 I think this is the __$$ fcb 0 vsect.
+dpsiz    rmb   1
+u0002    rmb   2
+u0004    rmb   2
+u0006    rmb   2
+u0008    rmb   2
+u000A    rmb   1
+u000B    rmb   2
+
+u000D    rmb   2
+u000F    rmb   2
+u0011    rmb   1
+u0012    rmb   2
+u0014    rmb   335
+
+*u0020    rmb   5
+*u0025    rmb   2
+*u0027    rmb   30
+*u0043    rmb   2
+*u0045    rmb   31
+*u0064    rmb   132
+*u00E8    rmb   123
+
+
+
+*  if I understand how the vsects work in rma 
+*  the following should be true
+*  the following are globally known
+*  vsect (from cstart.a)
+*  pwz the did fall into place :-)
+
+argv     rmb 2*MAXARGS pointers to args
+argc     rmb 2
+_sttop   rmb 2
+
+memend   rmb 2 end of memory                      ($01a3)
+_flacc:  rmb 8 floating point & longs accumulator ($01A5)
+_mtop:   rmb 2 current non-stack memory top
+_stbot:  rmb 2 current stack bottom limit
+errno:   rmb 2 global error holder                ($01b1)
+
+varnum1  rmb 2                                    ($01b3)
+varnum2  rmb 10                                   ($01b5)
+varnum3  rmb 10                                   ($01bf)
+varnum4  rmb 2                                    ($01c9)
+varnum5  rmb 2                                    ($01cb)
+spare    rmb 2   from mem.a                       ($01CD)
+end      equ .   End of unitialized data          ($01CF)
+
+
+stack    rmb Stk
+size     equ   .
+
+name     equ   *
+         fcs   /tocgen/ module name 
+         fcb   $01      edition byte
+
+********************************************************************
+*  Start of code from cstart.a file.
+*
+*  The movebytes routine
+*
+* move bytes (Y=From addr, U=To addr, X=Count)
+*
+
+
+movebytes lda  ,y+        get a byte
+          sta  ,u+        put a byte
+          leax  -1,x      dec the count
+          bne  movebytes  and round again
+          rts
+
+_cstart
+start    equ   *          _cstart code
+         pshs  y          save top of mem
+         pshs  u          save the data beginning address
+
+*
+* This code segment initializes the first 256
+* (possible) direct page bytes
+*
+
+         clra             set up to clear
+         clrb             256 bytes
+csta05   sta   ,u+        clear dp bytes
+         decb  
+         bne   csta05
+
+*
+* This code segment sets up to move the
+* initialized data from the code section
+* to the data area.
+*
+
+
+csta10   ldx   ,s         get the beginning of data address
+         leau  ,x         (tfr x,u)
+	 leax  end,x      get the end of bss address
+**       leax  >$01CF,x   absolute address of the operand ??
+         pshs  x          save it
+         leay  >etext,pcr point to dp-data count word
+
+*
+* now move the initialized direct-page
+* data into position.
+*
+
+         ldx   ,y++       get count of dp-data to be moved
+         beq   csta15     bra if none (L003E old label)
+         bsr   movebytes  move dp data into position (L0014)
+
+*
+* now move the initialized non direct-page
+* data into position.
+*
+
+
+         ldu   $02,s      get beginning address again
+csta15   leau  >dpsiz,u   point to where non-dp should start
+         ldx   ,y++       get count of non-dp data to be moved
+         beq   clrbss     (L0049 old label)
+         bsr   movebytes  move non-dp data into position 
+
+*
+*  clear the bss area - starts where the transferred data finishs
+*  now clear out the rest of the uninitialized data area.
+*
+
+         clra  
+clrbss   cmpu  ,s         reached the end ??
+         beq   reldt      if so branch to relocate 
+         sta   ,u+        if not end clear it
+         bra   clrbss     and then go again (L0049 old tag)
+
+*
+* The linker cannot know the final absolute
+* addresses of any data in the data area that
+* refers to other data or code.  The next section
+* of code will add the base of the text area to
+* data pointers pointing to text (data-text references)
+* and add the base of the data area to data pointers
+* pointing to other data (data-data references).
+* The linker leaves a list of the offsets at the end
+* object code module.
+
+*
+*  now relocate the data-text references
+*
+
+reldt    ldu   $02,s      restore to data bottom
+         ldd   ,y++       get the data text ref count
+         beq   reldd      (old tag L005F)
+
+******************************************************************
+*  this is interesting
+*  from the cstart.a code this line is as follows
+*
+*    this guy points back to line L0000 but where is it 
+*    at offset zero of course`
+*
+*
+*        leax  >L0000,pcr  point to text ??? line from disassembly
+
+         leax btext,pcr   point to text. ---- line from cstart.a
+         lbsr  patch      patch them in (L0162 old tag)
+
+*
+*  and now the data-data refs.
+*
+reldd    ldd   ,y++       get the count of the data refs
+         beq   restack    branch if none (L0068 old tag)
+         leax  ,u         u was already pointing there
+         lbsr  patch      patch them in (L0162 old tag)
+
+******************************************************************
+*
+*  this restack is slightly diff from the root.a version in the 
+*  c-compiler code.
+*   restack leas 4,s return scratch
+*    leay 0,u tfr u,y (base addr of data to y)
+*    puls u high end of allocated data area
+*    leax 0,s point to parameters
+
+
+restack  leas  $04,s      reset stack
+         puls  x          restore 'memend'
+         stx   >memend,u
+
+******************************************************************
+*
+* process the params
+* the stack pointer is back where it started so is
+* pointing at the params
+*
+* the objective is to insert null chars at the end of each argument
+* and fill in the argv vector with pointers to them
+
+* first store the program name address
+* (an extra name inserted here for just this purpose
+* - undocumented as yet)
+
+         sty   >argv,u  
+         ldd   #$0001     at least one arg
+         std   >argc,u
+         leay  >argv+2,u  point y at second slot
+         leax  ,s         point x at params
+         lda   ,x+        initialize
+ 
+aloop    ldb   >argc+1,u
+         cmpb  #MAXARGS-1 about to overflow ??
+         beq   final      branch out
+
+aloop10  cmpa  #C$CR      is it the EOL?
+         beq   final      yep - reached end of the list
+         cmpa  #C$SPC     is it a space
+         beq   aloop20    yep go for the next one
+         cmpa  #C$COMA    is it a comma ?
+         bne   aloop30    no - then a word has started
+
+aloop20  lda   ,x+        yes it's a comma bump to next char
+         bra   aloop10    and loop again
+
+aloop30  cmpa  #C$DQUT    a quoted string (")
+         beq   aloop40    yep - go process it
+         cmpa  #C$SQUT    a quoted string (')
+         bne   aloop60    not quotes double or single move on
+
+aloop40  stx   ,y++       save the address in vector
+         inc   >argc+1,u  bump up the arg count
+         pshs  a          save the delim char
+
+qloop    lda   ,x+        get the next char
+         cmpa  #C$CR      EOL?
+         beq   aloop50    go clean up
+         cmpa  ,s         is it a delim char
+         bne   qloop      no then lop to the next
+
+aloop50  puls  b          clean up stack
+         clr   -$01,x
+         cmpa  #C$CR
+         beq   final
+         lda   ,x+
+         bra   aloop
+
+aloop60  leax  -$01,x     point at first char
+         stx   ,y++       put address in vector
+         leax  $01,x      bump it back
+         inc   >argc+1,u  bump up the arg count
+
+* at least one none space character has been seen
+aloop70  cmpa  #C$CR      Have
+         beq   loopend    we
+         cmpa  #C$SPC     reached
+         beq   loopend    the end
+         cmpa  #C$COMA    comma?
+         beq   loopend    look some more
+         lda   ,x+
+         bra   aloop70
+
+loopend  clr   -$01,x
+         bra   aloop
+
+*`
+* Now put the pointers on the stack
+*
+final    leax  >argv,u    get the address of the arg vector  
+         pshs  x          goes on the stack first
+         ldd   >argc,u    get the arg count
+
+         pshs  b,a
+*        pshs  d          push it on the stack
+
+         leay  0,u        C progs. assume data and bss offset from y
+*                         see note above in restack
+*
+*    end of argv and argc processing
+*
+*****************************************************
+*
+* Registers at this point:
+*
+*    X = Pointer to parameter area
+*    U = Pointer to top of data allocated
+*        by the linker.
+*    Y = Pointer to bottom of data area
+*   DP = Same as high byte of Y-reg
+*
+* The linker has adjusted
+* all non-direct-page data references to reflect
+* the data memory as we have set up here.  The
+* data-index register choice here is arbitrary,
+* but must be used consistently.  To maintain
+* compatability with code produced by the C compiler,
+* the Y register is used here as the data pointer.
+
+
+*******************************************************
+*
+*    go set up variables for stack size and such
+*
+         bsr   _fixtop    set various variables
+
+*******************************************************
+*
+*    go to the main event
+*
+         lbsr  main       call our program
+
+*  clean up and bit and out we go
+
+         clr   ,-s        pushzero clear a byte on the stack
+         clr   ,-s        pushzero clear a byte on the stack
+         lbsr  exit       and a dummy return address
+*  should never return here
+
+
+********************************************************
+*
+*  
+*
+
+_fixtop  leax  end,y      get the initial memeory end 
+*                         (unitilaized data "bss"address)
+         stx   _mtop,y    its the current memory top
+         sts   _sttop,y   this is really two bytes short
+         sts   _stbot,y
+         ldd   #-126      give ourselfs some breathing space
+
+*        stx   >$01AD,y   ---- disassembly
+*        sts   >$01A1,y   ---- disassembly
+*        sts   >$01AF,y   ---- disassembly
+*        ldd   #$FF82     ---- disassembly
+
+_stkchec:
+_stkcheck:
+         leax  d,s        calculate the requested size
+         cmpx  _stbot,y   is it lower than already reserved?
+*        bcc   stk10      ---- disassembly     
+         bhs   stk10      no -return
+         cmpx  _mtop,y    is it lower than possible?
+*        bcs   ftserr     ---- disassembly
+         blo   fsterr     yes - can't cope
+         stx   _stbot,y   no - reserve it
+stk10    rts   
+
+*  Stackover flow string
+fixserr  fcc   %**** STACK OVERFLOW ****%
+         fcb   $0D
+
+*  Stackover flow error processing
+* entry:
+*       a -> path to write 
+*       b -> mem full error
+*       x -> address of data to be written
+*       y -> maximum #of bytes message length
+*       s -> b pushed to preserve the mem full error
+*            since the I$WritLn returns it error code in b
+* exit:
+*       u - unchanged
+*       y - number of bytes written
+*       s-> popped back to prior to entry
+*
+* error: (I$writLn)
+*       CC -> Carry set
+*       b  -> error code
+* 
+
+fsterr   leax  <fixserr,pcr  load x wit address of error strin
+         ldb   #E$MEMFUL     load b with the error code number
+
+erexit   pshs  b             stack the error number
+         lda   #stderr       set path to standard error output
+         ldy   #$0064        set size more than needed
+         os9   I$WritLn      write it
+*                            pop the error code back 
+         clr   ,-s           pushzero clear MSB of status
+         lbsr  _exit         and out
+* no return here
+                
+* stacksize()
+* returns the extent of stack requested
+* can be used by programmer for guidance
+* in sizing memory at compile time
+
+stacksiz:
+         ldd _sttop,y        top of stack on entry
+         subd _stbot,y       subtract current reserved limit
+         rts
+
+
+* freemem()
+* returns the current size of the free memory area
+*
+
+freemem:
+        ldd _stbot,y
+        subd _mtop,y
+        rts
+
+
+
+* patch - adjust initialised data which refer to memory locations.
+* entry:
+*       y -> list of offsets in the data area to be patched
+*       u -> base of data
+*       x -> base of either text or data area as appropriate
+*       d =  count of offsets in the list
+*
+* exit:
+*       u - unchanged
+*       y - past the last entry in the list
+*       x and d mangled
+
+patch   pshs x           save the base
+        leax d,y         half way up the list
+        leax d,x         top of list
+        pshs x           save it as place to stop
+
+* we do not come to this routine with
+* a zero count (check!) so a test at the loop top
+* is unnecessary
+
+patch10 ldd ,y++         get the offset
+        leax d,u         point to location
+        ldd 0,x          get the relative reference
+        addd 2,s         add in the base
+        std 0,x          store the absolute reference
+        cmpy 0,s         reached the top?
+        bne patch10      no - round again
+
+        leas 4,s         reset the stack
+        rts              and return
+
+
+
+
+main    pshs  u
+         ldd   #$FD57
+         lbsr  _stkcheck:   check for sufficient stack available:
+
+         leas  >-$025D,s
+         ldd   >$0261,s     
+         cmpd  #$0002       looks like we check for two args
+         beq   gotargs      if good number go
+         ldd   [>$0263,s]
+         pshs  b,a
+         leax  >usemsg,pcr  load address of usage message
+         pshs  x            push it on the stack
+
+         lbsr  L07EF
+         leas  $04,s        clean up stack
+         clra               clear the exit codes
+         clrb               from d
+         pshs  b,a          push it on the stack
+         lbsr  exit     
+
+
+         leas  $02,s
+
+gotargs  leax  >L04C8,pcr   Load address data after usage message
+         pshs  x
+         ldx   >$0265,s
+         ldd   $02,x
+         pshs  b,a
+         lbsr  L06CF
+         leas  $04,s
+         std   >$025B,s
+         bne   L01E1
+         ldx   >$0263,s
+         ldd   $02,x
+         pshs  b,a
+         leax  >cntread,pcr  Load address can't open for reading message 
+         pshs  x
+         lbsr  L07EF
+         leas  $04,s
+         clra  
+         clrb  
+         pshs  b,a
+         lbsr  exit
+
+         leas  $02,s
+L01E1    clra  
+         clrb  
+         std   >$0082,s
+         lslb  
+         rola  
+         leax  ,s
+         leax  d,x
+         clra  
+         clrb  
+         std   ,x
+         leax  >$0084,s
+         stx   >$0255,s
+         lbra  L0396
+
+L01FC    ldd   >$0257,s
+         addd  #$0001
+         std   >$0257,s
+L0207    ldb   [>$0257,s]
+         cmpb  #C$CR
+         beq   L021F
+         ldb   [>$0257,s]
+         cmpb  #$64        'd 
+         beq   L021F
+         ldb   [>$0257,s]
+         cmpb  #$44        'D
+         bne   L01FC
+L021F    ldb   [>$0257,s]
+         cmpb  #C$CR
+         beq   L0247
+         ldd   >$0257,s
+         addd  #$0001
+         std   >$0257,s
+         pshs  b,a
+         lbsr  L11C2
+         leas  $02,s
+         ldx   >$0255,s
+         leax  $01,x
+         stx   >$0255,s
+         stb   -$01,x
+         bra   L026E
+
+L0247    leax  >$0204,s
+         pshs  x
+         leax  >dsknmsg,pcr    Load address of disk number ?? mising
+         pshs  x
+         lbsr  L07EF
+         leas  $04,s
+         clra  
+         clrb  
+         pshs  b,a
+         lbsr  exit
+         leas  $02,s
+         bra   L026E
+L0263    ldd   >$0257,s
+         addd  #$0001
+         std   >$0257,s
+L026E    ldb   [>$0257,s]
+         cmpb  #C$CR
+         beq   L0286
+         ldb   [>$0257,s]
+         cmpb  #$73        's
+         beq   L0286
+         ldb   [>$0257,s]
+         cmpb  #$53        'S
+         bne   L0263
+L0286    ldb   [>$0257,s]
+         cmpb  #C$CR
+         beq   L02CE
+         ldd   >$0257,s
+         addd  #$0001
+         std   >$0257,s
+         pshs  b,a
+         lbsr  L11C2
+         leas  $02,s
+         stb   >$025A,s
+         cmpb  #$01
+         beq   L02B0
+         ldb   >$025A,s
+         cmpb  #$02
+         bne   L02C2
+L02B0    ldb   >$025A,s
+         ldx   >$0255,s
+         leax  $01,x
+         stx   >$0255,s
+         stb   -$01,x
+         bra   L02E8
+L02C2    leax  >$0204,s
+         pshs  x
+         leax  >invside,pcr   load address of the invalid side message
+         bra   L02D8
+L02CE    leax  >$0204,s
+         pshs  x
+         leax  >snmiss,pcr    load address of side number missing mesg
+L02D8    pshs  x
+         lbsr  L07EF
+         leas  $04,s
+         clra  
+         clrb  
+         pshs  b,a
+         lbsr  exit
+         leas  $02,s
+L02E8    clra  
+         clrb  
+         stb   >$0259,s
+         bra   L0342
+L02F0    ldd   >$0257,s
+         addd  #$0001
+         std   >$0257,s
+L02FB    ldb   [>$0257,s]
+         cmpb  #C$CR
+         beq   L0313
+         ldb   [>$0257,s]
+         cmpb  #$76         's
+         beq   L0313
+         ldb   [>$0257,s]
+         cmpb  #$56         'S
+         bne   L02F0
+L0313    ldb   [>$0257,s]
+         cmpb  #C$CR
+         beq   L034A
+         ldd   >$0257,s
+         addd  #$0001
+         std   >$0257,s
+         pshs  b,a
+         lbsr  L11C2
+         leas  $02,s
+         ldx   >$0255,s
+         leax  $01,x
+         stx   >$0255,s
+         stb   -$01,x
+         ldd   #$0001
+         stb   >$0259,s
+         bra   L0342
+L0342    ldb   [>$0257,s]
+         cmpb  #C$CR
+         bne   L02FB
+L034A    ldb   >$0259,s
+         bne   L036A
+         leax  >$0204,s
+         pshs  x
+         leax  >vnmiss,pcr    load address of volume missing mesg 
+         pshs  x
+         lbsr  L07EF
+         leas  $04,s
+         clra  
+         clrb  
+         pshs  b,a
+         lbsr  exit           head out
+
+         leas  $02,s
+L036A    ldx   >$0255,s
+         ldb   -$01,x
+         sex   
+         orb   #$80
+         stb   -$01,x
+         ldd   >$0082,s
+         addd  #$0001
+         std   >$0082,s
+         lslb  
+         rola  
+         leax  ,s
+         leax  d,x
+         pshs  x
+         leax  >$0086,s
+         pshs  x
+         ldd   >$0259,s
+         subd  ,s++
+         std   [,s++]
+L0396    ldd   >$025B,s
+         pshs  b,a
+         ldd   #$0051
+         pshs  b,a
+         leax  >$0208,s
+         pshs  x
+         lbsr  L075C
+         leas  $06,s
+         std   >$0257,s
+         lbne  L0207
+         clra  
+         clrb  
+         bra   L03D7
+L03B8    ldd   >$0080,s
+         lslb  
+         rola  
+         leax  ,s
+         leax  d,x
+         ldd   ,x
+         pshs  x,b,a
+         ldd   >$0086,s
+         lslb  
+         rola  
+         addd  ,s++
+         std   [,s++]
+         ldd   >$0080,s
+         addd  #$0001
+L03D7    std   >$0080,s
+         ldd   >$0080,s
+         cmpd  >$0082,s
+         bcs   L03B8
+         ldd   >$025B,s
+         pshs  b,a
+         lbsr  L0DE4
+         leas  $02,s
+         leax  >L0548,pcr
+         pshs  x
+         leax  >dpsiz,y
+         pshs  x
+         lbsr  L06CF
+         leas  $04,s
+         std   >$025B,s
+         bne   L0422
+
+         leax  >dpsiz,y  
+         pshs  x
+         leax  >cntwrit,pcr   load address of can't write mesg
+         pshs  x
+         lbsr  L07EF
+         leas  $04,s
+         clra  
+         clrb  
+         pshs  b,a
+         lbsr  exit
+
+         leas  $02,s
+L0422    ldd   >$025B,s
+         pshs  b,a
+         ldd   >$0084,s
+         pshs  b,a
+         lbsr  egg2
+         leas  $04,s
+         cmpd  #$FFFF
+         beq   L0481
+         ldd   >$025B,s
+         pshs  b,a
+         ldd   #$0001
+         pshs  b,a
+         ldd   >$0086,s
+         lslb  
+         rola  
+         pshs  b,a
+         leax  $06,s
+         pshs  x
+         lbsr  L07A5
+         leas  $08,s
+         std   -$02,s
+         beq   L0481
+         ldd   >$025B,s
+         pshs  b,a
+         ldd   #$0001
+         pshs  b,a
+         leax  >$0088,s
+         pshs  x
+         ldd   >$025B,s
+         subd  ,s++
+         pshs  b,a
+         leax  >$008A,s
+         pshs  x
+         lbsr  L07A5
+         leas  $08,s
+         std   -$02,s
+         bne   L049B
+L0481    leax  >dpsiz,y
+         pshs  x
+         leax  errwrit,pcr    load address of error writing mesg  
+         pshs  x
+         lbsr  L07EF
+         leas  $04,s
+         clra  
+         clrb  
+         pshs  b,a
+         lbsr  exit
+
+         leas  $02,s
+L049B    ldd   >$025B,s
+         pshs  b,a
+         lbsr  L0DE4
+         leas  $02,s
+         clra  
+         clrb  
+         pshs  b,a
+         lbsr  exit
+         leas  $02,s
+         leas  >$025D,s
+         puls  pc,u
+
+usemsg   fcc   /Usage: %s pathlist/          c-string
+         fcb   $00                           null terminator c-string
+
+  
+L04C8    fcb   $72,$00                       what am I                         
+
+cntread  fcc   /Can't open %s for reading./  c-string
+         fcb   C$CR,$00                      cr and null term       
+
+dsknmsg  fcc   /Disk number missing:/        c-string
+         fcb   C$CR                          with a cr embedded
+         fcc   /%s/                          c-string 
+         fcb   $00                           null terminator c-string
+  
+invside  fcc   /Invalid side number:/        
+         fcb   C$CR                          
+         fcc   /%s/                          
+         fcb   $00                           
+
+snmiss   fcc   /Side number missing:/
+         fcb   C$CR                          
+         fcc   /%s/                          
+         fcb   $00                           
+
+vnmiss   fcc   /Volume number missing:/
+         fcb   C$CR                          
+         fcc   /%s/                          
+         fcb   $00                           
+   
+L0548    fcb   $77,$00                       what am i
+
+cntwrit  fcc   /Can't open %s for writing./
+         fcb   C$CR,$00                      
+
+
+errwrit  fcc   /Error writing %s./
+         fcb   C$CR                                                
+         fcb   $00     
+
+
+*                      the null actually terminates the above string
+*L0578    fcb   $00    same code frag as egg2 calls into
+*L0579    fcb   $34
+*         neg   <u0034 dis assembled as "3440" disassembled as 
+*         nega  
+
+egg1     pshs u    ***  pshs u incorrectly decoded
+
+L057B    leau  >u0012,y
+L057F    ldd   u0006,u
+         clra  
+         andb  #$03
+         lbeq  L05F0
+         leau  u000D,u
+         pshs  u
+         leax  >$00E2,y
+         cmpx  ,s++
+         bhi   L057F
+         ldd   #E$PthFul    $00C8
+         std   >errno,y      01b1
+         lbra  L05F4
+         puls  pc,u
+
+L05A0    pshs  u
+         ldu   $08,s
+         bne   L05AA
+         bsr   egg1   ***  pshs u incorrectly decoded
+         tfr   d,u
+L05AA    stu   -$02,s
+         beq   L05F4
+         ldd   $04,s
+         std   u0008,u
+         ldx   $06,s
+         ldb   $01,x     
+         cmpb  #$2B      '+   ?????
+         beq   L05C2
+         ldx   $06,s
+         ldb   $02,x
+         cmpb  #$2B      '+   ??????
+         bne   L05C8
+L05C2    ldd   u0006,u
+         orb   #$03
+         bra   L05E6
+L05C8    ldd   u0006,u
+         pshs  b,a
+         ldb   [<$08,s]
+         cmpb  #$72       'r
+         beq   L05DA
+         ldb   [<$08,s]
+         cmpb  #$64       'd      
+         bne   L05DF
+L05DA    ldd   #$0001
+         bra   L05E2
+L05DF    ldd   #$0002
+L05E2    ora   ,s+
+L05E4    orb   ,s+
+L05E6    std   u0006,u
+         ldd   u0002,u
+         addd  u000B,u
+         std   u0004,u
+         std   ,u
+L05F0    tfr   u,d
+         puls  pc,u
+
+L05F4    clra  
+         clrb  
+         puls  pc,u
+
+L05F8    pshs  u
+         ldu   $04,s
+         leas  -$04,s
+         clra  
+         clrb  
+         std   ,s
+         ldx   $0A,s
+         ldb   $01,x
+         sex   
+         tfr   d,x
+         bra   L0629
+L060B    ldx   $0A,s
+         ldb   $02,x
+         cmpb  #$2B     '+
+         bne   L0618
+         ldd   #$0007
+         bra   L0620
+L0618    ldd   #$0004
+         bra   L0620
+L061D    ldd   #$0003
+L0620    std   ,s
+         bra   L0639
+L0624    leax  $04,s
+         lbra  L0691
+L0629    stx   -$02,s
+         beq   L0639
+         cmpx  #$0078
+         beq   L060B
+         cmpx  #$002B
+         beq   L061D
+         bra   L0624
+L0639    ldb   [<$0A,s]
+         sex   
+         tfr   d,x
+         lbra  L069E
+L0642    ldd   ,s
+         orb   #$01
+         bra   L0684
+L0648    ldd   ,s
+         orb   #$02
+         pshs  b,a
+         pshs  u
+         lbsr  open:
+         leas  $04,s
+         std   $02,s
+         cmpd  #$FFFF
+         beq   L0673
+         ldd   #$0002
+         pshs  b,a
+         clra  
+         clrb  
+         pshs  b,a
+         pshs  b,a
+         ldd   $08,s
+         pshs  b,a
+         lbsr  lseek:
+         leas  $08,s
+         bra   L06B8
+L0673    ldd   ,s
+         orb   #$02
+         pshs  b,a
+         pshs  u
+         lbsr  creat:
+         bra   L068B
+L0680    ldd   ,s
+         orb   #$81
+L0684    pshs  b,a
+         pshs  u
+         lbsr  open:
+L068B    leas  $04,s
+         std   $02,s
+         bra   L06B8
+L0691    leas  -$04,x
+L0693    ldd   #$00CB
+         std   >errno,y  01b1
+         clra  
+         clrb  
+         bra   L06BA
+L069E    cmpx  #$0072
+         lbeq  L0642
+         cmpx  #$0061
+         lbeq  L0648
+         cmpx  #$0077
+         beq   L0673
+         cmpx  #$0064
+         beq   L0680
+         bra   L0693
+L06B8    ldd   $02,s
+L06BA    leas  $04,s
+         puls  pc,u
+         pshs  u
+         clra  
+         clrb  
+         pshs  b,a
+         ldd   $08,s
+         pshs  b,a
+         ldd   $08,s
+         pshs  b,a
+         lbra  L071A
+L06CF    pshs  u
+         ldd   $06,s
+         pshs  b,a
+         ldd   $06,s
+         pshs  b,a
+         lbsr  L05F8
+         leas  $04,s
+         tfr   d,u
+         cmpu  #$FFFF
+         bne   L06EA
+         clra  
+         clrb  
+         bra   L071F
+L06EA    clra  
+         clrb  
+         bra   L0712
+         pshs  u
+         ldd   $08,s
+         pshs  b,a
+         lbsr  L0DE4
+         leas  $02,s
+         ldd   $06,s
+         pshs  b,a
+         ldd   $06,s
+         pshs  b,a
+         lbsr  L05F8
+         leas  $04,s
+         tfr   d,u
+         stu   -$02,s
+         bge   L0710
+         clra  
+         clrb  
+         bra   L071F
+L0710    ldd   $08,s
+L0712    pshs  b,a
+         ldd   $08,s
+         pshs  b,a
+         pshs  u
+L071A    lbsr  L05A0
+         leas  $06,s
+L071F    puls  pc,u
+         pshs  u,b,a
+         ldu   $06,s
+         bra   L072B
+L0727    ldd   ,s
+         stb   ,u+
+L072B    leax  >u0012,y
+         pshs  x
+         lbsr  L0F0E
+         leas  $02,s
+         std   ,s
+         cmpd  #$000D
+         beq   L0746
+         ldd   ,s
+         cmpd  #$FFFF
+         bne   L0727
+L0746    ldd   ,s
+         cmpd  #$FFFF
+         bne   L0752
+         clra  
+         clrb  
+         bra   L0758
+L0752    clra  
+         clrb  
+         stb   ,u
+         ldd   $06,s
+L0758    leas  $02,s
+         puls  pc,u
+
+L075C    pshs  u
+         ldu   $06,s
+         leas  -$04,s
+         ldd   $08,s
+         std   ,s
+         bra   L0776
+L0768    ldd   $02,s
+         ldx   ,s
+         leax  $01,x
+         stx   ,s
+         stb   -$01,x
+         cmpb  #C$CR
+         beq   L078F
+L0776    tfr   u,d
+         leau  -dpsiz,u
+         std   -$02,s
+         ble   L078F
+         ldd   $0C,s
+         pshs  b,a
+         lbsr  L0F0E
+         leas  $02,s
+         std   $02,s
+         cmpd  #$FFFF
+         bne   L0768
+L078F    clra  
+         clrb  
+         stb   [,s]
+         ldd   $02,s
+         cmpd  #$FFFF
+         bne   L079F
+         clra  
+         clrb  
+         bra   L07A1
+L079F    ldd   $08,s
+L07A1    leas  $04,s
+         puls  pc,u
+
+L07A5    pshs  u
+         ldu   $04,s
+         leas  -$04,s
+         clra  
+         clrb  
+         bra   L07E0
+L07AF    clra  
+         clrb  
+         std   ,s
+         bra   L07CC
+L07B5    ldd   $0E,s
+         pshs  b,a
+         ldb   ,u+
+         sex   
+         pshs  b,a
+         lbsr  egg2
+         leas  $04,s
+         ldx   $0E,s
+         ldd   $06,x
+         clra  
+         andb  #C$SPC
+         bne   L07E9
+L07CC    ldd   ,s
+         addd  #$0001
+         std   ,s
+         subd  #$0001
+         cmpd  $0A,s
+         blt   L07B5
+         ldd   $02,s
+         addd  #$0001
+L07E0    std   $02,s
+         ldd   $02,s
+         cmpd  $0C,s
+         blt   L07AF
+L07E9    ldd   $02,s
+         leas  $04,s
+         puls  pc,u
+
+L07EF    pshs  u
+         leax  >$001F,y
+         stx   >varnum1,y    $01B3,y
+         leax  $06,s
+         pshs  x
+         ldd   $06,s
+         bra   L080F
+         pshs  u
+         ldd   $04,s
+         std   >varnum1,y
+         leax  $08,s
+         pshs  x
+         ldd   $08,s
+L080F    pshs  b,a
+         leax  >L0CC7,pcr
+         pshs  x
+         bsr   L0841
+         leas  $06,s
+         puls  pc,u
+         pshs  u
+         ldd   $04,s
+         std   >varnum1,y
+         leax  $08,s
+         pshs  x
+         ldd   $08,s
+         pshs  b,a
+         leax  >L0CDA,pcr
+         pshs  x
+         bsr   L0841
+         leas  $06,s
+         clra  
+         clrb  
+         stb   [>varnum1,y]
+         ldd   $04,s
+         puls  pc,u
+L0841    pshs  u
+         ldu   $06,s
+         leas  -$0B,s
+         bra   L0859
+L0849    ldb   $08,s
+         lbeq  L0A8A
+         ldb   $08,s
+         sex   
+         pshs  b,a
+         jsr   [<$11,s]
+         leas  $02,s
+L0859    ldb   ,u+
+         stb   $08,s
+         cmpb  #$25   '%
+         bne   L0849
+         ldb   ,u+
+         stb   $08,s
+         clra  
+         clrb  
+         std   $02,s
+         std   $06,s
+         ldb   $08,s
+         cmpb  #$2D   '-
+         bne   L087E
+         ldd   #$0001
+         std   >varnum4,y
+         ldb   ,u+
+         stb   $08,s
+         bra   L0884
+L087E    clra  
+         clrb  
+         std   >varnum4,y
+L0884    ldb   $08,s
+         cmpb  #$30      '0
+         bne   L088F
+         ldd   #$0030
+         bra   L0892
+L088F    ldd   #$0020
+L0892    std   >varnum5,y
+         bra   L08B2
+L0898    ldd   $06,s
+         pshs  b,a
+         ldd   #$000A
+         lbsr  L1235
+         pshs  b,a
+         ldb   $0A,s
+         sex   
+         addd  #$FFD0
+         addd  ,s++
+         std   $06,s
+         ldb   ,u+
+         stb   $08,s
+L08B2    ldb   $08,s
+         sex   
+         leax  >$00E3,y
+         leax  d,x
+         ldb   ,x
+         clra  
+         andb  #$08
+         bne   L0898
+         ldb   $08,s
+         cmpb  #$2E    '. period
+         bne   L08FB
+         ldd   #$0001
+         std   $04,s
+         bra   L08E5
+L08CF    ldd   $02,s
+         pshs  b,a
+         ldd   #$000A
+         lbsr  L1235
+         pshs  b,a
+         ldb   $0A,s
+         sex   
+         addd  #$FFD0
+         addd  ,s++
+         std   $02,s
+L08E5    ldb   ,u+
+         stb   $08,s
+         ldb   $08,s
+         sex   
+         leax  >$00E3,y
+         leax  d,x
+         ldb   ,x
+         clra  
+         andb  #$08
+         bne   L08CF
+         bra   L08FF
+L08FB    clra  
+         clrb  
+         std   $04,s
+L08FF    ldb   $08,s
+         sex   
+         tfr   d,x
+         lbra  L0A2D
+L0907    ldd   $06,s
+         pshs  b,a
+         ldx   <$15,s
+         leax  $02,x
+         stx   <$15,s
+         ldd   -$02,x
+         pshs  b,a
+         lbsr  L0A8E
+         bra   L092F
+L091C    ldd   $06,s
+         pshs  b,a
+         ldx   <$15,s
+         leax  $02,x
+         stx   <$15,s
+         ldd   -$02,x
+         pshs  b,a
+         lbsr  L0B4B
+L092F    std   ,s
+         lbra  L0A13
+L0934    ldd   $06,s
+         pshs  b,a
+         ldb   $0A,s
+         sex   
+         leax  >$00E3,y
+         leax  d,x
+         ldb   ,x
+         clra  
+         andb  #$02
+         pshs  b,a
+         ldx   <$17,s
+         leax  $02,x
+         stx   <$17,s
+         ldd   -$02,x
+         pshs  b,a
+         lbsr  L0B93
+         lbra  L0A0F
+L095A    ldd   $06,s
+         pshs  b,a
+         ldx   <$15,s
+         leax  $02,x
+         stx   <$15,s
+         ldd   -$02,x
+         pshs  b,a
+         leax  >varnum2,y
+         pshs  x
+         lbsr  L0AD2
+         lbra  L0A0F
+L0976    ldd   $04,s
+         bne   L097F
+         ldd   #$0006
+         std   $02,s
+L097F    ldd   $06,s
+         pshs  b,a
+         leax  <$15,s
+         pshs  x
+         ldd   $06,s
+         pshs  b,a
+         ldb   $0E,s
+         sex   
+         pshs  b,a
+         lbsr  egg3
+         leas  $06,s
+         lbra  L0A11
+L0999    ldx   <$13,s
+         leax  $02,x
+         stx   <$13,s
+         ldd   -$02,x
+         lbra  L0A23
+L09A6    ldx   <$13,s
+         leax  $02,x
+         stx   <$13,s
+         ldd   -$02,x
+         std   $09,s
+         ldd   $04,s
+         beq   L09EE
+         ldd   $09,s
+         std   $04,s
+         bra   L09C8
+L09BC    ldb   [<$09,s]
+         beq   L09D4
+         ldd   $09,s
+         addd  #$0001
+         std   $09,s
+L09C8    ldd   $02,s
+         addd  #$FFFF
+         std   $02,s
+         subd  #$FFFF
+         bne   L09BC
+L09D4    ldd   $06,s
+         pshs  b,a
+         ldd   $0B,s
+         subd  $06,s
+         pshs  b,a
+         ldd   $08,s
+         pshs  b,a
+         ldd   <$15,s
+         pshs  b,a
+         lbsr  L0BFE
+         leas  $08,s
+         bra   L0A1D
+L09EE    ldd   $06,s
+         pshs  b,a
+         ldd   $0B,s
+         bra   L0A11
+L09F6    ldb   ,u+
+         stb   $08,s
+         bra   L09FE
+         leas  -$0B,x
+L09FE    ldd   $06,s
+         pshs  b,a
+         leax  <$15,s
+         pshs  x
+         ldb   $0C,s
+         sex   
+         pshs  b,a
+         lbsr  L10F2
+L0A0F    leas  $04,s
+L0A11    pshs  b,a
+L0A13    ldd   <$13,s
+         pshs  b,a
+         lbsr  L0C60
+         leas  $06,s
+L0A1D    lbra  L0859
+
+L0A20    ldb   $08,s
+         sex   
+L0A23    pshs  b,a
+         jsr   [<$11,s]
+         leas  $02,s
+         lbra  L0859
+
+L0A2D    cmpx  #$0064   'd
+         lbeq  L0907
+         cmpx  #$006F   'o
+         lbeq  L091C
+         cmpx  #$0078   'x
+         lbeq  L0934
+         cmpx  #$0058   'X
+         lbeq  L0934
+         cmpx  #$0075   'u
+         lbeq  L095A
+         cmpx  #$0066   'f
+         lbeq  L0976
+         cmpx  #$0065   'e
+         lbeq  L0976
+         cmpx  #$0067   'g
+         lbeq  L0976
+         cmpx  #$0045   'E
+         lbeq  L0976
+         cmpx  #$0047   'G   
+         lbeq  L0976
+         cmpx  #$0063   'c
+         lbeq  L0999
+         cmpx  #$0073   's
+         lbeq  L09A6
+         cmpx  #$006C   'l
+         lbeq  L09F6
+         bra   L0A20
+
+L0A8A    leas  $0B,s
+         puls  pc,u
+L0A8E    pshs  u,b,a
+         leax  >varnum2,y
+         stx   ,s
+         ldd   $06,s
+         bge   L0AC3
+         ldd   $06,s
+         nega  
+         negb  
+         sbca  #$00
+         std   $06,s
+         bge   L0AB8
+         leax  >L0CEC,pcr
+         pshs  x
+         leax  >varnum2,y
+         pshs  x
+         lbsr  L114C
+         leas  $04,s
+         lbra  L0B8F
+L0AB8    ldd   #$002D
+         ldx   ,s
+         leax  $01,x
+         stx   ,s
+         stb   -$01,x
+L0AC3    ldd   $06,s
+         pshs  b,a
+         ldd   $02,s
+         pshs  b,a
+         bsr   L0AD2
+         leas  $04,s
+         lbra  L0B89
+L0AD2    pshs  u,y,x,b,a
+         ldu   $0A,s
+         clra  
+         clrb  
+         std   $02,s
+         clra  
+         clrb  
+         std   ,s
+         bra   L0AEF
+L0AE0    ldd   ,s
+         addd  #$0001
+         std   ,s
+         ldd   $0C,s
+         subd  >$0005,y
+         std   $0C,s
+L0AEF    ldd   $0C,s
+         blt   L0AE0
+         leax  >$0005,y
+         stx   $04,s
+         bra   L0B31
+L0AFB    ldd   ,s
+         addd  #$0001
+         std   ,s
+L0B02    ldd   $0C,s
+         subd  [<$04,s]
+         std   $0C,s
+         bge   L0AFB
+         ldd   $0C,s
+         addd  [<$04,s]
+         std   $0C,s
+         ldd   ,s
+         beq   L0B1B
+         ldd   #$0001
+         std   $02,s
+L0B1B    ldd   $02,s
+         beq   L0B26
+         ldd   ,s
+         addd  #$0030
+         stb   ,u+
+L0B26    clra  
+         clrb  
+         std   ,s
+         ldd   $04,s
+         addd  #$0002
+         std   $04,s
+L0B31    ldd   $04,s
+         cmpd  >$000D,y
+         bne   L0B02
+         ldd   $0C,s
+         addd  #$0030
+         stb   ,u+
+         clra  
+         clrb  
+         stb   ,u
+         ldd   $0A,s
+         leas  $06,s
+         puls  pc,u
+L0B4B    pshs  u,b,a
+         leax  >varnum2,y
+         stx   ,s
+         leau  >varnum3,y
+L0B57    ldd   $06,s
+         clra  
+         andb  #$07
+         addd  #$0030
+         stb   ,u+
+         ldd   $06,s
+         lsra  
+         rorb  
+         lsra  
+         rorb  
+         lsra  
+         rorb  
+         std   $06,s
+         bne   L0B57
+         bra   L0B79
+L0B6F    ldb   ,u
+         ldx   ,s
+         leax  $01,x
+         stx   ,s
+         stb   -$01,x
+L0B79    leau  -dpsiz,u
+         pshs  u
+         leax  >varnum3,y
+         cmpx  ,s++
+         bls   L0B6F
+         clra  
+         clrb  
+         stb   [,s]
+L0B89    leax  >varnum2,y
+         tfr   x,d
+L0B8F    leas  $02,s
+         puls  pc,u
+L0B93    pshs  u,x,b,a
+         leax  >varnum2,y
+         stx   $02,s
+         leau  >varnum3,y
+L0B9F    ldd   $08,s
+         clra  
+         andb  #$0F
+         std   ,s
+         pshs  b,a
+         ldd   $02,s
+         cmpd  #$0009
+         ble   L0BC1
+         ldd   $0C,s
+         beq   L0BB9
+         ldd   #$0041
+         bra   L0BBC
+L0BB9    ldd   #$0061
+L0BBC    addd  #$FFF6
+         bra   L0BC4
+L0BC1    ldd   #$0030
+L0BC4    addd  ,s++
+         stb   ,u+
+         ldd   $08,s
+         lsra  
+         rorb  
+         lsra  
+         rorb  
+         lsra  
+         rorb  
+         lsra  
+         rorb  
+         anda  #$0F
+         std   $08,s
+         bne   L0B9F
+         bra   L0BE4
+L0BDA    ldb   ,u
+         ldx   $02,s
+         leax  $01,x
+         stx   $02,s
+         stb   -$01,x
+L0BE4    leau  -dpsiz,u
+         pshs  u
+         leax  >varnum3,y
+         cmpx  ,s++
+         bls   L0BDA
+         clra  
+         clrb  
+         stb   [<$02,s]
+         leax  >varnum2,y
+         tfr   x,d
+         lbra  L0CD6
+L0BFE    pshs  u
+         ldu   $06,s
+         ldd   $0A,s
+         subd  $08,s
+         std   $0A,s
+         ldd   >varnum4,y
+         bne   L0C33
+         bra   L0C1B
+L0C10    ldd   >varnum5,y
+         pshs  b,a
+         jsr   [<$06,s]
+         leas  $02,s
+L0C1B    ldd   $0A,s
+         addd  #$FFFF
+         std   $0A,s
+         subd  #$FFFF
+         bgt   L0C10
+         bra   L0C33
+L0C29    ldb   ,u+
+         sex   
+         pshs  b,a
+         jsr   [<$06,s]
+         leas  $02,s
+L0C33    ldd   $08,s
+         addd  #$FFFF
+         std   $08,s
+         subd  #$FFFF
+         bne   L0C29
+         ldd   >varnum4,y
+         beq   L0C5E
+         bra   L0C52
+L0C47    ldd   >varnum5,y
+         pshs  b,a
+         jsr   [<$06,s]
+         leas  $02,s
+L0C52    ldd   $0A,s
+         addd  #$FFFF
+         std   $0A,s
+         subd  #$FFFF
+         bgt   L0C47
+L0C5E    puls  pc,u
+L0C60    pshs  u
+         ldu   $06,s
+         ldd   $08,s
+         pshs  b,a
+         pshs  u
+         lbsr  egg4
+         leas  $02,s
+         nega  
+         negb  
+         sbca  #$00
+         addd  ,s++
+         std   $08,s
+         ldd   >varnum4,y
+         bne   L0CA2
+         bra   L0C8A
+L0C7F    ldd   >varnum5,y
+         pshs  b,a
+         jsr   [<$06,s]
+         leas  $02,s
+L0C8A    ldd   $08,s
+         addd  #$FFFF
+         std   $08,s
+         subd  #$FFFF
+         bgt   L0C7F
+         bra   L0CA2
+L0C98    ldb   ,u+
+         sex   
+         pshs  b,a
+         jsr   [<$06,s]
+         leas  $02,s
+L0CA2    ldb   ,u
+         bne   L0C98
+         ldd   >varnum4,y
+         beq   L0CC5
+         bra   L0CB9
+L0CAE    ldd   >varnum5,y
+         pshs  b,a
+         jsr   [<$06,s]
+         leas  $02,s
+L0CB9    ldd   $08,s
+         addd  #$FFFF
+         std   $08,s
+         subd  #$FFFF
+         bgt   L0CAE
+L0CC5    puls  pc,u
+
+L0CC7    pshs  u
+         ldd   >varnum1,y
+         pshs  b,a
+         ldd   $06,s
+         pshs  b,a
+         lbsr  egg2
+L0CD6    leas  $04,s
+         puls  pc,u
+L0CDA    pshs  u
+         ldd   $04,s
+         ldx   >varnum1,y
+         leax  $01,x
+         stx   >varnum1,y
+         stb   -$01,x
+         puls  pc,u
+L0CEC    blt   L0D21
+         leas  -$09,y
+         pshu  y,x,dp
+
+*         neg   <u0034  branch to middle of instruct? 
+*                      
+*L0CF2    fcb    $00
+*L0CF3    fcb    $34
+*
+*         nega 
+
+         fcb   $00       what function in life do I have
+egg2     pshs  u         disassembled as neg <u0034 then neg 
+         ldu   $06,s
+         ldd   u0006,u
+         anda  #$80
+         andb  #$22
+         cmpd  #$8002
+         beq   L0D17
+         ldd   u0006,u
+         clra  
+         andb  #$22
+         cmpd  #$0002
+         lbne  L0E2F
+         pshs  u
+         lbsr  L1062
+         leas  $02,s
+L0D17    ldd   u0006,u
+         clra  
+         andb  #$04
+         beq   L0D53
+         ldd   #$0001
+L0D21    pshs  b,a
+         leax  $07,s
+         pshs  x
+         ldd   u0008,u
+         pshs  b,a
+         ldd   u0006,u
+         clra  
+         andb  #$40
+         beq   L0D38
+         leax  >L13EC,pcr    writeln: ??
+         bra   L0D3C
+L0D38    leax  >L13D3,pcr    write:  ??
+L0D3C    tfr   x,d
+         tfr   d,x
+         jsr   ,x
+         leas  $06,s
+         cmpd  #$FFFF
+         bne   L0D94
+         ldd   u0006,u
+         orb   #C$SPC
+         std   u0006,u
+         lbra  L0E2F
+L0D53    ldd   u0006,u
+         anda  #$01
+         clrb  
+         std   -$02,s
+         bne   L0D63
+         pshs  u
+         lbsr  L0E4C
+         leas  $02,s
+L0D63    ldd   ,u
+         addd  #$0001
+         std   ,u
+         subd  #$0001
+         tfr   d,x
+         ldd   $04,s
+         stb   ,x
+         ldd   ,u
+         cmpd  u0004,u
+         bcc   L0D89
+         ldd   u0006,u
+         clra  
+         andb  #$40
+         beq   L0D94
+         ldd   $04,s
+         cmpd  #$000D
+         bne   L0D94
+L0D89    pshs  u
+         lbsr  L0E4C
+         std   ,s++
+         lbne  L0E2F
+L0D94    ldd   $04,s
+         puls  pc,u
+         pshs  u
+         ldu   $04,s
+         ldd   $06,s
+         pshs  b,a
+         pshs  u
+         ldd   #$0008
+         lbsr  L1294
+         pshs  b,a
+         lbsr  egg2
+         leas  $04,s
+         ldd   $06,s
+         pshs  b,a
+         pshs  u
+         lbsr  egg2
+         lbra  L0F06
+L0DBB    pshs  u,b,a
+         leau  >u0012,y
+         clra  
+         clrb  
+         std   ,s
+         bra   L0DD1
+L0DC7    tfr   u,d
+         leau  u000D,u
+         pshs  b,a
+         bsr   L0DE4
+         leas  $02,s
+L0DD1    ldd   ,s
+         addd  #$0001
+         std   ,s
+         subd  #$0001
+         cmpd  #$0010
+         blt   L0DC7
+         lbra  L0E48
+L0DE4    pshs  u
+         ldu   $04,s
+         leas  -$02,s
+         cmpu  #$0000
+         beq   L0DF4
+         ldd   u0006,u
+         bne   L0DFA
+L0DF4    ldd   #$FFFF
+         lbra  L0E48
+L0DFA    ldd   u0006,u
+         clra  
+         andb  #$02
+         beq   L0E09
+         pshs  u
+         bsr   L0E1E
+         leas  $02,s
+         bra   L0E0B
+L0E09    clra  
+         clrb  
+L0E0B    std   ,s
+         ldd   u0008,u
+         pshs  b,a
+         lbsr  close:
+         leas  $02,s
+         clra  
+         clrb  
+         std   u0006,u
+         ldd   ,s
+         bra   L0E48
+L0E1E    pshs  u
+         ldu   $04,s
+         beq   L0E2F
+         ldd   u0006,u
+         clra  
+         andb  #$22
+         cmpd  #$0002
+         beq   L0E34
+L0E2F    ldd   #$FFFF
+         puls  pc,u
+
+L0E34    ldd   u0006,u
+         anda  #$80
+         clrb  
+         std   -$02,s
+         bne   L0E44
+         pshs  u
+         lbsr  L1062
+         leas  $02,s
+L0E44    pshs  u
+         bsr   L0E4C
+L0E48    leas  $02,s
+         puls  pc,u     return
+
+L0E4C    pshs  u
+         ldu   $04,s
+         leas  -$04,s
+         ldd   u0006,u
+         anda  #$01
+         clrb  
+         std   -$02,s
+         bne   L0E7E
+         ldd   ,u
+         cmpd  u0004,u
+         beq   L0E7E
+         clra  
+         clrb  
+         pshs  b,a
+         pshs  u
+         lbsr  L0F0A
+         leas  $02,s
+         ldd   $02,x
+         pshs  b,a
+         ldd   ,x
+         pshs  b,a
+         ldd   u0008,u
+         pshs  b,a
+         lbsr  lseek:
+         leas  $08,s
+L0E7E    ldd   ,u
+         subd  u0002,u
+         std   $02,s
+         lbeq  L0EF6
+         ldd   u0006,u
+         anda  #$01
+         clrb  
+         std   -$02,s
+         lbeq  L0EF6
+         ldd   u0006,u
+         clra  
+         andb  #$40
+         beq   L0ECD
+         ldd   u0002,u
+         bra   L0EC5
+L0E9E    ldd   $02,s
+         pshs  b,a
+         ldd   ,u
+         pshs  b,a
+         ldd   u0008,u
+         pshs  b,a
+         lbsr  writeln
+         leas  $06,s
+         std   ,s
+         cmpd  #$FFFF
+         bne   L0EBB
+         leax  $04,s
+         bra   L0EE5
+L0EBB    ldd   $02,s
+         subd  ,s
+         std   $02,s
+         ldd   ,u
+         addd  ,s
+L0EC5    std   ,u
+         ldd   $02,s
+         bne   L0E9E
+         bra   L0EF6
+L0ECD    ldd   $02,s
+         pshs  b,a
+         ldd   u0002,u
+         pshs  b,a
+         ldd   u0008,u
+         pshs  b,a
+         lbsr  write:      was L13D3
+         leas  $06,s
+         cmpd  $02,s
+         beq   L0EF6
+         bra   L0EE7
+L0EE5    leas  -$04,x
+L0EE7    ldd   u0006,u
+         orb   #C$SPC
+         std   u0006,u
+         ldd   u0004,u
+         std   ,u
+         ldd   #$FFFF
+         bra   L0F06
+L0EF6    ldd   u0006,u
+         ora   #$01
+         std   u0006,u
+         ldd   u0002,u
+         std   ,u
+         addd  u000B,u
+         std   u0004,u
+         clra  
+         clrb  
+L0F06    leas  $04,s
+         puls  pc,u
+L0F0A    pshs  u
+         puls  pc,u
+L0F0E    pshs  u
+         ldu   $04,s
+         beq   L0F5A
+         ldd   u0006,u
+         anda  #$01
+         clrb  
+         std   -$02,s
+         bne   L0F5A
+         ldd   ,u
+         cmpd  u0004,u
+         bcc   L0F36
+         ldd   ,u
+         addd  #$0001
+         std   ,u
+         subd  #$0001
+         tfr   d,x
+         ldb   ,x
+         clra  
+         lbra  L1060
+L0F36    pshs  u
+         lbsr  L0FA9
+         lbra  L105E
+         pshs  u
+         ldu   $06,s
+         beq   L0F5A
+         ldd   u0006,u
+         clra  
+         andb  #$01
+         beq   L0F5A
+         ldd   $04,s
+         cmpd  #$FFFF
+         beq   L0F5A
+         ldd   ,u
+         cmpd  u0002,u
+         bhi   L0F5F
+L0F5A    ldd   #$FFFF
+         puls  pc,u
+L0F5F    ldd   ,u
+         addd  #$FFFF
+         std   ,u
+         tfr   d,x
+         ldd   $04,s
+         stb   ,x
+         ldd   $04,s
+         puls  pc,u
+         pshs  u
+         ldu   $04,s
+         leas  -$04,s
+         pshs  u
+         lbsr  L0F0E
+         leas  $02,s
+         std   $02,s
+         cmpd  #$FFFF
+         beq   L0F94
+         pshs  u
+         lbsr  L0F0E
+         leas  $02,s
+         std   ,s
+         cmpd  #$FFFF
+         bne   L0F99
+L0F94    ldd   #$FFFF
+         bra   L0FA5
+L0F99    ldd   $02,s
+         pshs  b,a
+         ldd   #$0008
+         lbsr  L12AB
+         addd  ,s
+L0FA5    leas  $04,s
+         puls  pc,u
+L0FA9    pshs  u
+         ldu   $04,s
+         leas  -$02,s
+         ldd   u0006,u
+         anda  #$80
+         andb  #$31
+         cmpd  #$8001
+         beq   L0FCF
+         ldd   u0006,u
+         clra  
+         andb  #$31
+         cmpd  #$0001
+         lbne  L1048
+         pshs  u
+         lbsr  L1062
+         leas  $02,s
+L0FCF    leax  >u0012,y
+         pshs  x
+         cmpu  ,s++
+         bne   L0FEC
+         ldd   u0006,u
+         clra  
+         andb  #$40
+         beq   L0FEC
+         leax  >$001F,y
+         pshs  x
+         lbsr  L0E1E
+         leas  $02,s
+L0FEC    ldd   u0006,u
+         clra  
+         andb  #$08
+         beq   L1018
+         ldd   u000B,u
+         pshs  b,a
+         ldd   u0002,u
+         pshs  b,a
+         ldd   u0008,u
+         pshs  b,a
+         ldd   u0006,u
+         clra  
+         andb  #$40
+         beq   L100C
+         leax  >L13C3,pcr  readln:
+         bra   L1010
+L100C    leax  >L13A2,pcr  compiler dosent like "read:" label
+L1010    tfr   x,d
+         tfr   d,x
+         jsr   ,x
+         bra   L102A
+L1018    ldd   #$0001
+         pshs  b,a
+         leax  u000A,u
+         stx   u0002,u
+         pshs  x
+         ldd   u0008,u
+         pshs  b,a
+         lbsr  read:
+
+L102A    leas  $06,s
+         std   ,s
+         ldd   ,s
+         bgt   L104D
+         ldd   u0006,u
+         pshs  b,a
+         ldd   $02,s
+         beq   L103F
+         ldd   #$0020
+         bra   L1042
+L103F    ldd   #$0010
+L1042    ora   ,s+
+         orb   ,s+
+         std   u0006,u
+L1048    ldd   #$FFFF
+         bra   L105E
+L104D    ldd   u0002,u
+         addd  #$0001
+         std   ,u
+         ldd   u0002,u
+         addd  ,s
+         std   u0004,u
+         ldb   [<u0002,u]
+         clra  
+L105E    leas  $02,s
+L1060    puls  pc,u
+L1062    pshs  u
+         ldu   $04,s
+         ldd   u0006,u
+         clra  
+         andb  #$C0
+         bne   L109A
+         leas  <-$20,s
+         leax  ,s
+         pshs  x
+         ldd   u0008,u
+         pshs  b,a
+         clra  
+         clrb  
+         pshs  b,a
+         lbsr  getstat:
+         leas  $06,s
+         ldd   u0006,u
+         pshs  b,a
+         ldb   $02,s
+         bne   L108E
+         ldd   #$0040
+         bra   L1091
+L108E    ldd   #$0080
+L1091    ora   ,s+
+         orb   ,s+
+         std   u0006,u
+         leas  <$20,s
+L109A    ldd   u0006,u
+         ora   #$80
+         std   u0006,u
+         clra  
+         andb  #$0C
+         beq   L10A7
+         puls  pc,u
+
+L10A7    ldd   u000B,u
+         bne   L10BC
+         ldd   u0006,u
+         clra  
+         andb  #$40
+         beq   L10B7
+         ldd   #$0080
+         bra   L10BA
+L10B7    ldd   #$0100
+L10BA    std   u000B,u
+L10BC    ldd   u0002,u
+         bne   L10D1
+         ldd   u000B,u
+         pshs  b,a
+         lbsr  ibrk     L14BA
+         leas  $02,s
+         std   u0002,u
+         cmpd  #$FFFF
+         beq   L10D9
+L10D1    ldd   u0006,u
+         orb   #$08
+         std   u0006,u
+         bra   L10E8
+L10D9    ldd   u0006,u
+         orb   #$04
+         std   u0006,u
+         leax  u000A,u
+         stx   u0002,u
+         ldd   #$0001
+         std   u000B,u
+L10E8    ldd   u0002,u
+         addd  u000B,u
+         std   u0004,u
+         std   ,u
+         puls  pc,u
+
+L10F2    pshs  u
+         ldb   $05,s
+         sex   
+         tfr   d,x
+         bra   L1118
+L10FB    ldd   [<$06,s]
+         addd  #$0004
+         std   [<$06,s]
+         leax  >L112F,pcr
+         bra   L1114
+L110A    ldb   $05,s
+         stb   >$0010,y
+         leax  >$000F,y
+L1114    tfr   x,d
+         puls  pc,u
+L1118    cmpx  #$0064   'd
+         beq   L10FB
+         cmpx  #$006F   'o
+         lbeq  L10FB
+         cmpx  #$0078   'x
+         lbeq  L10FB
+         bra   L110A
+         puls  pc,u
+
+*L112F    neg   <u0034 branch in here ?
+*L112F    fcb $00
+*L1130    fcb $34
+*         nega  
+ 
+L112F    fcb $00         used above
+egg3     pshs  u         disassembled as neg <u0034 then neg 
+
+         leax  >L113A,pcr
+         tfr   x,d
+         puls  pc,u
+*
+* L113A    neg   <u0034 same story here except somebody jumps 
+*                        to the front byte too
+*
+
+L113A    fcb  $00        what do i do?
+egg4     pshs  u         disassembled as neg <u0034 then neg 
+         ldu   $04,s
+L113F    ldb   ,u+
+         bne   L113F
+         tfr   u,d
+         subd  $04,s
+         addd  #$FFFF
+         puls  pc,u
+
+L114C    pshs  u
+         ldu   $06,s
+         leas  -$02,s
+         ldd   $06,s
+         std   ,s
+L1156    ldb   ,u+
+         ldx   ,s
+         leax  $01,x
+         stx   ,s
+         stb   -$01,x
+         bne   L1156
+         bra   L118B
+
+         pshs  u
+         ldu   $06,s
+         leas  -$02,s
+         ldd   $06,s
+         std   ,s
+L116E    ldx   ,s
+         leax  $01,x
+         stx   ,s
+         ldb   -$01,x
+         bne   L116E
+         ldd   ,s
+         addd  #$FFFF
+         std   ,s
+
+L117F    ldb   ,u+
+         ldx   ,s
+         leax  $01,x
+         stx   ,s
+         stb   -$01,x
+         bne   L117F
+
+L118B    ldd   $06,s
+         leas  $02,s
+         puls  pc,u     return
+
+         pshs  u
+         ldu   $04,s
+         bra   L11A7
+L1197    ldx   $06,s
+         leax  $01,x
+         stx   $06,s
+         ldb   -$01,x
+         bne   L11A5
+         clra  
+         clrb  
+         puls  pc,u      return
+
+L11A5    leau  dpsiz,u
+L11A7    ldb   ,u
+         sex   
+         pshs  b,a
+         ldb   [<$08,s]
+         sex   
+         cmpd  ,s++
+         beq   L1197
+         ldb   [<$06,s]
+         sex   
+         pshs  b,a
+         ldb   ,u
+         sex   
+         subd  ,s++
+         puls  pc,u    return
+
+L11C2    pshs  u
+         ldu   $04,s
+         leas  -$05,s
+         clra  
+         clrb  
+         std   $01,s
+L11CC    ldb   ,u+
+         stb   ,s
+         cmpb  #C$SPC
+         beq   L11CC
+         ldb   ,s
+         cmpb  #$09
+         lbeq  L11CC
+         ldb   ,s
+         cmpb  #$2D    '-
+         bne   L11E7
+         ldd   #$0001
+         bra   L11E9
+L11E7    clra  
+         clrb  
+L11E9    std   $03,s
+         ldb   ,s
+         cmpb  #$2D  '-
+         beq   L120F
+         ldb   ,s
+         cmpb  #$2B  '+
+         bne   L1213
+         bra   L120F
+L11F9    ldd   $01,s
+         pshs  b,a
+         ldd   #$000A
+         lbsr  L1235
+         pshs  b,a
+         ldb   $02,s
+         sex   
+         addd  ,s++
+         addd  #$FFD0
+         std   $01,s
+L120F    ldb   ,u+
+         stb   ,s
+L1213    ldb   ,s
+         sex   
+         leax  >$00E3,y
+         leax  d,x
+         ldb   ,x
+         clra  
+         andb  #$08
+         bne   L11F9
+         ldd   $03,s
+         beq   L122F
+         ldd   $01,s
+         nega  
+         negb  
+         sbca  #$00
+         bra   L1231
+L122F    ldd   $01,s
+L1231    leas  $05,s
+         puls  pc,u    return
+
+L1235    tsta  
+         bne   L124A
+         tst   $02,s
+         bne   L124A
+         lda   $03,s
+         mul   
+         ldx   ,s
+         stx   $02,s
+         ldx   #$0000
+         std   ,s
+         puls  pc,b,a    return
+
+L124A    pshs  b,a
+         ldd   #$0000
+         pshs  b,a
+         pshs  b,a
+         lda   $05,s
+         ldb   $09,s
+         mul   
+         std   $02,s
+         lda   $05,s
+         ldb   $08,s
+         mul   
+         addd  $01,s
+         std   $01,s
+         bcc   L1267
+         inc   ,s
+L1267    lda   $04,s
+         ldb   $09,s
+         mul   
+         addd  $01,s
+         std   $01,s
+         bcc   L1274
+         inc   ,s
+L1274    lda   $04,s
+         ldb   $08,s
+         mul   
+         addd  ,s
+         std   ,s
+         ldx   $06,s
+         stx   $08,s
+         ldx   ,s
+         ldd   $02,s
+         leas  $08,s
+         rts   
+
+
+         tstb  
+         beq   L129E
+
+L128B    asr   $02,s
+         ror   $03,s
+         decb  
+         bne   L128B
+         bra   L129E
+
+L1294    tstb  
+         beq   L129E
+
+L1297    lsr   $02,s
+         ror   $03,s
+         decb  
+         bne   L1297
+
+
+L129E    ldd   $02,s
+         pshs  b,a
+         ldd   $02,s
+         std   $04,s
+         ldd   ,s
+         leas  $04,s
+         rts   
+
+
+
+L12AB    tstb  
+         beq   L129E
+L12AE    lsl   $03,s
+         rol   $02,s
+         decb  
+         bne   L12AE
+         bra   L129E
+
+
+*************************************************
+*
+*  Found in stat.a c-compiler sources
+*  getstat code (code,path,buffer) 
+*
+*** See
+***  Section 3 - C System Calls page 3-16
+***  of the Microware C compiler user's guide
+***  for interesting info on "Code" meanings
+*
+
+*  Get status - Returns the status of a file or device
+*               Wildcard call exit status differs based on cal code
+* entry:
+*       a -> path number 
+*       b -> function code
+*
+* exit:
+*       exit status differs based on cal code
+*
+* error:
+*       CC -> Carry set on error (usually)
+*       b  -> error code
+* 
+
+getstat: lda   $05,s      get the path number
+         ldb   $03,s      get the code
+         beq   getst30    code is 0 ? Buffer (SS.Opt)
+         cmpb  #SS.Ready   
+         beq   getst40    data available scf dev
+         cmpb  #SS.EOF
+         beq   getst40    EOF & error check
+         cmpb  #SS.Size
+         beq   getst10
+         cmpb  #SS.Pos    file position 
+         beq   getst10
+
+
+*  can't do other codes
+         ldb   #E$UnkSvc  load error unknow service code
+         lbra  _os9err:   head for error routine
+
+
+* Code 2
+* entry:
+*       a -> path number 
+*       b -> function code 2 (SS.Size)
+*
+* exit:
+*       x -> most significant 16 bits of the current file size 
+*       u -> least significant 16 bits of the current file size 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+* Code 5    
+* entry:
+*       a -> path number 
+*       b -> function code 5 (SS.Pos)
+*
+* exit:
+*       x -> most significant 16 bits of the current file position 
+*       u -> least significant 16 bits of the current file position
+* 
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*      
+
+getst10  pshs  u         stack u since getstt modifies it
+         os9   I$GetStt 
+         bcc   getst20   successful ?? go store info
+         puls  u         otherwise pop our u
+         lbra  _os9err:  head for error procesing
+
+getst20  stx   [<$08,s]  store MSW
+         ldx   $08,s     get address of destination
+         stu   $02,x     store LSW
+         puls  u         restore register variable
+         clra            clear d
+         clrb  
+         rts             return to caller   
+
+* Code 0  - 32 bytes into buffer                
+* entry:
+*       a -> path number 
+*       b -> function code 2 (SS.opt)
+*       x -> address to receive the status packet
+*
+* exit:
+*      none 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+
+getst30  ldx   $06,s     load address to receive status packet
+
+
+* Code 6  - End of file                
+* entry:
+*       a -> path number 
+*       b -> function code 6 (SS.eof)
+*
+* exit:
+*      If there is NO end of file
+*       CC -> carry clear
+*       b  -> $00 (zeroed)
+*
+*      If there IS an end of file
+*       CC -> carry set
+*       b  -> $D3 (E$EOF)
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+
+getst40  os9   I$GetStt  make the cal
+         lbra  _sysret
+
+*****************************************************
+*
+*  Found in stat.a c-compiler sources
+*  setstat(code,failname,buffer) 
+*  setstat(code,failname,size) 
+*
+*** See
+***  Section 3 - C System Calls page 3-37
+***  of the Microware C compiler user's guide
+***  for interesting info on "Code" meanings
+*
+* Set status - Returns the status of a file or device
+*               Wildcard call exit status differs based on cal code
+* entry:
+*       a -> path number 
+*       b -> function code
+*
+* exit:
+*       exit status differs based on cal code
+*
+* error:
+*       CC -> Carry set on error (usually)
+*       b  -> error code
+* 
+*
+* setstat(code,path,buffer) or
+* setstat(code,path,offset)
+
+setsat:
+         lda   $05,s      get the path number
+         ldb   $03,s      get the code
+         beq   setst10    code is 0
+         cmpb  #SS.Size   code is 2
+         beq   setst20
+*                         No other codes permitted
+         ldb   #E$UnkSvc  unknow service code
+         lbra  _os9err:
+
+* Code 0
+* entry:
+*       a -> path number 
+*       b -> function code 0 (SS.opt)
+*       x -> address to receive the status packet
+*
+* exit:
+*      none 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+
+setst10  ldx   $06,s      x gets the address of the status packet
+         os9   I$SetStt 
+         lbra  _sysret
+
+* Code 2
+* entry:
+*       a -> path number 
+*       b -> function code 2 (SS.Size)
+*
+* exit:
+*       x -> most significant 16 bits of the desired file size 
+*       u -> least significant 16 bits of the desired file size 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+
+setst20  pshs  u          stack the u since setstat modifies it 
+         ldx   $08,s      get MSW
+         ldu   $0A,s      get LSW
+         os9   I$SetStt   make the call
+         puls  u          bring back the orig u
+         lbra  _sysret    return
+*
+*  end of getstat & setstat
+*
+*
+*****************************************************
+*
+*  Found in access.a c-compiler sources
+*  access(fname,perm)
+*
+*** See
+***  Section 3 - C System Calls page 3-4
+***  of the Microware C compiler user's guide
+***  for interesting info 
+*
+
+* Open Path - Opens a path to the an existing file or device
+*             as specified by the path list
+* entry:
+*       a -> access mode (D S PE PW PR E W R) 
+*       x -> address of the path list 
+*
+* exit:
+*       a -> path number 
+*       x -> address of the last btye of the path list + 1 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+* Close Path - Terminates I/O path
+*              (performs an impledd I$Detach call)
+* entry:
+*       a -> path number
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+
+
+* access test
+access:
+          ldx   $02,s    get address of path list
+          lda   $05,s    get access mode (permissions)
+          os9   I$Open   attempt to open
+          bcs   access10 didn't open ? no need to 
+          os9   I$Close  Close it
+access10 lbra  _sysret   return
+
+
+* open a path
+open:    ldx   $02,s    get address of the path list
+         lda   $05,s    get access mode permisions
+         os9   I$Open   attempt the opoen
+         lbcs  _os9err: didn't open go to error handler
+         tfr   a,b      path is open put a in b
+         clra           clear a
+         rts            return
+
+* close a path
+close:   lda   $03,s    get path number
+         os9   I$Close  go close it
+         lbra  _sysret  return
+
+* mknod (name,mode)
+* Make Directory - Creates an initializes a dircectory
+*
+* entry:
+*       b -> directory attributes
+*       x -> address of the path list 
+*
+* exit:
+*       x -> address of the last btye of the path list + 1 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+
+mknod:   ldx   $02,s     get address of the path list
+         ldb   $05,s     get access mode permission
+         os9   I$MakDir  make the call
+         lbra  _sysret   return
+
+
+
+* create (fname,mode)
+* Create File - Creates and opens a disk file
+*
+* entry:
+*       a -> access mode (write or update)
+*       b -> file attributes
+*       x -> address of the path list 
+*
+* exit:
+*       a -> path number
+*       x -> address of the last btye of the path list + 1;
+*            trailing blanks are skipped. 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+
+creat:   ldx   $02,s    get address of the path list
+         lda   $05,s    get access modes
+         tfr   a,b      proto attr
+         andb  #EPEXEC. save exec bits public and owner
+         orb   #pmode   now add the default modes
+         os9   I$Create go make the file
+         bcs   creat10  failed creation ?
+ccret    tfr   a,b      move path to b
+         clra           clear a
+         rts            return
+
+creat10  cmpb  #E$CEF   already there ?    
+         lbne  _os9err: no a different error bail out
+
+*  is it a directory although we want a file instead?
+         lda   $05,s    get the mode
+         bita  #$80     trying to create a directrory?
+         lbne  _os9err: yes - bail out
+
+*  if already there attempt to open with proper access rights
+         anda  #$07     access mode bits
+         ldx   $02,s    get the name again
+         os9   I$Open   try and open it 
+         lbcs  _os9err: still fails - bail out
+
+
+* Set Stat Code 2 (SS.SIZE)
+* entry:
+*       a -> path number 
+*       b -> function code 2 (SS.Size)
+*
+* exit:
+*       x -> most significant 16 bits of the desired file size 
+*       u -> least significant 16 bits of the desired file size 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+         pshs  u,a      we got it open Yippee
+         ldx   #$0000   set file size
+         leau  ,x       to zero
+         ldb   #SS.Size set function code
+*                       path number of open file is in a from I$Iopen
+         os9   I$SetStt make the call  
+         puls  u,a      pop u and a back
+         bcc   ccret    contine as we have created the file
+
+         pshs  b        set stat fail ? save error code
+         os9   I$Close  call close on file
+         puls  b        pop the setstat error code
+         lbra  _os9err: head for error handler
+
+
+* unlink(fname)
+* Delete File - Deletes a specified disk file
+* entry:
+*       x -> address of the path list
+*
+* exit:
+*       x -> address of the last btye of the path list + 1;
+*            trailing blanks are skipped. 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+
+unlink:  ldx   $02,s     get address of the path list      
+         os9   I$Delete  make the call 
+         lbra  _sysret   return
+
+* dup(fildes)
+* Duplicate Path - Returns a synonymous path number
+* entry:
+*       a -> old path number (number of path to duplicate)
+*
+* exit:
+*       a -> new path number if NO error
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+*
+
+dup:     lda   $03,s    get path number
+         os9   I$Dup    make the call
+         lbcs  _os9err: didn't dup go to error handler
+         tfr   a,b      move the new path num into b
+         clra           clear a
+         rts            return
+
+*
+*  end of access code
+***************************************************** 
+*
+*  Found in io.a c-compiler sources
+*
+*** See
+***  Section 3 - C System Calls
+***  of the Microware C compiler user's guide
+***  for interesting info 
+*
+* Read  - Reads n bytes from the specified path
+* entry:
+*       a -> path number
+*       x -> address in which to stor the data
+*       y -> is the number of bytes to read
+*
+* exit:
+*       y -> number of bytes read 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+
+
+read:
+L13A2    pshs  y       stack current y 
+         ldx   $06,s   get address to store at
+         lda   $05,s   get path number
+         ldy   $08,s   get number of bytes to read
+         pshs  y       stack the number of to read also 
+         os9   I$Read  make the call
+
+
+read1    bcc   rdexit  no problem if carry clear
+         cmpb  #E$EOF  is it end of file ??
+         bne   read10  nope then head for error handler
+         clra          was the end of the file
+         clrb          then clear a & b
+         puls  pc,y,x  pop the stacked values (cheap rts)
+
+read10   puls  y,x
+         lbra  _os9err:
+rdexit   tfr   y,d
+         puls  pc,y,x
+
+
+
+
+* Read Line with Editing  - Reads text line with editting
+* entry:
+*       a -> path number
+*       x -> address in which to stor the data
+*       y -> is the max number of bytes to read
+*
+* exit:
+*       y -> number of bytes read 
+*
+* error:
+*       CC -> Carry set on error
+*       b  -> error code (if any)
+
+readln:
+L13C3    pshs  y        save data pointer
+         lda   $05,s    get the path number
+         ldx   $06,s    get the buffer address
+         ldy   $08,s    get the number to read
+         pshs  y        save request for later
+         os9   I$ReadLn read it 
+         bra   read1    always go back test for eof
+
+write:
+L13D3    pshs  y        save data pointer 
+         ldy   $08,s    get count
+         beq   write10    
+         lda   $05,s    get file number
+         ldx   $06,s    get buffer address
+         os9   I$Write  write it
+
+write1   bcc   write10  good write head out
+         puls  y        error in writing ? get data pointer
+         lbra  _os9err: head for error handler
+
+write10  tfr   y,d      good write
+         puls  pc,y     return 
+
+writeln:
+L13EC    pshs  y        save data pointer
+         ldy   $08,s    get the count 
+         beq   write10  count zero ??  go to return
+         lda   $05,s    something to write get path number 
+         ldx   $06,s    get buffer address
+         os9   I$WritLn write it
+         bra   write1   goto return
+
+*  lseek(fd, offset, type)
+lseek:   pshs  u        save the register variable
+         ldd   10,s     get type
+*        ldd   $0A,s    get type 
+         bne   lseek10
+         ldu   #$0000
+         ldx   #$0000
+         bra   doseek
+
+lseek10  cmpd  #$0001  from here?
+         beq   here
+         cmpd  #$0002  from the end?
+         beq   frmend
+*                      otherwise it was passed a bad type
+*        ldb   #$F7
+         ldb   #E$SEEK
+
+lserr    clra            seek error routine 
+         std   >errno,y  was $01b1
+         ldd   #-1           $FFFF
+         leax  >_flacc,y     $01a5
+         std   ,x
+         std   $02,x
+         puls  pc,u       return 
+
+* from the end
+frmend   lda   $05,s      get the path number
+         ldb   #SS.size   $02 file size code
+         os9   I$GetStt   get the file size
+         bcs   lserr      if error go to error code
+
+         bra   doseek     if not seek to position
+
+here     lda   $05,s      get path number
+         ldb   #SS.pos    $05 file position
+         os9   I$GetStt   get the postion
+         bcs   lserr      if error go to error code
+
+doseek   tfr   u,d        work on the LSW first
+         addd  $08,s
+         std   _flacc+2,y
+         tfr   d,u
+         tfr   x,d
+         adcb  $07,s
+         adca  $06,s
+         bmi   lserr     seek is before the beginning of the file
+         tfr   d,x
+         std   _flacc,y
+
+         lda   $05,s     get the path number
+         os9   I$Seek   
+         bcs   lserr     if error go to error code
+
+         leax  _flacc,y
+         puls  pc,u      return
+
+sbrk:    ldd   memend,y  get hi bound   
+*         ldd   >$01a3,y  disassembly
+*         pshs  b,a       disassembly
+         pshs  d         save it
+         ldd   $04,s     get required size
+         cmpd  spare,y   any spare left
+*         bcs   L1497     disassembly
+         blo    sbrk20
+
+*  have to get some from the system         
+         addd  memend,y   add current size
+         pshs  y          save data pointer
+         subd  ,s         adjust for base
+         os9   F$Mem      re-size memory
+         tfr   y,d        save the high bound
+         puls  y          restore the data paointer
+         bcc   sbrk10     branch if NO error
+         ldd   #-1        return error code
+         leas  $02,s      junk scratch
+         rts   
+
+sbrk10   std   memend,y   save new memory address
+         addd  spare,y    add in spare bytes ($01CD)
+         subd  ,s         less old base
+         std   spare,y    is new spare value ($01CD)  
+
+*  now spare is big enough
+sbrk20   leas  $02,s      junk scratch    L1497
+         ldd   spare,y    get spare count 
+         pshs  d 
+*        pshs  b,a
+         subd  $04,s      less size
+         std   spare,y    update value
+         ldd   memend,y   get hi bound
+         subd  ,s++       base of free memeory
+         pshs  d          save it
+*        pshs  b,a       
+
+         clra  
+         ldx   ,s
+sbrk30   sta   ,x+       clear new memory
+         cmpx  memend,y 
+         bcs   sbrk30
+*        puls  pc,b,a
+         puls  pc,d      return
+
+*   get memory within data allocation
+ibrk:    ldd   $02,s     get the size
+         addd  _mtop,y   add in the current top
+         bcs   ibrk20    if it wraps round - error
+         cmpd  _stbot,y  overlap stack
+         bcc   ibrk20    yes error
+*        pshs  b,a
+         pshs  d         no save top
+         ldx   _mtop,y   reset to the bottom
+
+         clra  
+sbloop   cmpx  ,s        reached the end
+         bcc   ibrk10    yes - done
+         sta   ,x+       nope clear and bump
+         bra   sbloop
+
+ibrk10   ldd   _mtop,y     return value
+         puls  x           restore new top
+         stx   _mtop,y     save for next time
+         rts   
+
+
+ibrk20   ldd   #-1         return memory full
+         rts  
+
+*****************************
+*   stat.a code
+*
+
+_os9err: clra  
+         std    >errno,y  indicate in system error indicator
+         ldd   #-1       error condition
+
+*        std   >$01B1,y  
+*        ldd   #$FFFF
+         rts
+   
+
+_sysret: bcs   _os9err
+         clra  clear "d"
+         clrb  to return 0
+         rts   
+
+
+* normal exit - buffers flushed if there are any
+exit    lbsr  L1500
+
+        lbsr  L0DBB  What do I do ???
+
+
+
+* abnormal exit - no buffer flushing
+* the argument to either exit entry is taken to be the
+* F$EXIT status
+
+_exit    ldd   $02,s   get the exit status
+         os9   F$Exit  toodle-loo  
+
+L1500    rts   
+
+********************************************************************
+* end of executable text
+
+etext    equ   *
+L1501    fcb   $00,$01,$00,$01,$62,$74,$4F       ....btO
 L1508    fcb   $43,$00,$27,$10,$03,$E8,$00,$64   C.'..h.d
 L1510    fcb   $00,$0A,$00,$0D,$6C,$78,$00,$00   ....lx..
 L1518    fcb   $00,$00,$00,$00,$00,$00,$01,$00   ........
@@ -717,4 +3240,7 @@
 L1658    fcb   $04,$04,$04,$04,$04,$04,$04,$04   ........
 L1660    fcb   $04,$04,$04,$20,$20,$20,$20,$01   ...    .
 L1668    fcb   $00,$00,$00,$01,$00,$0D,$74,$6F   ......to
-L1670    fcb   $63,$67,$65,$6E,$00,$FD,$79,$21   cgen..y!
+L1670    fcb   $63,$67,$65,$6E,$00               cgen.
+         emod
+eom      equ   *
+         end