# HG changeset patch # User boisy # Date 1085175855 0 # Node ID 4a2a4667a4cf5629d04d4a9fb6a86bc7a1684400 # Parent 0e3a287891962fc64c3c1e9562e1b56c38243321 Source enhancements diff -r 0e3a28789196 -r 4a2a4667a4cf level1/modules/ccio.asm --- a/level1/modules/ccio.asm Fri May 21 16:44:02 2004 +0000 +++ b/level1/modules/ccio.asm Fri May 21 21:44:15 2004 +0000 @@ -28,60 +28,7 @@ mod eom,name,tylg,atrv,start,size - rmb V.SCF -u001D rmb 7 -u0024 rmb 1 -u0025 rmb 1 -u0026 rmb 2 -u0028 rmb 1 -u0029 rmb 4 -ScreenX rmb 1 -ScreenY rmb 1 -u002F rmb 1 -u0030 rmb 1 -u0031 rmb 1 -u0032 rmb 1 -u0033 rmb 2 -u0035 rmb 2 -u0037 rmb 9 -u0040 rmb 2 -u0042 rmb 2 -u0044 rmb 1 -u0045 rmb 2 -u0047 rmb 1 -u0048 rmb 1 -u0049 rmb 2 -u004B rmb 5 -u0050 rmb 1 -u0051 rmb 1 -WrChar rmb 1 -CoInUse rmb 2 -u0055 rmb 6 -u005B rmb 2 -u005D rmb 2 -u005F rmb 1 -u0060 rmb 1 -u0061 rmb 2 -u0063 rmb 2 -u0065 rmb 1 -u0066 rmb 1 -u0067 rmb 1 -u0068 rmb 1 -u0069 rmb 1 -u006A rmb 1 -u006B rmb 1 -u006C rmb 1 -u006D rmb 1 -u006E rmb 1 -u006F rmb 1 -u0070 rmb 1 -trulocas rmb 1 -CoEnt equ . -GRFOEnt rmb 6 -IBufHead rmb 1 -IBufTail rmb 1 -u007A rmb 128 -size equ . +size equ V.Last fcb UPDAT.+EXEC. @@ -114,17 +61,17 @@ bne L002E continue if more coma A = $FF comb B = $FF - stb AltIRQ,pcr get IRQ routine ptr stx >D.AltIRQ store in AltIRQ - leax >SetDsply,pcr - stx L050F,pcr - stx SetDsply,pcr get display vector + stx XY2Addr,pcr get address of XY2Addr + stx D.KbdSta get keyboard static - ldb D.Clock] jump into clock module + L00E8 comb - stb $02,x - ldb ,x - comb - andb #$03 + stb $02,x strobe one column + ldb ,x read PIA #0 row states + comb invert bits so 1=key pressed + andb #$03 mask out all but lower 2 bits rts L00F1 bsr L015C @@ -231,28 +179,28 @@ clrb bsr L00E8 bne L00CC - cmpa KeyTbl,pcr point to keyboard table +L01CB lda KeyTbl,pcr point to keyboard table lda b,x puls x - bmi L01FD -L01E9 ldb PIA1Base+2 anda #$07 mask out all but lower 3 bits ora ,s+ OR in passed A tstb display graphics? bne L03DE branch if so - ora PIA1Base+2 - sta $FFC0 stb >$FFC2 stb >$FFC4 - lda $FFC0 stb >$FFC3 stb >$FFC5 - lda GRFO,pcr get pointer to name string - bsr LinkSub link to GRFO - bcc L067B branch if ok - puls pc,y,a else exit with error -L067B sty GRFO,pcr get pointer to name string + bsr LinkSub link to GRFO + bcc L067B branch if ok + puls pc,y,a else exit with error +L067B sty L0637,pcr - lda a,x - sta Mode1Clr,pcr point to mask byte table + lda a,x get byte + sta L0637,pcr - ldb a,x - bra L07B2 +* NOTE! Shouldn't this be lda Mode1Clr,pcr point to color table + ldb a,x get appropriate byte + bra L07B2 and start the clearing * Erase graphics screen Do13 EraseGfx clrb value to clear screen with -L07B2 ldx 6144+1,x point to end of gfx mem + 1 L07B9 stb ,-x clear - cmpx 512,x point to end of screen - stx L01B0,pcr ldb #$02 -L01A8 stx <$26,u - stb <$25,u +L01A8 stx