Mercurial > hg > Members > kono > nitros9-code
changeset 1485:2a89fb768fd8
VRN now ported to Level 1
author | boisy |
---|---|
date | Mon, 22 Dec 2003 21:53:29 +0000 |
parents | d789ed24fd34 |
children | 710da4efaaee |
files | level1/modules/vrn.asm |
diffstat | 1 files changed, 25 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/level1/modules/vrn.asm Fri Dec 19 13:27:01 2003 +0000 +++ b/level1/modules/vrn.asm Mon Dec 22 21:53:29 2003 +0000 @@ -74,8 +74,13 @@ lbra VGStt lbra VSStt lbra VTerm + + IFGT Level-1 IRQPckt fcb $00,$01,$0A IRQ packet Flip(1),Mask(1),Priority(1) bytes + ENDC + VInit equ * + IFGT Level-1 * Note that all device memory except V.PAGE and * V.PORT has already been cleared (zeroed). leax VIRQPckt+Vi.Stat,u fake VIRQ status register @@ -95,11 +100,18 @@ pshs cc,b save error info bsr DumpIRQ go remove from IRQ polling puls cc,b,pc recover error info & exit... + ELSE + clrb + rts + ENDC + VRead equ * comb ldb #E$EOF InitExit rts + VTerm equ * + IFGT Level-1 ldx #$0000 code to delete VIRQ entry leay VIRQPckt,u VIRQ software registers os9 F$VIRQ remove from VIRQ polling @@ -109,8 +121,13 @@ ldx #$0000 code to remove IRQ entry leay IRQSvc,pc IRQ service routine os9 F$IRQ + ELSE + clrb + ENDC Term.Err rts + VGStt equ * + IFGT Level-1 * [A] = call code * call $01: SS.Ready (device never has data ready) * call $80: return FS2/FS2+ total VIRQ counter @@ -152,8 +169,13 @@ lda FS2.STot,x number of signals sent sta R$A,y return it to caller clr FS2.STot,x clear signal counter + ELSE + clrb + ENDC rts + VSStt equ * + IFGT Level-1 * [A] = call code * call $2A: SS.Close (clear all process+path entries) * call $81: set process+path FS2 VIRQ, clear process+path FS2/FS2+ VIRQ @@ -323,9 +345,12 @@ NoFS2Sgl leau VTSize,u next table leay -1,y done all tables? bne IRQLoop no, go check next... + ENDC + VWrit equ * clrb no error... rts + emod VEnd equ * end