home *** CD-ROM | disk | FTP | other *** search
- 0000LIOPORT00H
- 0005LBDOS
- 0006LIOPORT06H
- 0100I
- 0100LSTARTUP
- 0100CGive intro screen
- 0106LGET_BAUD_RATE
- 0106CAsk for baudrate value
- 010FCRETURN only?
- 0111CNo, look at keypress
- 0114CYes, use default value
- 0116LEDIT_BAUD_RATE
- 0116CMake into binary 0-9
- 0118CLegal choice?
- 011ACNo, try again
- 011FCLikewise no, try again
- 0122CYes, save it as binary value
- 0125LGET_PARITY_CHOICE
- 0125CGive him parity choices
- 012BCGet his response
- 012ECRETURN only?
- 0130CNo, edit it
- 0133CYes, use default
- 0135LEDIT_PARITY_VALUE
- 0135CEven parity?
- 0137CYes, legal
- 013ACOdd parity?
- 013CCYes, legal
- 013FCNo parity?
- 0141CYes, legal
- 0144CNot legal, so ask again
- 0147LPARITY_IS_LEGAL
- 0147CSave parity selection as ASCII
- 014ALGET_DATABITS_CHOICE
- 014ACGive Databits prompt
- 0150CGet response
- 0153CRETURN only?
- 0155CNo, use it
- 0158CYes, use default
- 015ALEDIT_DATABITS_VALUE
- 015ACMake into binary 0 thru 8
- 015CCLegal choice?
- 015ECYes, use it
- 0163CYes, use it
- 0166CNo, try again
- 0169LDATABITS_ARE_LEGAL
- 0169CSave binary databits value
- 016CC\nNow convert baudrate choice to binary timer value
- 016FC19.2 Kbaud?
- 0171CNo
- 0174CYes, use timer value for 19.2 Kbaud
- 0179LTRY_9600_BAUD
- 0179C9600 baud?
- 017BCNo
- 017ECYes, use timer value for 9600 baud
- 0183LTRY_4800_BAUD
- 0183C4800 baud?
- 0185CNo
- 0188CYes, use timer value for 4800 baud
- 018DLTRY_2400_BAUD
- 018DC2400 baud?
- 018FCNo
- 0192CYes, use timer value for 2400 baud
- 0197LTRY_1200_BAUD
- 0197C1200 baud?
- 0199CNo
- 019CCYes, use value for 1200 baud
- 01A1LTRY_600_BAUD
- 01A1C600 baud?
- 01A3CNo
- 01A6CYes, use timer value for 600 baud
- 01ABLTRY_300_BAUD
- 01ABC300 baud?
- 01B0CYes, use timer value for 300 baud
- 01B5LASSUME_110_BAUD
- 01B5CUse timer value for 110 baud
- 01B7LDONE_EDITING_BAUD
- 01B7CSave final timer value for baudrate
- 01BAC\nNow convert parity selection to proper control bits
- 01BDCEven parity?
- 01BFCNo
- 01C2CYes, use bit pattern for Even parity
- 01C7LTRY_ODD_PARITY
- 01C7COdd parity?
- 01C9CNo
- 01CCCYes, use bit pattern for Odd parity
- 01D1LASSUME_NO_PARITY
- 01D1CUse bit pattern for No parity
- 01D3LHAVE_GOOD_PARITY_BITMAP
- 01D3CSave final SIO parity bitmap
- 01D6C\nEdit databits (binary 7 or 8) \nto create proper SIO bit pattern
- 01D9C7 data bits?
- 01DBCYes
- 01DECNo, use SIO WR5 pattern for 8 TX databits
- 01E0CSave to be passed to SIO Write Reg 5
- 01E3CFormat 8 Rx databits for SIO Write Reg 3
- 01EBLSET_7_DATABIT_PATTERN
- 01EBCSet bit pattern for 7 Tx bits
- 01F0CDitto for 7 Rx data bits
- 01F5LSEND_ALL_TO_SIO
- 01F5C\nOK, so send everything to SIO
- 01F6CReset SIO
- 01FCCSelect SIO Write Reg 1
- 0200CNo SIO interrupts
- 0203CSelect SIO Write Reg 4
- 0207CGet parity bit pattern
- 020ACAdd 'Clock x 16' and '1 stop bit' pattern
- 020ECSelect SIO Write Reg 3
- 0215CEnable Receiver
- 0219CSelect SIO Write Reg 5
- 0220CAdd 'DTR' and 'Tx Enable' and 'RTS'
- 0224CReset Baud Rate generator
- 0228CSet our Baud Rate timer value
- 022ECTell him that we're done
- 0234CBack to CP/M
- 0235I
- 0235LGET_BDOS_KEYPRESS
- 0235C\nReturn next keypress as Uppercase char in A-reg
- 0237CUse BDOS to get next keypress
- 023ACIs it lowercase char?
- 023CCNo, return it as-is
- 023DCYes, convert to uppercase
- 0240I
- 0240LPRINT_STRING
- 0240C\nPrint $-terminated string at (DE)
- 0245B
- 0245LINIT_MSG
- 02C8LBAUD_PROMPT
- 02EFLPARITY_PROMPT
- 0316LDATABITS_PROMPT
- 033DLWRAPUP_MSG
- 0358B
- 0358LBAUD_RATE
- 0359B
- 0359LDATABITS
- 035AB
- 035ALPARITY_CHOICE
- 035BLSIO_WR5_TX_BITS
- 035CLSIO_WR3_RX_BITS
- *
-