JOB ASMB 04/24/22 10:25 ORG 85 DCW @X1@ X1 DCW 000 * INDEX REGISTER 1 DC @X2@ X2 DCW 000 * INDEX REGISTER 2 DC @X3@ X3 DCW 0000 * INDEX REGISTER 3 * ORG 1000 RDBUFF EQU 001 *READ BUFFER (1-80) COL1 DCW 001 *COMMAND COL5 DCW 005 COL80 DCW 080 ADD DCW 004 *ADDRESS FIELD DCW 005 *START OF FIELD ID DCW @IBM 1401 MIMI ASSEMBLER PROGRAM 4-24-2022@ * I DCW @0000@ * I REGISTER A DCW @0000@ * A REGISTER B DCW @0000@ * B REGISTER KEY EQU 0001 * ADDRESS OF KEY FIELD COLS DCW 000 * COUNT THE COLS START H * START HALT TOP READ * READ A CARD * READ IN PROCESS INPUT CARDS * * PROCESS THE ADDRESS FIELD * CMP ADD,@000@ * SEE IF ZERO BE NEXT1 CMP ADD,@ @ * SEE IF BLANK BE NEXT1 MCW ADD,A * PICK UP ADDRESS B NEXT1 * FIND THE LENGTH OF THE FIELD NEXT1 MCW @000@,COLS * SET START VALUE MCW @005@,X1 * SET THE START BCE NEXT2,@000@+X1, * IS IT A SPACE? A @001@,COLS * COUNT NON SPACE NEXT2 MA @001@,X1 * INCREMENT X1 CMP @081@,X1 * ARE WE AT THE END? BE NEXT3 * ******************NOW TO PROCESS THE REST OF THE CARD************** BCE CCHAR,0001,C * BRANCH TO CCHAR IF C BCE GCHAR,0001,G * BRANCH TO GCHAR IF G BCE HCHAR,0001,C * BRANCH TO HCHAR IF H BCE PCHAR,0001,P * BRANCH TO PCHAR IF P B ERROR * BRANCH TO ERROR CCHAR CMP ADD,@000@ * SEE IF ZERO BE NEXT CMP ADD,@ @ * SEE IF BLANK BE NEXT MCW ADD,A * PICK UP ADDRESS B NEXT * GO TO NEXT OPERATION