10.07.2015 Views

1130 Commercial Subroutine Package - All about the IBM 1130 ...

1130 Commercial Subroutine Package - All about the IBM 1130 ...

1130 Commercial Subroutine Package - All about the IBM 1130 ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ADDA 1A3A 1DECA3A 1CARRYDE CA1DIVDPA CKDUNPKEDITFILLGETICOMPIONDKEYBDMOVEMPYNCOMPNSIGNN ZONEPACKPRINTPUNCHPUTP1403P1442READR2501SKIPSTACKSUBS1403TYPERUNPACWHO LE// ASM CSP14180** IOND SUBROUTINE FOR <strong>1130</strong> COMMERCIAL SUBROUTINE PACKAGE 1101 CSP14190• NAME IOND 1101 CSPI4200* LIST CSP142100000 09595100 ENT IOND SUBROUTINE NAME CSPI4220•CALL IOND NO PARAMETERSC5P14230•CALL IOND ALLOWS I/O OPERATIONS TO END BEFORE A CSP14240* PAUSE OR STOP IS ENTERED CSP142500000 0001 IOND BSS 1 ARGUMENT ADDRESS CSP142600001 00 74000032 IOPND MDX L 50,0 ANY INTERRUPTS PENDING CSPI42700003 0 70FD MDX IOPND YES KEEP CHECKING CSP142800004 01 4C800000 BACK BSC I IOND NO ■ RETURN TO CALLING PRG CSP142900006 END CSP14300NO ERRORS IN ABOVE ASSEMBLY.// DUP CSP14310•STORE WS UA IOND3380 0002CSP14320// ASM CSP14330►• MOVE SUBROUTINE FOR <strong>1130</strong> COMMERCIAL SUBROUTINE PACKAGE (ID) CSP14340• NAME MOVE IID/ CSPI4350• LISTCSP143600000 143A5140 ENT MOVE MOVE SUBROUTINE ENTRY POINT CSP14370• CALL MOVEIJCARD.J.JLAST,KCARD.K/ CSP14380• THE WORDS JCARD(J) THROUGH CSP14390• JCARD(JLAST) ARE MOVED TO KCARD CSP14400• STARTING AT KCARD(K). CSP144100000 0 0000 MOVE DC •■• ARGUMENT ADDRESS COMES IN HERE CW144200001 0 691F STX 1 SAVE1+I SAVE IR1 CSP144300002 01 65800000 LDX II MOVE PUT ARGUMENT ADDRESS IN IR1 CSP144400004 0 C100 LD 1 0 GET JCARD ADDRESS CSP144500005 00 95800002 S Il 2 SUBTRACT JLAST VALUE CSP144600007 0 0013 STO LD1+1 PLACE ADDR OF JCARDIJLAST/ IN CSP14470• PICKUP OF MOVE CSP144800008 00 C5800002 LD 11 2 GET JLAST VALUE CSP14490000A 00 95800001 ONE S 11 1 SUBTRACT J VALUE CSP14500000C 0 4828 BSC +Z CHECK FIELD WIDTH CSP14510000D 0 1810 SRA 36 NEGATIVE ■ MAKE IT ZERO CSP14520000E 0 DOOA STO LDX+1 STORE FIELD WIDTH IN LDX CSP14530000F 0 C103 LD 1 3 GET KCARD ADDRESS CSP145400010 00 95800004 S 11 4 SUBTRACT K VALUE CSP145500012 0 9006 5 LDX+1 SUBTRACT FIELD WIDTH CSP145600013 0 D009 STO ST0+1 PLACE ADDR OF KCARD(KLAST) IN CSP14570• STORE OF MOVE CSP145800014 01 74010019 MDX L LDX+1.1 ADD ONE TO FIELD WIDTH CSP14590• MAKING IT TRUE CSP146000016 0 7105 MD% 1 5 MOVE OVER FIVE ARGUMENTS CSP146100017 0 6908 STX 1 DONE1+1 CREATE RETURN ADDRESS CSP14620• JNOW.J CSP14650• KNOW*K+JNOW■J CSP146400018 00 65000000 LDX LDX LI •..* LOAD IR1 WITH FIELD WIDTH CSP14650• KCARDIKNOW1•JCARDIJNOW) CSP14660001A 00 C5000000 LOl LD LI •■11 PICKUP JCARDIJNOW1 CSP14670001C 00 05000000 STO STO LI •■• STORE IT IN KCARDIKNOW/ CSP14680• SEE IF JNOW IS LESS THAN JLAST. CSP14690• IF YES. JNOW*JNOW+1 AND MOVE CSP14700• NEXT CHARACTER. IF NO. EXIT.... CSP14710001E 0 TIFF MDX 1 ■ 1 DECREMENT THE FIELD WIDTH CSP14720001F 0 70FA MDX LD1 NOT DONE ■ GET NEXT WORDCSP14730• EXIT0020 00 65000000 SAVE1 LOX LI ••RESTORE IR1 g:12:0022 00 4C000000 DONE1 BSC L 'P ..* RETURN TO CALLING PROGRAM CSP147600024 END CSP14770NO ERRORS IN ABOVE ASSEMBLY.// DUP CSP14780•STORE WS UA MOVEC5P147903382 0003-172-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!