Xref: utzoo comp.os.os9:404 comp.sys.m6809:1029 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ncar!umigw!umbio!dnelson From: dnelson@umbio.MIAMI.EDU (Dru Nelson) Newsgroups: comp.os.os9,comp.sys.m6809 Subject: Re: Parallel Printer Driver/Descriptor Message-ID: <1477@umbio.MIAMI.EDU> Date: 14 Mar 89 03:22:19 GMT References: <42053@clyde.ATT.COM> Lines: 154 in article <42053@clyde.ATT.COM>, ag@floyd.ATT.COM says: > Xref: umbio comp.os.os9:394 comp.sys.m6809:220 > > I'm looking for a parallel printer driver that supports the J&M Disk > Controller with the parallel port. There was such an animal a while > back on Delphi, but it has disappeared. Any info would be appreciated.... > As promised p1.dr nam cpprint ttl Parallel Printer Driver ************************** * Printer Port Equates ************************** cp.port equ $FF44 Data Port cp.stat equ $FF4C Status Port cp.busy equ $01 ************************** * OS9 Def Files ************************** use /dd/defs/os9defs opt l I can't tell if it is an L or 1 opt l I used the L (lower case), I am not familiar with assembler (Yet!) use /dd/defs/scfdefs opt l ************************** * Static Storage ************************** CPMEM equ V.SCF+1 ************************** * Module Header ************************** mod cplen, cpnam, drivr+objct+reent+1 fdb cpent Execution Offset fdb cpmem Permanent Storage Size cpnam fcs "cpprint" fcb 1 Edition Number ************************** * Branch Table ************************* cpent lbra init lbra read lbra write lbra getsta lbra putsta lbra term ************************** * Write to Printer ************************** write equ * ldb cp.stat read status bitb #cp.busy test busy bit bne write loop back if busy sta cp.port write out data clrb rts done return ************************** * Do Nothing Entry ************************** init equ * read equ * getsta equ * putsta equ * term equ * clrb rts emmod cplen equ * end ------------------------------------------------------------------- p1.dd nam P1 ttl Parallel Printer Device Descriptor ************************** * OS9 Def Files * Note: since these occur before * the 'mod' statemen, none of the 'rmb's, etc will become * part of the memory resident module. ************************** use /dd/defs/os9defs opt l I can't tell if it is an L or 1 opt l I used the L (lower case), I am not familiar with assembler (Yet!) use /dd/defs/scfdefs opt l ************************** * Module Header ************************** mod p1end, p1nam, devic+objct+reent+1 fdb p1fmgr SCF Name String fdb p1dvr Driver Name String fcb $52 Public Write Mode fcb $ff I/O Page fcb $ff40 Base of Controller fcb it.end-it Top init table size ************************** * Initialization Table ************************** it.top equ * Top of Init Table it.dvc fcb dt.scf SCF Device Type it.upc fcb 0 Upper and Lower Case it.bso fcb 0 Allow backspace it.dlo fcb 1 Backspace over line it.eko fcb 0 No Echo it.alf fcb 0 No Auto LF it.nul fcb 0 End of line null count it.pau fcb 0 No end of page pause it.pag fcb 66 Lines per page it.bsp fcb $08 Backspace char it.del fcb $18 Delete character it.eor fcb $0D End of Record Char it.eof fcb 0 End of File Char it.rpr fcb $04 Reprint Last line char it.dup fcb $01 DUP last line char it.psc fcb $17 Pause char it.int fcb 0 Interupt char it.qut fcb 0 Quit Char it.bse fcb $57 Backspace Char it.ovf fcb $07 Line overflow char it.par fcb 0 Parity code it.bau fcb $04 Acia Baud Rate (Well I guess you can tell where they got there driver copied from) it.end equ * End of init table ************************** * Name Strings ************************** p1nam fcs "P1" Device Name p1fmgr fcs "SCF" File Manager Name p1dvr fcs "CPPRINT" Name of Driver ************************** * End of Module Ritual ************************** emmod p1end equ * end Just glad to finally give something back to the coco community. -- Dru Nelson UUCP: ....!uunet!gould!umbio!dnelson Miami, Florida MCI: dnelson Internet: dnelson%umbio@umigw.miami.edu