Mercurial > hg > Members > kono > nitros9-code
changeset 1495:a9023a200630
Removed old modules, fixed p.asm
author | boisy |
---|---|
date | Tue, 23 Dec 2003 23:48:05 +0000 |
parents | 9c8b46e1b8a2 |
children | ae1f95eb053b |
files | level1/modules/p1_sc6551dragon.asm level1/modules/p_bbp.asm level1/modules/ssc.asm level1/modules/sscpak.asm |
diffstat | 4 files changed, 4 insertions(+), 258 deletions(-) [+] |
line wrap: on
line diff
--- a/level1/modules/p1_sc6551dragon.asm Tue Dec 23 23:40:35 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ -******************************************************************** -* P1 - Serial port used as printer device descriptor -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* - Original Dragon Data distribution version - - nam P1 - ttl Serial port used as printer device descriptor - -* Disassembled 02/04/21 22:38:15 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - use scfdefs - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $00 - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb READ.+WRITE. mode byte - fcb HW.Page extended controller address - fdb $FF04 physical controller address - fcb initsize-*-1 initilization table size - fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf - fcb $00 case:0=up&lower,1=upper only - fcb $00 backspace:0=bsp,1=bsp then sp & bsp - fcb $00 delete:0=bsp over line,1=return - fcb $00 echo:0=no echo - fcb $01 auto line feed:0=off - fcb $00 end of line null count - fcb $00 pause:0=no end of page pause - fcb 66 lines per page - fcb $00 backspace character - fcb $00 delete line character - fcb $00 end of record character - fcb $00 end of file character - fcb $00 reprint line character - fcb $00 duplicate last line character - fcb $00 pause character - fcb $00 interrupt character - fcb $00 quit character - fcb $00 backspace echo character - fcb $00 line overflow character (bell) - fcb $00 init value for dev ctl reg - fcb B1200 baud rate - fdb name copy of descriptor name address - fcb C$XON acia xon char - fcb C$XOFF acia xoff char -initsize equ * - -name fcs /P1/ -mgrnam fcs /scf/ -drvnam fcs /acia51/ - - emod -eom equ * - end
--- a/level1/modules/p_bbp.asm Tue Dec 23 23:40:35 2003 +0000 +++ b/level1/modules/p_bbp.asm Tue Dec 23 23:48:05 2003 +0000 @@ -1,5 +1,5 @@ ******************************************************************** -* P - CoCo serial priner device descriptor +* P - CoCo serial printer device descriptor * * $Id$ * @@ -7,7 +7,7 @@ * ------------------------------------------------------------------ nam P - ttl CoCo serial priner device descriptor + ttl CoCo serial printer device descriptor * Disassembled 98/08/23 21:15:24 by Disasm v1.6 (C) 1988 by RML @@ -21,8 +21,8 @@ mod eom,name,tylg,atrv,mgrnam,drvnam - fcb READ.+WRITE. mode byte - fcb $07 extended controller address + fcb UPDAT. mode byte + fcb HW.Page extended controller address fdb $FF22 physical controller address fcb initsize-*-1 initilization table size fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf
--- a/level1/modules/ssc.asm Tue Dec 23 23:40:35 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,64 +0,0 @@ -******************************************************************** -* SSC - Tandy Speech/Sound Pak descriptor -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* From Tandy OS-9 Level One VR 02.00.00 - - nam SSC - ttl Tandy Speech/Sound Pak descriptor - -* Disassembled 98/08/23 17:18:22 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - use scfdefs - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $00 - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb READ.+WRITE. mode byte - fcb HW.Page extended controller address - fdb $0000 physical controller address - fcb initsize-*-1 initilization table size - fcb DT.SCF device type:0=scf,1=rbf,2=pipe,3=scf - fcb $00 case:0=up&lower,1=upper only - fcb $00 backspace:0=bsp,1=bsp then sp & bsp - fcb $01 delete:0=bsp over line,1=return - fcb $00 echo:0=no echo - fcb $00 auto line feed:0=off - fcb $00 end of line null count - fcb $00 pause:0=no end of page pause - fcb $00 lines per page - fcb C$BSP backspace character - fcb C$DEL delete line character - fcb C$CR end of record character - fcb $00 end of file character - fcb C$RPRT reprint line character - fcb C$RPET duplicate last line character - fcb $00 pause character - fcb $00 interrupt character - fcb $00 quit character - fcb $00 backspace echo character - fcb $00 line overflow character (bell) - fcb $00 init value for dev ctl reg - fcb $00 baud rate - fdb name copy of descriptor name address - fcb $00 acia xon char - fcb $00 acia xoff char -initsize equ * - -name fcs /SSC/ -mgrnam fcs /SCF/ -drvnam fcs /SSCPAK/ - - emod -eom equ * - end -
--- a/level1/modules/sscpak.asm Tue Dec 23 23:40:35 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,127 +0,0 @@ -******************************************************************** -* SSCPAK - Tandy Speech/Sound Pak driver -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 1 From Tandy OS-9 Level One VR 02.00.00 - - nam SSCPAK - ttl Tandy Speech/Sound Pak driver - -* Disassembled 98/08/23 17:33:46 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - use scfdefs - endc - -tylg set Drivr+Objct -atrv set ReEnt+rev -rev set $00 -edition set 1 - -BusyBit equ %10000000 SSPak busy status bit (active low) -CRA equ $01 PIA CRA offset -CRB equ $03 PIA CRB offset -MUXBit equ %00001000 COCO sound MUX control/select bit position -SpeakBit equ %01000000 SSPak speech status bit (active low) -SSPData equ $FF7E SSPak data register offset -SSPReset equ $FF7D SSPak reset register offset -SSPStat equ $FF7E SSPak status register offset - - mod eom,name,tylg,atrv,start,size - - rmb 29 -size equ . - - fcb READ.+WRITE. mode byte - -name fcs /SSCPAK/ - fcb edition - -start lbra Init - lbra Read - lbra Write - lbra GetStat - lbra SetStat - lbra Term - -Init pshs a - lda #$01 - sta >SSPReset reset SSPak - clra - sta >SSPReset end SSPak reset - puls pc,a - -Read ldb #E$BMode - bra ErrEx - -GetStat -SetStat ldb #E$UnkSvc -ErrEx orcc #Carry -Term rts - -Write ldy #SSPData - ldx #PIA0Base - ldu #PIA1Base - cmpa #C$LF linefeed? - beq WritEx ..yep, ignore it - cmpa #C$CR carriage return? - bne NormChar ..no - lda CRA,x get PIA0 CRA - ldb CRB,x get PIA0 CRB - pshs b,a save them - anda #^MUXBit clear PIA0 CA2 control LSBit - orb #MUXBit set PIA0 B@ control LSBit - sta CRA,x * set CoCo sound MUX to cartridge input - stb CRB,x * - lda CRB,u get PIA1 CRB - pshs a save it - ora #MUXBit set PIA1 CB2 control LSBit - sta CRB,u enable COCO sound MUX - lda #C$CR get carriage return - bsr ChkHW wait for SSPak to get ready - sta ,y store it in SSPak - bsr SpchWait wait until speech is active - bsr SSWait wait until speech is inactive - puls a get original PIA1 CRB - sta CRB,u disable COCO sound MUX - puls b,a get original PIA0 CRA/CRB - sta CRA,x restore original PIA0 CRA - stb CRB,x restore original PIA0 CRB - bra WritEx exit -NormChar bsr ChkHW wait for HW - sta ,y write char to HW -WritEx clrb - rts - -* Check SSC hardware, loop until it's ready -ChkHW pshs a -ChkHWLp lda ,y get SSPak status - anda #BusyBit SSPak busy? - beq ChkHWLp yep, go check again - puls pc,a - -* routine to loop until SSPak speech is inactive -SSWait pshs x,a -SSWait2 lda ,y get SSPak status - anda #SpeakBit SSPak speech active yet? - bne SSWaitEx yep, exit - ldx #$0001 sleep remainder of tick - os9 F$Sleep - bra SSWait2 -SSWaitEx puls pc,x,a - -* routine to loop until SSPak speech is active -SpchWait pshs a -SpchLoop lda ,y get SSPak status - anda #SpeakBit SSPak speech active yet? - bne SpchLoop no, go check again - puls pc,a return - - emod -eom equ * - end -