projects
/
h316.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
*** empty log message ***
[h316.git]
/
lib
/
iolib
/
src
/
i$pa.asm
diff --git
a/lib/iolib/src/i$pa.asm
b/lib/iolib/src/i$pa.asm
index a5e3033dd295f33fd6bf848132737f6a505eae03..acbb230644c79a89f43a3a88eb8bcf4a80f405df 100644
(file)
--- a/
lib/iolib/src/i$pa.asm
+++ b/
lib/iolib/src/i$pa.asm
@@
-10,6
+10,7
@@
*
* REVISIONS:
* 0.1 (2005-02.04)
*
* REVISIONS:
* 0.1 (2005-02.04)
+* 0.2 (2006-12.14) - ADDED REGISTER SAVE INSTRUCTIONS
*
* AUTHOR
*
*
* AUTHOR
*
@@
-18,7
+19,7
@@
*
* PURPOSE
*
*
* PURPOSE
*
-* TO READ ASCII SOURCE TEXT FROM HIGH SPEED PAP
T
ER TAPE READER
+* TO READ ASCII SOURCE TEXT FROM HIGH SPEED PAPER TAPE READER
*
*
* RESTRICTIONS
*
*
* RESTRICTIONS
@@
-38,8
+39,8
@@
* CALL I$PA
* DAC (BUFFER ADDRESS)
*
* CALL I$PA
* DAC (BUFFER ADDRESS)
*
-* I$PI - CONFIGURE
O
$PA
-* CALL
O
$PI
+* I$PI - CONFIGURE
I
$PA
+* CALL
I
$PI
* DEC (NUMBER OF WORDS IN DATA BUFFER)
* DEC (NUMBER OF TABS IN FOLLOWING TABLE, IF ANY)
* DEC TAB (1)
* DEC (NUMBER OF WORDS IN DATA BUFFER)
* DEC (NUMBER OF TABS IN FOLLOWING TABLE, IF ANY)
* DEC TAB (1)
@@
-49,7
+50,11
@@
* . .
* DEC TAB (N)
*
* . .
* DEC TAB (N)
*
-*
+* NOTICE
+*
+* THE CHARACTER SEQUENCE 'ABS' HAS BEEN REPLACED BY 'DBS' BECAUSE THE
+* ASSEMBLER SHOWED STRANGE BEHAVIOUR
+*
********************************************************************************
*
* EXPORTED LABELS
********************************************************************************
*
* EXPORTED LABELS
@@
-64,6
+69,8
@@
* SETUP READ ROUTINE
*
I$PI DAC ** SETUP READ ROUTINE
* SETUP READ ROUTINE
*
I$PI DAC ** SETUP READ ROUTINE
+ STA SRA SAVE A REGISTER
+*
LDA* I$PI WORD COUNT PARAMETER
LGL 1 LEFT SHIFT 1
STA LIM BUFFER LIMIT
LDA* I$PI WORD COUNT PARAMETER
LGL 1 LEFT SHIFT 1
STA LIM BUFFER LIMIT
@@
-78,13
+85,18
@@
I$PI DAC ** SETUP READ ROUTINE
*
ADD NTAB TAB COUNT
STA I$PI RETURN ADDRESS
*
ADD NTAB TAB COUNT
STA I$PI RETURN ADDRESS
+ LDA SRA
JMP* I$PI EXIT
*
*
* READ ROUTINE
*
I$PA DAC ** READ ROUTINE
JMP* I$PI EXIT
*
*
* READ ROUTINE
*
I$PA DAC ** READ ROUTINE
- STX SIR SAVED INDEX REGISTER
+ STA SRA SAVE A REGISTER
+ IAB
+ STA SRB SAVE B REGISTER
+ STX SRI SAVE INDEX REGISTER
+*
LDA* I$PA BUFFER ADDRESS PARAMETER
LGL 1 LEFT SHIFT 1
STA BUFL BUFFER LINK
LDA* I$PA BUFFER ADDRESS PARAMETER
LGL 1 LEFT SHIFT 1
STA BUFL BUFFER LINK
@@
-190,7
+202,10
@@
DLT JST INPT READ ONE CHARACTER
EXIT IRS I$PA TALLY RETURN ADDRESS
IRS I$PA TALLY RETURN ADDRESS
*
EXIT IRS I$PA TALLY RETURN ADDRESS
IRS I$PA TALLY RETURN ADDRESS
*
- LDX SIR SAVED INDEX REGISTER
+ LDX SRI SAVED INDEX REGISTER
+ LDA SRB RESTORE B REGISTER
+ IAB
+ LDA SRA RESTORE A REGISTER
JMP* I$PA EXIT
*
* CHARACTER INPUT ROUTINE
JMP* I$PA EXIT
*
* CHARACTER INPUT ROUTINE
@@
-207,7
+222,9
@@
INPT DAC **
*
* VARIABLES AND CONSTANTS
*
*
* VARIABLES AND CONSTANTS
*
-SIR BSZ 1 STORED INDEX REGISTER
+SRI BSZ 1 SAVED INDEX REGISTER
+SRA BSZ 1 SAVED A REGISTER
+SRB BSZ 1 SAVED B REGISTER
BUFL BSZ 1 BUFFER LINK
CP BSZ 1 CHARACTER POSITION
TABI BSZ 1 TABLE POINTER
BUFL BSZ 1 BUFFER LINK
CP BSZ 1 CHARACTER POSITION
TABI BSZ 1 TABLE POINTER