*** empty log message ***
[h316.git] / lib / iolib / src / i$pa.asm
index e56f2470b65f561073cbae1ecff75a04556d9027..acbb230644c79a89f43a3a88eb8bcf4a80f405df 100644 (file)
@@ -10,6 +10,7 @@
 *
 * REVISIONS: 
 *            0.1 (2005-02.04)
+*            0.2 (2006-12.14) - ADDED REGISTER SAVE INSTRUCTIONS
 *
 * AUTHOR
 *
@@ -18,7 +19,7 @@
 *
 * PURPOSE
 *
-*    TO READ ASCII SOURCE TEXT FROM HIGH SPEED PAPTER TAPE READER
+*    TO READ ASCII SOURCE TEXT FROM HIGH SPEED PAPER TAPE READER
 *
 *
 * RESTRICTIONS
@@ -68,6 +69,8 @@
 * 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
@@ -82,13 +85,18 @@ I$PI        DAC     **      SETUP READ ROUTINE
 *
        ADD     NTAB    TAB COUNT
        STA     I$PI    RETURN ADDRESS
+       LDA     SRA
        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
@@ -140,7 +148,7 @@ NAC JST     NSRT    INSERT IN CHARACTER POSITION
 TAB    CRA             CLEAR A-REGISTER
        SUB     NTAB    TAB COUNT
        SNZ             NZ, SKIP
-       JMP     NOTB    Z, NO TDBS
+       JMP     NOTB    Z, NO TABS
 *
        STA     0       INDEX REGISTER
        LDA     TABL    TAB TABLE LINK
@@ -194,7 +202,10 @@ DLT        JST     INPT    READ ONE CHARACTER
 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
@@ -211,7 +222,9 @@ INPT        DAC     **
 *
 * 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
@@ -219,10 +232,10 @@ TABI      BSZ     1       TABLE POINTER
 * CHANGEABLE PARAMETERS
 LIM    DEC     80      BUFFER LIMIT (DEFAULT IS 80)
 NTAB   DEC     4       TAB COUNT (DEFAULT IS 4)
-TABL   DAC     TDBS    TAB TABLE LINK (DEFAULT IS TDBS)
+TABL   DAC     TABS    TAB TABLE LINK (DEFAULT IS TABS)
 *
 * DAP-16 TAB SETTINGS
-TDBS   DEC     6       OPERATION FIELD
+TABS   DEC     6       OPERATION FIELD
        DEC     12      VARIABLE FIELD
        DEC     30      COMMENTS FIELD
        DEC     73      IDENTIFICATION FIELD