Mercurial > hg > Members > kono > nitros9-code
changeset 1044:66e53c0a3eea
Moved drvr51 in MODULES
author | boisy |
---|---|
date | Sun, 16 Mar 2003 14:18:45 +0000 |
parents | 938ec7bd301f |
children | 3ebe2a5977d9 |
files | level1/cmds/drvr51.asm level1/modules/drvr51.asm |
diffstat | 2 files changed, 1439 insertions(+), 1439 deletions(-) [+] |
line wrap: on
line diff
--- a/level1/cmds/drvr51.asm Sun Mar 16 13:52:31 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1439 +0,0 @@ -******************************************************************** -* drvr51 - Driver for The 51 column by 24 line video display -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 1 Original Dragon distribution version - - - nam drvr51 - ttl Driver for The 51 column by 24 line video display - -* Disassembled 02/07/06 21:17:23 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Drivr+Objct -atrv set ReEnt+rev -rev set $01 -edition set 1 - - mod eom,name,tylg,atrv,start,size - - org 0 -u0000 rmb 1 -u0001 rmb 1 -u0002 rmb 1 -u0003 rmb 1 -u0004 rmb 1 -u0005 rmb 1 -u0006 rmb 1 -u0007 rmb 1 -u0008 rmb 1 -u0009 rmb 1 -u000A rmb 1 -u000B rmb 1 -u000C rmb 1 -u000D rmb 1 -u000E rmb 1 -u000F rmb 8 -u0017 rmb 4 -u001B rmb 2 -u001D rmb 1 -u001E rmb 1 -u001F rmb 1 -u0020 rmb 1 -u0021 rmb 1 -u0022 rmb 2 -u0024 rmb 1 -u0025 rmb 1 -u0026 rmb 1 -u0027 rmb 1 -u0028 rmb 1 -u0029 rmb 1 -u002A rmb 1 -u002B rmb 1 -u002C rmb 1 -u002D rmb 1 -u002E rmb 1 -u002F rmb 1 -u0030 rmb 1 -u0031 rmb 1 -u0032 rmb 1 -u0033 rmb 1 -u0034 rmb 1 -u0035 rmb 1 -u0036 rmb 1 -u0037 rmb 1 -u0038 rmb 1 -u0039 rmb 1 -u003A rmb 6 -u0040 rmb 2 -u0042 rmb 2 -u0044 rmb 6 -u004A rmb 1 -u004B rmb 5 -u0050 rmb 5 -u0055 rmb 9 -u005E rmb 2 -u0060 rmb 9 -u0069 rmb 6 -u006F rmb 1 -u0070 rmb 1 -u0071 rmb 7 -u0078 rmb 6 -u007E rmb 2 -u0080 rmb 8 -u0088 rmb 6 -u008E rmb 2 -u0090 rmb 6 -u0096 rmb 3 -u0099 rmb 1 -u009A rmb 3 -u009D rmb 1 -size equ . - - fcb UPDAT. - -name fcs /drvr51/ - fcb edition - -start lbra Init - lbra Read - lbra Write - lbra GetStat - lbra SetStat - lbra Term+1 - -Init pshs u,a - ldu <u001D,u - ldd #$0200 - os9 F$SRtMem - ldu $01,s - tst <u002C,u - beq L0044 - ldu <u002D,u - ldd #$1800 - os9 F$SRtMem - ldu $01,s -L0044 ldb #$81 - leax <u001D,u -L0049 clr ,x+ - decb - bne L0049 - ldd #$1900 - os9 F$SRqMem - bcs L009C - tfr u,d - ldu $01,s - tfr d,x - bita #$01 - beq L0066 - leax >$0100,x - bra L0068 -L0066 adda #$18 -L0068 stx <u0022,u - tfr d,u - ldd #$0100 - os9 F$SRtMem - ldu $01,s - lda #$10 - sta <u0037,u - pshs cc - orcc #IntMasks - leay >L00AD,pcr - sty >D.IRQ - ldx #$FF00 - lda $03,x - ora #$01 - sta $03,x - inc >Term,pcr - puls cc - lbsr L0475 - lbsr L02C3 - clrb -L009C puls pc,u,a -Term fcb $00 - pshs cc - orcc #IntMasks - ldx >D.AltIRQ - stx >D.IRQ - puls cc - clrb - rts -L00AD ldu >D.KbdSta - ldx #$FF00 - lda $03,x - bmi L00BB - jmp [>D.SvcIRQ] -L00BB lda $02,x - lda >D.DskTmr - beq L00CB - deca - sta >D.DskTmr - bne L00CB - sta >$FF48 -L00CB lbsr L04E5 - jmp [>D.AltIRQ] -L00D2 pshs x,b - lda u0004,u - sta u0005,u - ldx #$0000 - os9 F$Sleep - ldx <u004B - ldb <$36,x - beq L00EC - cmpb #$03 - bhi L00EC - coma - puls pc,x,a - -L00EC puls x,b -Read tst >Term,pcr - bne L00F9 - lbsr Init - bcs L011C -L00F9 leax <u003A,u - orcc #IRQMask - ldb <u001D,u - cmpb <u001E,u - beq L00D2 - lda b,x - incb - cmpb #$64 - bcs L010E - clrb -L010E stb <u001D,u - andcc #^(IRQMask+Carry) - tst u000E,u - beq L011C - clr u000E,u - comb - ldb #$F4 -L011C rts - -Write tst >Term,pcr - bne L012C - pshs a - lbsr Init - puls a - bcs L0139 -L012C ldb <u001F,u - bne L0165 - cmpa #$1B - bne L013A - inc <u001F,u - clrb -L0139 rts -L013A cmpa #$20 - bcs L0144 - cmpa #$7F - bcc L0144 - bra L0173 -L0144 leax >L066E,pcr -L0148 tst ,x - bne L0150 -L014C clr <u001F,u - rts -L0150 cmpa ,x+ - bne L0161 - ldd ,x - leax >L066E,pcr - leax d,x - stx <u0020,u - jmp ,x -L0161 leax $02,x - bra L0148 -L0165 inc <u001F,u - leax >L0681,pcr - cmpb #$01 - beq L0148 - jmp [<u0020,u] -L0173 inc <u0032,u - bsr L01B3 - tst <u0039,u - beq L0185 - lda #$F8 - leay <-$40,y - lbsr L0236 -L0185 lda <u0024,u - inca - cmpa #$33 - bcs L01A2 - clr <u0024,u - lda <u0025,u - inca - cmpa #$18 - bcs L019D - lbsr L033E - bra L01A5 -L019D sta <u0025,u - bra L01A5 -L01A2 sta <u0024,u -L01A5 clr <u0033,u - ldd <u0024,u - std <u0030,u - dec <u0032,u - clrb - rts -L01B3 tfr a,b - subb #$20 - clra - leax >L06A0,pcr - lslb - rola - lslb - rola - leax d,x - ldb #$05 - lda <u0024,u - mul - pshs b - lsra - rorb - lsra - rorb - lsra - rorb - puls a - anda #$07 - pshs b - sta <u0026,u - tst <u0034,u - bne L01FF - tfr a,b - lda #$F8 - tstb - beq L01FA -L01E5 lsra - decb - bhi L01E5 - bne L01EE - rorb - bra L01FA -L01EE pshs b - ldb #$80 -L01F2 lsra - rorb - dec ,s - bne L01F2 - leas $01,s -L01FA coma - comb - std <u0035,u -L01FF ldy <u0022,u - lda <u0025,u - ldb ,s+ - leay d,y - lda #$04 - pshs a - inc <u0032,u -L0211 lda ,x - anda #$F0 - bsr L0236 - lda ,x+ - anda #$0F - bsr L0227 - dec ,s - bne L0211 - dec <u0032,u - clrb - puls pc,b -L0227 ldb <u0026,u - subb #$04 - bhi L023B - beq L0250 -L0230 lsla - incb - bne L0230 - bra L0250 -L0236 ldb <u0026,u - beq L0250 -L023B lsra - decb - bhi L023B - bne L0244 - rorb - bra L0250 -L0244 pshs b - ldb #$80 -L0248 lsra - rorb - dec ,s - bne L0248 - leas $01,s -L0250 tst <u0034,u - bne L0273 - tst <u0038,u - beq L0262 - coma - comb - eora <u0035,u - eorb <u0036,u -L0262 pshs b,a - ldd <u0035,u - anda ,y - andb $01,y - addd ,s++ -L026D std ,y - leay <$20,y - rts -L0273 eora ,y - eorb $01,y - bra L026D - ldx #$FF20 - ldb #$64 -L027E lda ,x - eora #$C0 - sta ,x - lda #$19 -L0286 deca - nop - nop - bne L0286 - decb - bne L027E - lbra L014C - dec <u0024,u - bpl L02A6 - lda #$32 - sta <u0024,u - dec <u0025,u - bpl L02A6 - clr <u0025,u - lbsr L035E -L02A6 lbsr L0484 - lbra L014C -L02AC lda <u0025,u - inca - cmpa #$18 - bcs L02B9 - lbsr L033E - bra L02BC -L02B9 sta <u0025,u -L02BC bra L02A6 - clr <u0024,u - bra L02A6 -L02C3 ldy <u0022,u - leay >$0080,y - lda #$18 - pshs a - inc <u0032,u -L02D2 bsr L0314 - dec ,s - bne L02D2 - leas $01,s - clra - clrb - sta <u0033,u - std <u0030,u - std <u0024,u - dec <u0032,u - ldx #$FF20 - lda $02,x - ora #$F0 - sta $02,x - ldx #$FFC0 - lda #$06 - ldb #$03 - bsr L0305 - lda <u0022,u - lsra - ldb #$07 - bsr L0305 - lbra L014C -L0305 lsra - bcc L030E - leax $01,x - sta ,x+ - bra L0310 -L030E sta ,x++ -L0310 decb - bne L0305 - rts -L0314 lda #$10 -L0316 pshs a - lda <u0038,u - tfr a,b -L031D std <-$80,y - std <-$60,y - std <-$40,y - std <-$20,y - std <$20,y - std <$40,y - std <$60,y - std ,y++ - dec ,s - bne L031D - leay >$00E0,y - puls pc,b -L033E ldy <u0022,u - inc <u0032,u - pshs u - leau >$0100,y - lda #$10 - bsr L037C - puls u - dec <u0031,u -L0354 leay >$0080,y - bsr L0314 - dec <u0032,u - rts -L035E ldy <u0022,u - leay >$17F0,y - inc <u0032,u - pshs u - leau >-$0100,y - lda #$F0 - bsr L037C - leay ,u - puls u - inc <u0031,u - bra L0354 -L037C ldb #$17 - pshs b -L0380 ldb #$10 -L0382 ldx ,u - stx ,y - ldx u0002,u - stx $02,y - ldx u0004,u - stx $04,y - ldx u0006,u - stx $06,y - ldx u0008,u - stx $08,y - ldx u000A,u - stx $0A,y - ldx u000C,u - stx $0C,y - ldx u000E,u - stx $0E,y - leay a,y - leau a,u - decb - bne L0382 - dec ,s - bne L0380 - puls pc,b - inc <u0032,u - bsr L03BA - dec <u0032,u - lbra L014C -L03BA clr <u0033,u - ldb <u0024,u - pshs b - bitb #$07 - bne L03CB - lda #$05 - mul - bra L03F3 -L03CB lda #$01 - pshs a -L03CF lda #$20 - lbsr L01B3 - lda <u0024,u - inca - sta <u0024,u - cmpa #$33 - bcs L03E3 - leas $01,s - bra L040D -L03E3 dec ,s - bpl L03CF - lda <u0024,u - ldb #$05 - mul - bitb #$08 - bne L03CF - leas $01,s -L03F3 lsrb - lsrb - lsrb - ldy <u0022,u - lda <u0025,u - leay d,y - leay >$0080,y - lda #$20 - pshs b - suba ,s+ - lsra - lbsr L0316 -L040D puls a - sta <u0024,u - rts - inc <u0032,u - bsr L03BA - lda #$17 - suba <u0025,u - bls L042A - pshs a -L0421 lbsr L0314 - dec ,s - bne L0421 - leas $01,s -L042A dec <u0032,u - lbra L014C - clr <u0024,u - clr <u0025,u - lbra L02A6 - ldb <u001F,u - subb #$02 - bne L0442 - clrb - rts -L0442 decb - bne L0450 - cmpa #$33 - bcs L044B - lda #$32 -L044B sta <u0024,u - clrb - rts -L0450 cmpa #$18 - bcs L0456 - lda #$17 -L0456 sta <u0025,u -L0459 lbra L02A6 - inc <u0024,u - lda <u0024,u - cmpa #$33 - bcs L0459 - clr <u0024,u - lbra L02AC - lda #$FF - coma -L046F sta <u0038,u - lbra L014C -L0475 lda #$FF - bra L046F - lda #$FF -L047B sta <u0039,u - lbra L014C - clra - bra L047B -L0484 ldd <u0024,u - inc <u0032,u - tst <u0033,u - bne L0494 - std <u0030,u - bra L04B9 -L0494 pshs b,a - ldd <u0030,u - inc <u0034,u - tstb - bmi L04AB - cmpb #$18 - bcc L04AB - std <u0024,u - lda #$7F - lbsr L01B3 -L04AB puls b,a - std <u0024,u - std <u0030,u - clr <u0033,u - dec <u0034,u -L04B9 dec <u0032,u - clrb - rts - -GetStat cmpa #$01 - bne L04D0 - lda <u001D,u - cmpa <u001E,u - beq L04CC -L04CA clrb - rts -L04CC comb - ldb #$F6 - rts -L04D0 cmpa #$06 - beq L04CA - cmpa #$02 - bne SetStat - ldx $06,y - ldd <u0022,u - std $04,x - clrb - rts - -SetStat comb - ldb #$D0 - rts - -L04E5 tst <u0032,u - bne L0512 - dec <u0037,u - bne L0512 - lda #$10 - sta <u0037,u - inc <u0034,u - ldd <u0024,u - pshs b,a - ldd <u0030,u - std <u0024,u - lda #$7F - lbsr L01B3 - puls b,a - std <u0024,u - com <u0033,u - dec <u0034,u -L0512 ldx #$FF00 - lda #$FF - sta $02,x - bsr L053B - anda #$03 - bne L0526 - clra - sta $02,x - bsr L053B - bne L052D -L0526 clr <u0027,u - clr <u0028,u - rts -L052D tst <u0028,u - bne L0541 - sta <u0028,u -L0535 clrb - rts -L0537 clrb - stb $02,x - rts -L053B lda ,x - coma - anda #$7F - rts -L0541 cmpa <u0028,u - bne L0526 - clr <u002A,u - clr <u002B,u - clr <u002C,u - clr <u002D,u - clr <u002E,u - ldb #$01 -L0557 comb - stb $02,x - bsr L053B - beq L05A1 - bita #$40 - beq L0583 - cmpb #$7F - bne L056B - inc <u002D,u - bra L057F -L056B cmpb #$FD - bne L0574 - inc <u002E,u - bra L057F -L0574 tst <u002C,u - bne L0537 - stb <u002C,u - com <u002C,u -L057F anda #$3F - beq L05A1 -L0583 pshs b,a - clrb -L0586 lsra - bcc L058A - incb -L058A tsta - bne L0586 - cmpb #$01 - puls b,a - bne L0537 - tst <u002A,u - bne L0537 - sta <u002A,u - stb <u002B,u - com <u002B,u -L05A1 comb - lslb - bne L0557 - stb $02,x - ldb <u002C,u - beq L05B5 - tst <u002A,u - bne L0535 - lda #$40 - bra L05BF -L05B5 ldb <u002B,u - lda <u002A,u - lbeq L0526 -L05BF pshs b - tst <u0027,u - beq L05D0 - dec <u0027,u - beq L05D4 - puls b - lbra L0665 -L05D0 ldb #$32 - bra L05D6 -L05D4 ldb #$05 -L05D6 stb <u0027,u - lbsr L0667 - lslb - lslb - lslb - puls a - pshs b - lbsr L0667 - orb ,s+ - stb <u0029,u - leax >L0820,pcr - lda b,x - tst <u002E,u - beq L05FE - leax >L0886,pcr - lda b,x - bra L0609 -L05FE tst <u002D,u - beq L0612 - leax >L0853,pcr - lda b,x -L0609 cmpa #$1F - bne L0621 - com <u002F,u - bra L0665 -L0612 tst <u002F,u - beq L0621 - cmpa #$61 - bcs L0621 - cmpa #$7A - bhi L0621 - suba #$20 -L0621 leax <u003A,u - ldb <u001E,u - sta b,x - incb - cmpb #$64 - bcs L062F - clrb -L062F cmpb <u001D,u - bne L0638 - inc u000E,u - bra L063B -L0638 stb <u001E,u -L063B tsta - beq L065A - cmpa u000D,u -L0640 bne L064A - ldx u0009,u - beq L065A -L0646 sta $08,x - bra L065A -L064A ldb #$03 - cmpa u000B,u - beq L0656 - ldb #$02 - cmpa u000C,u - bne L065A -L0656 lda u0003,u - bra L065E -L065A ldb #S$Wake - lda u0005,u -L065E beq L0663 - os9 F$Send -L0663 clr u0005,u -L0665 clrb - rts -L0667 clrb -L0668 incb - lsra - bne L0668 - decb - rts - -L066E fcb $07 - fcb $FC - fcb $0B - fcb $08 - fcb $FC - fcb $23 - fcb $0A - fcb $FC - fcb $3E - fcb $0D - fcb $FC - fcb $50 - fcb $0C - fcb $FC - fcb $55 - fcb $0B - fcb $FD - fcb $C2 - fcb $00 -L0681 fcb $41 - fcb $FD - fcb $CB - fcb $42 - fcb $FD - fcb $41 - fcb $43 - fcb $FD - fcb $EE - fcb $44 - fcb $FC - fcb $2D - fcb $45 - fcb $FC - fcb $3E - fcb $46 - fcb $FD - fcb $FE - fcb $47 - fcb $FE - fcb $07 - fcb $48 - fcb $FE - fcb $0B - fcb $49 - fcb $FE - fcb $13 - fcb $4A - fcb $FD - fcb $A5 - fcb $00 -L06A0 fcb $00 - fcb $00 - fcb $00 - fcb $00 - fcb $44 - fcb $40 - fcb $40 - fcb $00 - fcb $55 - fcb $00 - fcb $00 - fcb $00 - fcb $6F - fcb $6F - fcb $60 - fcb $00 - fcb $27 - fcb $86 - fcb $1E - fcb $20 - fcb $91 - fcb $24 - fcb $89 - fcb $00 - fcb $4A - fcb $4A - fcb $D0 - fcb $00 - fcb $44 - fcb $00 - fcb $00 - fcb $00 - fcb $24 - fcb $44 - fcb $20 - fcb $00 - fcb $42 - fcb $22 - fcb $40 - fcb $00 - fcb $96 - fcb $F6 - fcb $90 - fcb $00 - fcb $44 - fcb $E4 - fcb $40 - fcb $00 - fcb $00 - fcb $02 - fcb $24 - fcb $00 - fcb $00 - fcb $F0 - fcb $00 - fcb $00 - fcb $00 - fcb $06 - fcb $60 - fcb $00 - fcb $01 - fcb $24 - fcb $80 - fcb $00 - fcb $69 - fcb $BD - fcb $60 - fcb $00 - fcb $26 - fcb $22 - fcb $70 - fcb $00 - fcb $69 - fcb $2C - fcb $F0 - fcb $00 - fcb $E1 - fcb $61 - fcb $E0 - fcb $00 - fcb $26 - fcb $AF - fcb $20 - fcb $00 - fcb $F8 - fcb $E1 - fcb $E0 - fcb $00 - fcb $78 - fcb $E9 - fcb $60 - fcb $00 - fcb $F1 - fcb $24 - fcb $40 - fcb $00 - fcb $69 - fcb $69 - fcb $60 - fcb $00 - fcb $69 - fcb $71 - fcb $60 - fcb $00 - fcb $00 - fcb $40 - fcb $40 - fcb $00 - fcb $00 - fcb $20 - fcb $24 - fcb $00 - fcb $24 - fcb $84 - fcb $20 - fcb $00 - fcb $0F - fcb $0F - fcb $00 - fcb $00 - fcb $42 - fcb $12 - fcb $40 - fcb $00 - fcb $69 - fcb $22 - fcb $02 - fcb $00 - fcb $69 - fcb $BB - fcb $87 - fcb $00 - fcb $69 - fcb $F9 - fcb $90 - fcb $00 - fcb $E9 - fcb $E9 - fcb $E0 - fcb $00 - fcb $78 - fcb $88 - fcb $70 - fcb $00 - fcb $E9 - fcb $99 - fcb $E0 - fcb $00 - fcb $F8 - fcb $E8 - fcb $F0 - fcb $00 - fcb $F8 - fcb $E8 - fcb $80 - fcb $00 - fcb $78 - fcb $B9 - fcb $70 - fcb $00 - fcb $99 - fcb $F9 - fcb $90 - fcb $00 - fcb $E4 - fcb $44 - fcb $E0 - fcb $00 - fcb $F2 - fcb $2A - fcb $40 - fcb $00 - fcb $9A - fcb $CA - fcb $90 - fcb $00 - fcb $88 - fcb $88 - fcb $F0 - fcb $00 - fcb $FD - fcb $D9 - fcb $90 - fcb $00 - fcb $9D - fcb $B9 - fcb $90 - fcb $00 - fcb $69 - fcb $99 - fcb $60 - fcb $00 - fcb $E9 - fcb $E8 - fcb $80 - fcb $00 - fcb $69 - fcb $9B - fcb $70 - fcb $00 - fcb $E9 - fcb $EA - fcb $90 - fcb $00 - fcb $78 - fcb $61 - fcb $E0 - fcb $00 - fcb $E4 - fcb $44 - fcb $40 - fcb $00 - fcb $99 - fcb $99 - fcb $60 - fcb $00 - fcb $99 - fcb $96 - fcb $60 - fcb $00 - fcb $99 - fcb $DD - fcb $F0 - fcb $00 - fcb $99 - fcb $69 - fcb $90 - fcb $00 - fcb $99 - fcb $71 - fcb $E0 - fcb $00 - fcb $F1 - fcb $68 - fcb $F0 - fcb $00 - fcb $E8 - fcb $88 - fcb $E0 - fcb $00 - fcb $08 - fcb $42 - fcb $10 - fcb $00 - fcb $71 - fcb $11 - fcb $70 - fcb $00 - fcb $69 - fcb $00 - fcb $00 - fcb $00 - fcb $00 - fcb $00 - fcb $0F - fcb $00 - fcb $22 - fcb $00 - fcb $00 - fcb $00 - fcb $07 - fcb $99 - fcb $70 - fcb $00 - fcb $8E - fcb $99 - fcb $E0 - fcb $00 - fcb $07 - fcb $88 - fcb $70 - fcb $00 - fcb $17 - fcb $99 - fcb $70 - fcb $00 - fcb $07 - fcb $AC - fcb $70 - fcb $00 - fcb $34 - fcb $F4 - fcb $40 - fcb $00 - fcb $06 - fcb $99 - fcb $71 - fcb $E0 - fcb $8E - fcb $99 - fcb $90 - fcb $00 - fcb $40 - fcb $44 - fcb $40 - fcb $00 - fcb $20 - fcb $22 - fcb $22 - fcb $C0 - fcb $8A - fcb $CA - fcb $90 - fcb $00 - fcb $44 - fcb $44 - fcb $40 - fcb $00 - fcb $0E - fcb $DD - fcb $90 - fcb $00 - fcb $0E - fcb $99 - fcb $90 - fcb $00 - fcb $06 - fcb $99 - fcb $60 - fcb $00 - fcb $0E - fcb $99 - fcb $E8 - fcb $80 - fcb $07 - fcb $99 - fcb $71 - fcb $10 - fcb $07 - fcb $88 - fcb $80 - fcb $00 - fcb $07 - fcb $C3 - fcb $E0 - fcb $00 - fcb $4F - fcb $44 - fcb $30 - fcb $00 - fcb $09 - fcb $99 - fcb $70 - fcb $00 - fcb $09 - fcb $96 - fcb $60 - fcb $00 - fcb $09 - fcb $DD - fcb $60 - fcb $00 - fcb $09 - fcb $66 - fcb $90 - fcb $00 - fcb $09 - fcb $99 - fcb $71 - fcb $E0 - fcb $0F - fcb $24 - fcb $F0 - fcb $00 - fcb $34 - fcb $C4 - fcb $30 - fcb $00 - fcb $44 - fcb $04 - fcb $40 - fcb $00 - fcb $C2 - fcb $32 - fcb $C0 - fcb $00 - fcb $05 - fcb $A0 - fcb $00 - fcb $00 - fcb $FF - fcb $FF - fcb $FF - fcb $F0 -L0820 fcb $30 - fcb $31 - fcb $32 - fcb $33 - fcb $34 - fcb $35 - fcb $36 - fcb $37 - fcb $38 - fcb $39 - fcb $3A - fcb $3B - fcb $2C - fcb $2D - fcb $2E - fcb $2F - fcb $40 - fcb $61 - fcb $62 - fcb $63 - fcb $64 - fcb $65 - fcb $66 - fcb $67 - fcb $68 - fcb $69 - fcb $6A - fcb $6B - fcb $6C - fcb $6D - fcb $6E - fcb $6F - fcb $70 - fcb $71 - fcb $72 - fcb $73 - fcb $74 - fcb $75 - fcb $76 - fcb $77 - fcb $78 - fcb $79 - fcb $7A - fcb $0C - fcb $0A - fcb $08 - fcb $09 - fcb $20 - fcb $0D - fcb $00 - fcb $05 -L0853 fcb $30 - fcb $21 - fcb $22 - fcb $23 - fcb $24 - fcb $25 - fcb $26 - fcb $27 - fcb $28 - fcb $29 - fcb $2A - fcb $2B - fcb $3C - fcb $3D - fcb $3E - fcb $3F - fcb $7C - fcb $41 - fcb $42 - fcb $43 - fcb $44 - fcb $45 - fcb $46 - fcb $47 - fcb $48 - fcb $49 - fcb $4A - fcb $4B - fcb $4C - fcb $4D - fcb $4E - fcb $4F - fcb $50 - fcb $51 - fcb $52 - fcb $53 - fcb $54 - fcb $55 - fcb $56 - fcb $57 - fcb $58 - fcb $59 - fcb $5A - fcb $1C - fcb $1A - fcb $18 - fcb $19 - fcb $20 - fcb $0D - fcb $00 - fcb $03 -L0886 fcb $1F - fcb $7C - fcb $00 - fcb $7E - fcb $00 - fcb $00 - fcb $00 - fcb $5E - fcb $5B - fcb $5D - fcb $00 - fcb $00 - fcb $7B - fcb $5F - fcb $7D - fcb $5C - fcb $00 - fcb $01 - fcb $02 - fcb $03 - fcb $04 - fcb $05 - fcb $06 - fcb $07 - fcb $08 - fcb $09 - fcb $0A - fcb $0B - fcb $0C - fcb $0D - fcb $0E - fcb $0F - fcb $10 - fcb $11 - fcb $12 - fcb $13 - fcb $14 - fcb $15 - fcb $16 - fcb $17 - fcb $18 - fcb $19 - fcb $1A - fcb $13 - fcb $12 - fcb $10 - fcb $11 - fcb $20 - fcb $0D - fcb $00 - fcb $1B - - emod -eom equ *
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/modules/drvr51.asm Sun Mar 16 14:18:45 2003 +0000 @@ -0,0 +1,1439 @@ +******************************************************************** +* drvr51 - Driver for The 51 column by 24 line video display +* +* $Id$ +* +* Ed. Comments Who YY/MM/DD +* ------------------------------------------------------------------ +* 1 Original Dragon distribution version + + + nam drvr51 + ttl Driver for The 51 column by 24 line video display + +* Disassembled 02/07/06 21:17:23 by Disasm v1.6 (C) 1988 by RML + + ifp1 + use defsfile + endc + +tylg set Drivr+Objct +atrv set ReEnt+rev +rev set $01 +edition set 1 + + mod eom,name,tylg,atrv,start,size + + org 0 +u0000 rmb 1 +u0001 rmb 1 +u0002 rmb 1 +u0003 rmb 1 +u0004 rmb 1 +u0005 rmb 1 +u0006 rmb 1 +u0007 rmb 1 +u0008 rmb 1 +u0009 rmb 1 +u000A rmb 1 +u000B rmb 1 +u000C rmb 1 +u000D rmb 1 +u000E rmb 1 +u000F rmb 8 +u0017 rmb 4 +u001B rmb 2 +u001D rmb 1 +u001E rmb 1 +u001F rmb 1 +u0020 rmb 1 +u0021 rmb 1 +u0022 rmb 2 +u0024 rmb 1 +u0025 rmb 1 +u0026 rmb 1 +u0027 rmb 1 +u0028 rmb 1 +u0029 rmb 1 +u002A rmb 1 +u002B rmb 1 +u002C rmb 1 +u002D rmb 1 +u002E rmb 1 +u002F rmb 1 +u0030 rmb 1 +u0031 rmb 1 +u0032 rmb 1 +u0033 rmb 1 +u0034 rmb 1 +u0035 rmb 1 +u0036 rmb 1 +u0037 rmb 1 +u0038 rmb 1 +u0039 rmb 1 +u003A rmb 6 +u0040 rmb 2 +u0042 rmb 2 +u0044 rmb 6 +u004A rmb 1 +u004B rmb 5 +u0050 rmb 5 +u0055 rmb 9 +u005E rmb 2 +u0060 rmb 9 +u0069 rmb 6 +u006F rmb 1 +u0070 rmb 1 +u0071 rmb 7 +u0078 rmb 6 +u007E rmb 2 +u0080 rmb 8 +u0088 rmb 6 +u008E rmb 2 +u0090 rmb 6 +u0096 rmb 3 +u0099 rmb 1 +u009A rmb 3 +u009D rmb 1 +size equ . + + fcb UPDAT. + +name fcs /drvr51/ + fcb edition + +start lbra Init + lbra Read + lbra Write + lbra GetStat + lbra SetStat + lbra Term+1 + +Init pshs u,a + ldu <u001D,u + ldd #$0200 + os9 F$SRtMem + ldu $01,s + tst <u002C,u + beq L0044 + ldu <u002D,u + ldd #$1800 + os9 F$SRtMem + ldu $01,s +L0044 ldb #$81 + leax <u001D,u +L0049 clr ,x+ + decb + bne L0049 + ldd #$1900 + os9 F$SRqMem + bcs L009C + tfr u,d + ldu $01,s + tfr d,x + bita #$01 + beq L0066 + leax >$0100,x + bra L0068 +L0066 adda #$18 +L0068 stx <u0022,u + tfr d,u + ldd #$0100 + os9 F$SRtMem + ldu $01,s + lda #$10 + sta <u0037,u + pshs cc + orcc #IntMasks + leay >L00AD,pcr + sty >D.IRQ + ldx #$FF00 + lda $03,x + ora #$01 + sta $03,x + inc >Term,pcr + puls cc + lbsr L0475 + lbsr L02C3 + clrb +L009C puls pc,u,a +Term fcb $00 + pshs cc + orcc #IntMasks + ldx >D.AltIRQ + stx >D.IRQ + puls cc + clrb + rts +L00AD ldu >D.KbdSta + ldx #$FF00 + lda $03,x + bmi L00BB + jmp [>D.SvcIRQ] +L00BB lda $02,x + lda >D.DskTmr + beq L00CB + deca + sta >D.DskTmr + bne L00CB + sta >$FF48 +L00CB lbsr L04E5 + jmp [>D.AltIRQ] +L00D2 pshs x,b + lda u0004,u + sta u0005,u + ldx #$0000 + os9 F$Sleep + ldx <u004B + ldb <$36,x + beq L00EC + cmpb #$03 + bhi L00EC + coma + puls pc,x,a + +L00EC puls x,b +Read tst >Term,pcr + bne L00F9 + lbsr Init + bcs L011C +L00F9 leax <u003A,u + orcc #IRQMask + ldb <u001D,u + cmpb <u001E,u + beq L00D2 + lda b,x + incb + cmpb #$64 + bcs L010E + clrb +L010E stb <u001D,u + andcc #^(IRQMask+Carry) + tst u000E,u + beq L011C + clr u000E,u + comb + ldb #$F4 +L011C rts + +Write tst >Term,pcr + bne L012C + pshs a + lbsr Init + puls a + bcs L0139 +L012C ldb <u001F,u + bne L0165 + cmpa #$1B + bne L013A + inc <u001F,u + clrb +L0139 rts +L013A cmpa #$20 + bcs L0144 + cmpa #$7F + bcc L0144 + bra L0173 +L0144 leax >L066E,pcr +L0148 tst ,x + bne L0150 +L014C clr <u001F,u + rts +L0150 cmpa ,x+ + bne L0161 + ldd ,x + leax >L066E,pcr + leax d,x + stx <u0020,u + jmp ,x +L0161 leax $02,x + bra L0148 +L0165 inc <u001F,u + leax >L0681,pcr + cmpb #$01 + beq L0148 + jmp [<u0020,u] +L0173 inc <u0032,u + bsr L01B3 + tst <u0039,u + beq L0185 + lda #$F8 + leay <-$40,y + lbsr L0236 +L0185 lda <u0024,u + inca + cmpa #$33 + bcs L01A2 + clr <u0024,u + lda <u0025,u + inca + cmpa #$18 + bcs L019D + lbsr L033E + bra L01A5 +L019D sta <u0025,u + bra L01A5 +L01A2 sta <u0024,u +L01A5 clr <u0033,u + ldd <u0024,u + std <u0030,u + dec <u0032,u + clrb + rts +L01B3 tfr a,b + subb #$20 + clra + leax >L06A0,pcr + lslb + rola + lslb + rola + leax d,x + ldb #$05 + lda <u0024,u + mul + pshs b + lsra + rorb + lsra + rorb + lsra + rorb + puls a + anda #$07 + pshs b + sta <u0026,u + tst <u0034,u + bne L01FF + tfr a,b + lda #$F8 + tstb + beq L01FA +L01E5 lsra + decb + bhi L01E5 + bne L01EE + rorb + bra L01FA +L01EE pshs b + ldb #$80 +L01F2 lsra + rorb + dec ,s + bne L01F2 + leas $01,s +L01FA coma + comb + std <u0035,u +L01FF ldy <u0022,u + lda <u0025,u + ldb ,s+ + leay d,y + lda #$04 + pshs a + inc <u0032,u +L0211 lda ,x + anda #$F0 + bsr L0236 + lda ,x+ + anda #$0F + bsr L0227 + dec ,s + bne L0211 + dec <u0032,u + clrb + puls pc,b +L0227 ldb <u0026,u + subb #$04 + bhi L023B + beq L0250 +L0230 lsla + incb + bne L0230 + bra L0250 +L0236 ldb <u0026,u + beq L0250 +L023B lsra + decb + bhi L023B + bne L0244 + rorb + bra L0250 +L0244 pshs b + ldb #$80 +L0248 lsra + rorb + dec ,s + bne L0248 + leas $01,s +L0250 tst <u0034,u + bne L0273 + tst <u0038,u + beq L0262 + coma + comb + eora <u0035,u + eorb <u0036,u +L0262 pshs b,a + ldd <u0035,u + anda ,y + andb $01,y + addd ,s++ +L026D std ,y + leay <$20,y + rts +L0273 eora ,y + eorb $01,y + bra L026D + ldx #$FF20 + ldb #$64 +L027E lda ,x + eora #$C0 + sta ,x + lda #$19 +L0286 deca + nop + nop + bne L0286 + decb + bne L027E + lbra L014C + dec <u0024,u + bpl L02A6 + lda #$32 + sta <u0024,u + dec <u0025,u + bpl L02A6 + clr <u0025,u + lbsr L035E +L02A6 lbsr L0484 + lbra L014C +L02AC lda <u0025,u + inca + cmpa #$18 + bcs L02B9 + lbsr L033E + bra L02BC +L02B9 sta <u0025,u +L02BC bra L02A6 + clr <u0024,u + bra L02A6 +L02C3 ldy <u0022,u + leay >$0080,y + lda #$18 + pshs a + inc <u0032,u +L02D2 bsr L0314 + dec ,s + bne L02D2 + leas $01,s + clra + clrb + sta <u0033,u + std <u0030,u + std <u0024,u + dec <u0032,u + ldx #$FF20 + lda $02,x + ora #$F0 + sta $02,x + ldx #$FFC0 + lda #$06 + ldb #$03 + bsr L0305 + lda <u0022,u + lsra + ldb #$07 + bsr L0305 + lbra L014C +L0305 lsra + bcc L030E + leax $01,x + sta ,x+ + bra L0310 +L030E sta ,x++ +L0310 decb + bne L0305 + rts +L0314 lda #$10 +L0316 pshs a + lda <u0038,u + tfr a,b +L031D std <-$80,y + std <-$60,y + std <-$40,y + std <-$20,y + std <$20,y + std <$40,y + std <$60,y + std ,y++ + dec ,s + bne L031D + leay >$00E0,y + puls pc,b +L033E ldy <u0022,u + inc <u0032,u + pshs u + leau >$0100,y + lda #$10 + bsr L037C + puls u + dec <u0031,u +L0354 leay >$0080,y + bsr L0314 + dec <u0032,u + rts +L035E ldy <u0022,u + leay >$17F0,y + inc <u0032,u + pshs u + leau >-$0100,y + lda #$F0 + bsr L037C + leay ,u + puls u + inc <u0031,u + bra L0354 +L037C ldb #$17 + pshs b +L0380 ldb #$10 +L0382 ldx ,u + stx ,y + ldx u0002,u + stx $02,y + ldx u0004,u + stx $04,y + ldx u0006,u + stx $06,y + ldx u0008,u + stx $08,y + ldx u000A,u + stx $0A,y + ldx u000C,u + stx $0C,y + ldx u000E,u + stx $0E,y + leay a,y + leau a,u + decb + bne L0382 + dec ,s + bne L0380 + puls pc,b + inc <u0032,u + bsr L03BA + dec <u0032,u + lbra L014C +L03BA clr <u0033,u + ldb <u0024,u + pshs b + bitb #$07 + bne L03CB + lda #$05 + mul + bra L03F3 +L03CB lda #$01 + pshs a +L03CF lda #$20 + lbsr L01B3 + lda <u0024,u + inca + sta <u0024,u + cmpa #$33 + bcs L03E3 + leas $01,s + bra L040D +L03E3 dec ,s + bpl L03CF + lda <u0024,u + ldb #$05 + mul + bitb #$08 + bne L03CF + leas $01,s +L03F3 lsrb + lsrb + lsrb + ldy <u0022,u + lda <u0025,u + leay d,y + leay >$0080,y + lda #$20 + pshs b + suba ,s+ + lsra + lbsr L0316 +L040D puls a + sta <u0024,u + rts + inc <u0032,u + bsr L03BA + lda #$17 + suba <u0025,u + bls L042A + pshs a +L0421 lbsr L0314 + dec ,s + bne L0421 + leas $01,s +L042A dec <u0032,u + lbra L014C + clr <u0024,u + clr <u0025,u + lbra L02A6 + ldb <u001F,u + subb #$02 + bne L0442 + clrb + rts +L0442 decb + bne L0450 + cmpa #$33 + bcs L044B + lda #$32 +L044B sta <u0024,u + clrb + rts +L0450 cmpa #$18 + bcs L0456 + lda #$17 +L0456 sta <u0025,u +L0459 lbra L02A6 + inc <u0024,u + lda <u0024,u + cmpa #$33 + bcs L0459 + clr <u0024,u + lbra L02AC + lda #$FF + coma +L046F sta <u0038,u + lbra L014C +L0475 lda #$FF + bra L046F + lda #$FF +L047B sta <u0039,u + lbra L014C + clra + bra L047B +L0484 ldd <u0024,u + inc <u0032,u + tst <u0033,u + bne L0494 + std <u0030,u + bra L04B9 +L0494 pshs b,a + ldd <u0030,u + inc <u0034,u + tstb + bmi L04AB + cmpb #$18 + bcc L04AB + std <u0024,u + lda #$7F + lbsr L01B3 +L04AB puls b,a + std <u0024,u + std <u0030,u + clr <u0033,u + dec <u0034,u +L04B9 dec <u0032,u + clrb + rts + +GetStat cmpa #$01 + bne L04D0 + lda <u001D,u + cmpa <u001E,u + beq L04CC +L04CA clrb + rts +L04CC comb + ldb #$F6 + rts +L04D0 cmpa #$06 + beq L04CA + cmpa #$02 + bne SetStat + ldx $06,y + ldd <u0022,u + std $04,x + clrb + rts + +SetStat comb + ldb #$D0 + rts + +L04E5 tst <u0032,u + bne L0512 + dec <u0037,u + bne L0512 + lda #$10 + sta <u0037,u + inc <u0034,u + ldd <u0024,u + pshs b,a + ldd <u0030,u + std <u0024,u + lda #$7F + lbsr L01B3 + puls b,a + std <u0024,u + com <u0033,u + dec <u0034,u +L0512 ldx #$FF00 + lda #$FF + sta $02,x + bsr L053B + anda #$03 + bne L0526 + clra + sta $02,x + bsr L053B + bne L052D +L0526 clr <u0027,u + clr <u0028,u + rts +L052D tst <u0028,u + bne L0541 + sta <u0028,u +L0535 clrb + rts +L0537 clrb + stb $02,x + rts +L053B lda ,x + coma + anda #$7F + rts +L0541 cmpa <u0028,u + bne L0526 + clr <u002A,u + clr <u002B,u + clr <u002C,u + clr <u002D,u + clr <u002E,u + ldb #$01 +L0557 comb + stb $02,x + bsr L053B + beq L05A1 + bita #$40 + beq L0583 + cmpb #$7F + bne L056B + inc <u002D,u + bra L057F +L056B cmpb #$FD + bne L0574 + inc <u002E,u + bra L057F +L0574 tst <u002C,u + bne L0537 + stb <u002C,u + com <u002C,u +L057F anda #$3F + beq L05A1 +L0583 pshs b,a + clrb +L0586 lsra + bcc L058A + incb +L058A tsta + bne L0586 + cmpb #$01 + puls b,a + bne L0537 + tst <u002A,u + bne L0537 + sta <u002A,u + stb <u002B,u + com <u002B,u +L05A1 comb + lslb + bne L0557 + stb $02,x + ldb <u002C,u + beq L05B5 + tst <u002A,u + bne L0535 + lda #$40 + bra L05BF +L05B5 ldb <u002B,u + lda <u002A,u + lbeq L0526 +L05BF pshs b + tst <u0027,u + beq L05D0 + dec <u0027,u + beq L05D4 + puls b + lbra L0665 +L05D0 ldb #$32 + bra L05D6 +L05D4 ldb #$05 +L05D6 stb <u0027,u + lbsr L0667 + lslb + lslb + lslb + puls a + pshs b + lbsr L0667 + orb ,s+ + stb <u0029,u + leax >L0820,pcr + lda b,x + tst <u002E,u + beq L05FE + leax >L0886,pcr + lda b,x + bra L0609 +L05FE tst <u002D,u + beq L0612 + leax >L0853,pcr + lda b,x +L0609 cmpa #$1F + bne L0621 + com <u002F,u + bra L0665 +L0612 tst <u002F,u + beq L0621 + cmpa #$61 + bcs L0621 + cmpa #$7A + bhi L0621 + suba #$20 +L0621 leax <u003A,u + ldb <u001E,u + sta b,x + incb + cmpb #$64 + bcs L062F + clrb +L062F cmpb <u001D,u + bne L0638 + inc u000E,u + bra L063B +L0638 stb <u001E,u +L063B tsta + beq L065A + cmpa u000D,u +L0640 bne L064A + ldx u0009,u + beq L065A +L0646 sta $08,x + bra L065A +L064A ldb #$03 + cmpa u000B,u + beq L0656 + ldb #$02 + cmpa u000C,u + bne L065A +L0656 lda u0003,u + bra L065E +L065A ldb #S$Wake + lda u0005,u +L065E beq L0663 + os9 F$Send +L0663 clr u0005,u +L0665 clrb + rts +L0667 clrb +L0668 incb + lsra + bne L0668 + decb + rts + +L066E fcb $07 + fcb $FC + fcb $0B + fcb $08 + fcb $FC + fcb $23 + fcb $0A + fcb $FC + fcb $3E + fcb $0D + fcb $FC + fcb $50 + fcb $0C + fcb $FC + fcb $55 + fcb $0B + fcb $FD + fcb $C2 + fcb $00 +L0681 fcb $41 + fcb $FD + fcb $CB + fcb $42 + fcb $FD + fcb $41 + fcb $43 + fcb $FD + fcb $EE + fcb $44 + fcb $FC + fcb $2D + fcb $45 + fcb $FC + fcb $3E + fcb $46 + fcb $FD + fcb $FE + fcb $47 + fcb $FE + fcb $07 + fcb $48 + fcb $FE + fcb $0B + fcb $49 + fcb $FE + fcb $13 + fcb $4A + fcb $FD + fcb $A5 + fcb $00 +L06A0 fcb $00 + fcb $00 + fcb $00 + fcb $00 + fcb $44 + fcb $40 + fcb $40 + fcb $00 + fcb $55 + fcb $00 + fcb $00 + fcb $00 + fcb $6F + fcb $6F + fcb $60 + fcb $00 + fcb $27 + fcb $86 + fcb $1E + fcb $20 + fcb $91 + fcb $24 + fcb $89 + fcb $00 + fcb $4A + fcb $4A + fcb $D0 + fcb $00 + fcb $44 + fcb $00 + fcb $00 + fcb $00 + fcb $24 + fcb $44 + fcb $20 + fcb $00 + fcb $42 + fcb $22 + fcb $40 + fcb $00 + fcb $96 + fcb $F6 + fcb $90 + fcb $00 + fcb $44 + fcb $E4 + fcb $40 + fcb $00 + fcb $00 + fcb $02 + fcb $24 + fcb $00 + fcb $00 + fcb $F0 + fcb $00 + fcb $00 + fcb $00 + fcb $06 + fcb $60 + fcb $00 + fcb $01 + fcb $24 + fcb $80 + fcb $00 + fcb $69 + fcb $BD + fcb $60 + fcb $00 + fcb $26 + fcb $22 + fcb $70 + fcb $00 + fcb $69 + fcb $2C + fcb $F0 + fcb $00 + fcb $E1 + fcb $61 + fcb $E0 + fcb $00 + fcb $26 + fcb $AF + fcb $20 + fcb $00 + fcb $F8 + fcb $E1 + fcb $E0 + fcb $00 + fcb $78 + fcb $E9 + fcb $60 + fcb $00 + fcb $F1 + fcb $24 + fcb $40 + fcb $00 + fcb $69 + fcb $69 + fcb $60 + fcb $00 + fcb $69 + fcb $71 + fcb $60 + fcb $00 + fcb $00 + fcb $40 + fcb $40 + fcb $00 + fcb $00 + fcb $20 + fcb $24 + fcb $00 + fcb $24 + fcb $84 + fcb $20 + fcb $00 + fcb $0F + fcb $0F + fcb $00 + fcb $00 + fcb $42 + fcb $12 + fcb $40 + fcb $00 + fcb $69 + fcb $22 + fcb $02 + fcb $00 + fcb $69 + fcb $BB + fcb $87 + fcb $00 + fcb $69 + fcb $F9 + fcb $90 + fcb $00 + fcb $E9 + fcb $E9 + fcb $E0 + fcb $00 + fcb $78 + fcb $88 + fcb $70 + fcb $00 + fcb $E9 + fcb $99 + fcb $E0 + fcb $00 + fcb $F8 + fcb $E8 + fcb $F0 + fcb $00 + fcb $F8 + fcb $E8 + fcb $80 + fcb $00 + fcb $78 + fcb $B9 + fcb $70 + fcb $00 + fcb $99 + fcb $F9 + fcb $90 + fcb $00 + fcb $E4 + fcb $44 + fcb $E0 + fcb $00 + fcb $F2 + fcb $2A + fcb $40 + fcb $00 + fcb $9A + fcb $CA + fcb $90 + fcb $00 + fcb $88 + fcb $88 + fcb $F0 + fcb $00 + fcb $FD + fcb $D9 + fcb $90 + fcb $00 + fcb $9D + fcb $B9 + fcb $90 + fcb $00 + fcb $69 + fcb $99 + fcb $60 + fcb $00 + fcb $E9 + fcb $E8 + fcb $80 + fcb $00 + fcb $69 + fcb $9B + fcb $70 + fcb $00 + fcb $E9 + fcb $EA + fcb $90 + fcb $00 + fcb $78 + fcb $61 + fcb $E0 + fcb $00 + fcb $E4 + fcb $44 + fcb $40 + fcb $00 + fcb $99 + fcb $99 + fcb $60 + fcb $00 + fcb $99 + fcb $96 + fcb $60 + fcb $00 + fcb $99 + fcb $DD + fcb $F0 + fcb $00 + fcb $99 + fcb $69 + fcb $90 + fcb $00 + fcb $99 + fcb $71 + fcb $E0 + fcb $00 + fcb $F1 + fcb $68 + fcb $F0 + fcb $00 + fcb $E8 + fcb $88 + fcb $E0 + fcb $00 + fcb $08 + fcb $42 + fcb $10 + fcb $00 + fcb $71 + fcb $11 + fcb $70 + fcb $00 + fcb $69 + fcb $00 + fcb $00 + fcb $00 + fcb $00 + fcb $00 + fcb $0F + fcb $00 + fcb $22 + fcb $00 + fcb $00 + fcb $00 + fcb $07 + fcb $99 + fcb $70 + fcb $00 + fcb $8E + fcb $99 + fcb $E0 + fcb $00 + fcb $07 + fcb $88 + fcb $70 + fcb $00 + fcb $17 + fcb $99 + fcb $70 + fcb $00 + fcb $07 + fcb $AC + fcb $70 + fcb $00 + fcb $34 + fcb $F4 + fcb $40 + fcb $00 + fcb $06 + fcb $99 + fcb $71 + fcb $E0 + fcb $8E + fcb $99 + fcb $90 + fcb $00 + fcb $40 + fcb $44 + fcb $40 + fcb $00 + fcb $20 + fcb $22 + fcb $22 + fcb $C0 + fcb $8A + fcb $CA + fcb $90 + fcb $00 + fcb $44 + fcb $44 + fcb $40 + fcb $00 + fcb $0E + fcb $DD + fcb $90 + fcb $00 + fcb $0E + fcb $99 + fcb $90 + fcb $00 + fcb $06 + fcb $99 + fcb $60 + fcb $00 + fcb $0E + fcb $99 + fcb $E8 + fcb $80 + fcb $07 + fcb $99 + fcb $71 + fcb $10 + fcb $07 + fcb $88 + fcb $80 + fcb $00 + fcb $07 + fcb $C3 + fcb $E0 + fcb $00 + fcb $4F + fcb $44 + fcb $30 + fcb $00 + fcb $09 + fcb $99 + fcb $70 + fcb $00 + fcb $09 + fcb $96 + fcb $60 + fcb $00 + fcb $09 + fcb $DD + fcb $60 + fcb $00 + fcb $09 + fcb $66 + fcb $90 + fcb $00 + fcb $09 + fcb $99 + fcb $71 + fcb $E0 + fcb $0F + fcb $24 + fcb $F0 + fcb $00 + fcb $34 + fcb $C4 + fcb $30 + fcb $00 + fcb $44 + fcb $04 + fcb $40 + fcb $00 + fcb $C2 + fcb $32 + fcb $C0 + fcb $00 + fcb $05 + fcb $A0 + fcb $00 + fcb $00 + fcb $FF + fcb $FF + fcb $FF + fcb $F0 +L0820 fcb $30 + fcb $31 + fcb $32 + fcb $33 + fcb $34 + fcb $35 + fcb $36 + fcb $37 + fcb $38 + fcb $39 + fcb $3A + fcb $3B + fcb $2C + fcb $2D + fcb $2E + fcb $2F + fcb $40 + fcb $61 + fcb $62 + fcb $63 + fcb $64 + fcb $65 + fcb $66 + fcb $67 + fcb $68 + fcb $69 + fcb $6A + fcb $6B + fcb $6C + fcb $6D + fcb $6E + fcb $6F + fcb $70 + fcb $71 + fcb $72 + fcb $73 + fcb $74 + fcb $75 + fcb $76 + fcb $77 + fcb $78 + fcb $79 + fcb $7A + fcb $0C + fcb $0A + fcb $08 + fcb $09 + fcb $20 + fcb $0D + fcb $00 + fcb $05 +L0853 fcb $30 + fcb $21 + fcb $22 + fcb $23 + fcb $24 + fcb $25 + fcb $26 + fcb $27 + fcb $28 + fcb $29 + fcb $2A + fcb $2B + fcb $3C + fcb $3D + fcb $3E + fcb $3F + fcb $7C + fcb $41 + fcb $42 + fcb $43 + fcb $44 + fcb $45 + fcb $46 + fcb $47 + fcb $48 + fcb $49 + fcb $4A + fcb $4B + fcb $4C + fcb $4D + fcb $4E + fcb $4F + fcb $50 + fcb $51 + fcb $52 + fcb $53 + fcb $54 + fcb $55 + fcb $56 + fcb $57 + fcb $58 + fcb $59 + fcb $5A + fcb $1C + fcb $1A + fcb $18 + fcb $19 + fcb $20 + fcb $0D + fcb $00 + fcb $03 +L0886 fcb $1F + fcb $7C + fcb $00 + fcb $7E + fcb $00 + fcb $00 + fcb $00 + fcb $5E + fcb $5B + fcb $5D + fcb $00 + fcb $00 + fcb $7B + fcb $5F + fcb $7D + fcb $5C + fcb $00 + fcb $01 + fcb $02 + fcb $03 + fcb $04 + fcb $05 + fcb $06 + fcb $07 + fcb $08 + fcb $09 + fcb $0A + fcb $0B + fcb $0C + fcb $0D + fcb $0E + fcb $0F + fcb $10 + fcb $11 + fcb $12 + fcb $13 + fcb $14 + fcb $15 + fcb $16 + fcb $17 + fcb $18 + fcb $19 + fcb $1A + fcb $13 + fcb $12 + fcb $10 + fcb $11 + fcb $20 + fcb $0D + fcb $00 + fcb $1B + + emod +eom equ *