OCT 177652 LO MANTISSA+EXP OCT 077777 *TEST VALUE #3 - HI MANTISSA TAB 470 OCT 177400 - LO MANTISSA TAB 480 OCT 033333 - EXPONENT TAB 490 OCT 077777 RESULT #3 - HI MANTISSA TAB 500 OCT 177733 - LO MANTISSA+RES. EXP TAB 510 HED TEST # 18 - .PACK TESTS. ***** ***** .PACK010 * TEST # 18 - .PACK TESTS. * ***** ***** .PACK030 TST18 EQU * NOP RETURN ADDRESS .PACK050 JSB MSGC,I OUTPUT TEST HEADER MESSAGE DEF MMS15 LDA TST3 OBTAIN LOOP COUNT .PACK060 STA CNTR SET UP LOOP COUNTER .PACK070 LDA TSTA2 OBTAIN TABLE POINTER .PACK080 RPT2 STA TST31 RUNNING TABLE POINTER .PACK090 ADA .+2 LDB 0,I OBTAIN THE EXPONENT .PACK110 STB PACK1 SET UP THE PARAMETER(EXP) ADA .+2 STA TST32 .PACK140 DLD TST31,I LOAD THE TEST VALUE(NO EXPONENT) .PACK150 RAM .PACK CALL TO .PACK MICRO-ROUTINE PACK1 BSS 1 EXPONENT PARAMETER STA XBUF SAVE ACTUAL VALUE PART 1 STB XBUF+1 SAVE ACTUAL VALUE PART 2 LDA TST32 ADA .-1 LDA A,I GET EXPECTED HI MANTISSA CPA XBUF VERIFY HI MANTISSA JMP PACK3 OK! LDA XBUF ERROR. RESTORE (A) JMP PACK2 GO TO ERROR ROUTINE. * PACK3 CPB TST32,I VERIFY ACT. LO MANT.+EXP. JMP ARD2 EQUAL CONDITION- RESULT VERIFIED .PACK190 * * OUTPUT ACTUAL AND EXPECTED RESULTS * * CONVERT ACTUAL VALUE TO ASCII. PACK2 JSB ASCII,I CONVERT HI MANTISSA TO ASCII DEF ACTUL+5 CPB 0 SWITCHING POINT JMP *+3 LDA XBUF+1 JMP *-5 EXPONENT TO ASCII LDB ACT5 STB *-6 * CONVERT EXPECTED VALUE TO ASCII. LDB TST32,I ACTUAL LO MANTISSA + EXP LDA TST32 POINTER TO LO MANTISSA+EXP ADA .-1 PTR POINTS TO HI MANT. LDA 0,I OBTAIN HI MANTISSA JSB ASCII,I CONVERT HI MANTISSA TO ASCII DEF EXPCT+5 CPB 0 SWITCHING POINT JMP *+3 LDA 1 PREPARE LO MANTISSA + EXP JMP *-5 FOR ASCII CONVERSION LDB EXP5 STB *-6 DLD XBUF LOAD ACTUAL VALUES JSB ERMS,I OUTPUT ERROR MESSAGE DEF ERM15 ERROR MESSAGE BUFFER POINTER LDA TST32 ADA .-1 DLD 0,I LOAD EXPECTED VALUES JSB XINV2,I DISPLAY EXPECTED VALUES IN REG. A & B JSB DSPLY,I OUTPUT ACTUAL & EXPECTED VALUES ARD2 ISZ CNTR CHECK EXIT CONDITION .PACK JMP ARD20 JUMP AROUND EXT14 JMP TST18,I RETURN ARD20 LDA TST32 OBTAIN RESULT POINTER INA UPDATE THE POINTER .PACK320 JMP RPT2 LOOP BACK .PACK330 MMS15 ASC 8,H240 .PACK TEST/ ERM15 ASC 12,E240 .PACK DATA ERROR/ TST31 BSS 1 TST32 BSS 1 TSTA2 DEF TST30 HED TEST TABLE FOR FLUN TESTS. ***** ***** TAB 210 * TEST TABLE FOR FLUN TESTS. * TAB 220 ***** ***** TAB 230 TST2 DEC -2 NUMBER OF TEST VALUES IN THE TABLE TAB 240 TST2A EQU * TABLE ENTRY ADDRESS OCT 177777 *TEST VALUE #1 - LO MANTISSA+EXPONENT TAB 260 OCT 177400 UNPACKED LO MANTISSA TAB 270 OCT 177777 UNPACKED EXPONENT(NEGATIVE) TAB 280 OCT 177776 *TEST VALUE #2 - LO MANTISSA+EXPONENT TAB 290 OCT 177400 UNPACKED MANTISSA TAB 300 OCT 000177 UNPACKED EXPONENT(POSITIVE) TAB 310 HED TEST # 19 - FLUN TESTS. ***** ***** FLUN 010 * TEST # 19 - FLUN TESTS. * ***** ***** FLUN 030 TST19 EQU * NOP RETURN ADDRESS FLUN 050 JSB MSGC,I OUTPUT TEST HEARDER MESSAGE DEF MMS16 LDA TSTA3 ACCESS TABLE POINTER FLUN 060 LDB TST2 OBTAIN TEST VALUE LOOP COUNT FLUN 070 STB CNTR SET UP LOOP COUNTER FLUN 080 RPT3 LDB 0,I LO MANTISSA+EXPONENT IN REGISTER B FLUN 100 INA ADJUST POINTER - POINT TO UNPACKED RESULT FLUN 110 STA TST2B SAVE ADJUSTED POINTER RAM FLUN CALL TO FLUN MICRO-ROUTINE FLUN 130 STA XBUF SAVE ACTUAL VALUE PART 1 STB XBUF+1 SAVE ACTUAL VALUE PART 2 CPB TST2B,I VERIFY UNPACKED LO MANTISSA JMP *+2 VERIFIED CORRECTLY(EQUAL) FLUN 150 JMP ERR15 JUMP TO ERROR ROUTINE(NOT EQUAL) FLUN 160 LDB TST2B OBTAIN TABLE POINTER-RESULT PTR. INB ADJUST POINTER - POINT TO UNPACKED EXPONENT FLUN 180 CPA 1,I VERIFY UNPACKED EXPONENT FLUN 190 JMP ARD3 VERIFIED CORRECTLY(EQUAL) LDB XBUF+1 RELOAD ACTUAL LO MANT. ERR15 STA TEMP LDA B LDB TEMP JSB ASCII,I CONVERT TO ASCII DEF ACTUL+5 ASCII CPB 0 SWITCH POINT JMP *+3 LDA 1 CONVERT ACTUAL LO MANTISSA +EXP JMP *-5 TO ASCII LDB ACT5 STB *-6 LDB TST2B LDA B,I INB LDB B,I CONVERT EXPECTED LO MANT. JSB ASCII,I MANTISSA TO ASCII DEF EXPCT+5 CPB 0 SWITCH POINT JMP *+3 LDA 1 JMP *-5 LDB EXP5 STB *-6 DLD XBUF LOAD ACTUAL VAL.- WORDS 1 & 2 JSB ERMS,I OUTPUT ERROR MESSAGE DEF ERM16 LDA TST2B ADA .-1 DLD 0,I LOAD EXPECTED VALUES JSB XINV2,I DISPLAY EXPECTED VALUES IN REG. A & B JSB DSPLY,I OUTPUT ACTUAL & EXPECTED VALUES ARD3 ISZ CNTR CHECK EXIT CONDITION JMP ARD30 SKIP AROUND EXT15 JMP TST19,I RETURN ARD30 LDA TST2B OBTAIN CURRENT TABLE POINTER ADA .+2 JMP RPT3 FLUN 330 ERM16 ASC 11,E250 FLUN DATA ERROR/ MMS16 ASC 8,H250 FLUN TEST/ TSTA3 DEF TST2A TST2B BSS 1 HED TEST TABLE FOR .XPAK TESTS. ***** ***** TAB 520 * TEST TABLE FOR .XPAK TESTS. * TAB 530 ***** ***** TAB 540 TST4 DEC -4 NUMBER OF TEST VALUES IN THE TABLE TAB 550 TST40 EQU * TABLE ENTRY ADDRESS TAB 560 OCT 000376 *TEST VALUE #1 - EXPONENT(POS) TAB 570 OCT 070707 - HI MANTISSA TAB 580 OCT 107070 - MID MANTISSA TAB 590 OCT 070400 - LO MANTISSA TAB 600 OCT 077777 RESULT #1 - HI MANTISSA OCT 177777 - MID MANTISSA OCT 177776 - LOW MANTISSA + EXP OCT 177653 *TEST VALUE #2 - EXPONENT(NEG) TAB 640 OCT 070707 - HI MANTISSA TAB 650 OCT 107070 - MID MANTISSA TAB 660 OCT 070400 - LO MANTISSA+EXP TAB 670 OCT 070707 RESULT #2 - HI MANTISSA TAB 680 OCT 107070 MID MANTISSA TAB 690 OCT 070527 - LO MANTISSA+EXP TAB 700 OCT 000146 *TEST VALUE #3 - EXPONENT TAB 710 OCT 070707 - HI MANTISSA TAB 720 OCT 107070 - MID MANTISSA TAB 730 OCT 070400 - LO MANTISSA TAB 740 OCT 070707 RESULT #3 - HI MANTISSA TAB 750 OCT 107070 MID MANTISSA TAB 760 OCT 070714 - LO MANTISSA+EXP TAB 770 OCT 000777 *TEST VALUE #4 - EXPONENT TAB 780 OCT 070707 - HI MANTISSA TAB 790 OCT 107070 - MID MANTISSA TAB 800 OCT 070400 - LO MANTISSA TAB 810 OCT 077777 RESULT #4 - HI MANTISSA OCT 177777 - MID MANTISSA OCT 177776 LOW MANTISSA + EXP HED TEST # 20 - .XPAK TESTS. ***** ***** .XPAK 10 * TEST # 20 - .XPAK TESTS. * ***** ***** .XPAK 40 TST20 EQU * NOP RETURN ADDRESS .XPAK 50 JSB MSGC,I OUTPUT TEST HEADER MESSAGE DEF MMS17 LDA TSTA4 .XPAK 60 STA TST41 ESTABLISH A RUNNING POINTER .XPAK 70 LDB TST4 OBTAIN LOOP COUNT .XPAK 80 STB CNTR ESTABLISH A LOOP COUNTER .XPAK 90 RPT4 INA BUMP POINTER .XPAK100 STA TEMP JSB XCOPY,I JUMP TO MOVE DATA WORD ROUTINE DEF TEMP DEF XBUF DESTINATION COPY ADDRESS OCT 3 WORD COUNT ADA .+3 STA TST42 SET UP ADDRESS OF RESULT IN TST4 LDA TST41,I OBTAIN EXPONENT OF TEST VALUE .XPAK150 RAM .XPAK CALL .XPAK MICRO-ROUTINE .XPAK160 DEF XBUF ADDRESS PARAMETER OF TEST VALUE JSB COMP,I JUMP TO VALUE COMPARISON ROUTINE DEF ERR16 ERROR RETURN ADDRESS DEF TST42 SOURCE COMPARE POINTER DEF XBUF DESTINATION COMPARE ADDRESS OCT 3 WORD COUNT JMP ARD4 OK - SKIP AROUND ERR16 LDA .-3 STA XBUF+3 SET UP A LOOP COUNTER LDB XBUFR OBTAIN ACTUAL RESULT AREA ADDRESS LDA 1,I OBTAIN ACTUAL VALUE JSB ASCII,I CONVERT ACTUAL VALUE TO ASCII DEF ACTUL+5 INB ISZ XBUF+3 DECREMENT LOOP COUNT & CHECK FOR JMP *-5 EXIT CONDITION LDB ACT5 STB *-5 LDA .-3 STA XBUF+3 LDB TST42 ADDRESS OF EXPECTED VALUE AREA LDA 1,I EXPECTED VALUE JSB ASCII,I CONVERT EXPECTED VALUE TO ASCII DEF EXPCT+5 INB ISZ XBUF+3 DECREMENT LOOP COUNT & CHECK FOR JMP *-5 EXIT CONDITION LDB EXP5 STB *-5 DLD XBUF LOAD ACTUAL VALUE- WORDS 1 & 2 JSB ERMS,I OUTPUT ERROR MESSAGE DEF ERM17 JSB SHLTC,I SET HALT CODE LDA XBUF+2 LOAD ACTUAL VAL. - WORD 3 CLB JSB XINV2,I DISPLAY ACTUAL VAL-WORD 3 JSB RHLTC,I RESTORE HALT CODE JSB XINV3,I REGISTER DISPLAY OF EXPECTED VALUES DEF TST42,I JSB DSPLY,I OUTPUT ACTUAL & EXPECTED VALUES ARD4 ISZ CNTR CHECK FOR EXIT CONDITION JMP *+2 SKIP AROUND EXT16 JMP TST20,I RETURN LDA TST42 .XPAK480 ADA .+3 MOVE TST42 TO NEXT SET OF TEST VALUE STA TST41 UPDATE THE VALUE POINTER .XPAK500 JMP RPT4 LOOP BACK .XPAK510 ERM17 ASC 12,E260 .XPAK DATA ERROR/ MMS17 ASC 8,H260 .XPAK TEST/ TSTA4 DEF TST40 TST41 BSS 1 TST42 BSS 1 LABLC EQU * ORG 170B ADJ BSS 1 XBUF BSS 4 XBUFR DEF XBUF ORG LABLC HED TEST TABLE FOR .XCOM TESTS. ***** ***** TAB 080 * TEST TABLE FOR .XCOM TESTS. * TAB 090 ***** ***** TAB 100 TST6 DEC -3 NUMBER OF TEST VALUES IN THE TABLE TAB 110 TST60 EQU * TABLE ENTRY ADDRESS TAB 120 OCT 052525 *TEST VALUE #1 - HI MANTISSA TAB 130 OCT 052525 - MID MANTISSA TAB 140 OCT 052400 - LO MANTISSA(NO EXPONENT) TAB 150 OCT 000000 RESULT #1 - ADJUSTMENT TO EXPONENT TAB 160 OCT 125252 - HI MANTISSA TAB 170 OCT 125252 - MID MANTISSA TAB 180 OCT 125400 - LO MANTISSA TAB 190 OCT 177777 *TEST VALUE #2 - HI MANTISSA TAB 200 OCT 177777 - MID MANTISSA TAB 210 OCT 177400 - LO MANTISSA(NO EXOPNENT) TAB 220 OCT 000000 RESULT #2 - ADJUSTMENT TO EXPONENT TAB 230 OCT 000000 - HI MANTISSA TAB 240 OCT 000000 - MID MANTISSA TAB 250 OCT 000400 LO MANTISSS TAB 260 OCT 000000 *TEST VALUE #3 - HI MANTISSA TAB 270 OCT 000000 - MID MANTISSA TAB 280 OCT 000000 - LO MANTISSA TAB 290 OCT 000000 RESULT #3 - ADJUSTMENT TO EXP OCT 000000 - HI MANTISSA TAB 310 OCT 000000 - MID MANTISSA TAB 320 OCT 000000 - LO MANTISSA TAB 330 HED TEST #21 - .XCOM TESTS. ***** ***** .XCOM 10 * TEST # 21 - .XCOM TESTS. ***** ***** .XCOM 30 TST21 NOP JSB MSGC,I OUTPUT TEST HEADER MESSAGE DEF MMS18 LDA TST6 OBTAIN LOOP COUNT .XCOM 50 STA CNTR SET UP THE LOOP COUNTER LDA TSTA5 OBTAIN ADDRESS OF TABLE ENTRY RPT5 STA TST61 SET UP ADDRESS PARAMETER ADA .+3 STA TST62 POINTER TO RESULT .XCOM110 JSB XCOPY,I JUMP TO MOVE DATA ROUTINE DEF TST61 SOURCE COPY ADDRESS DEF XBUF DESTINATION COPY ADDRESS OCT 3 RAM .XCOM CALL TO .XCOM MICRO-ROUTINE .XCOM120 DEF XBUF ADDRESS PARAMETER STA ADJ SAVE RETURNED ADJUSTMENT TO EXP JSB COMP,I JUMP TO COMPARISON ROUTINE DEF ERR17 ERROR RETURN ADDRESS DEF TST62 SOURCE COMPARE POINTER DEF ADJ DESTINATION COMPARE ADDRESS OCT 4 WORD COUNT JMP ARD5 ERR17 JSB CNVRT,I DEF ADJ DEF TST62 OCT 4 LDA ADJ EXPONENT ADJUSTMENT LDB XBUF ACTUAL VAL. - WORD 1 JSB ERMS,I JUMP TO ERROR MESSAGE HANDLER .XCOM370 DEF ERM18 JSB SHLTC,I SET HALT CODE DLD XBUF+1 JSB XINV2,I OUTPUT WORDS 2 & 3 JSB RHLTC,I RESTORE HALT CODE LDA TST62,I LDB TST62 INB STB TST61 JSB XINV4,I REG. DISPLAY OF EXPECTED VALUES DEF TST61,I JSB DSPLY,I OUTPUT ACTUAL & EXPECTED VALUES ARD5 ISZ CNTR CHECK FOR EXIT CONDITION .XCOM420 JMP *+2 JUMP AROUND EXT17 JMP TST21,I RETURN LDA TST62 ADA .+4 ADJUST TEST TABLE POINTER JMP RPT5 LOOP BACK .XCOM470 ERM18 ASC 12,E300 .XCOM DATA ERROR/ MMS18 ASC 8,H300 .XCOM TEST/ TSTA5 DEF TST60 TST61 BSS 1 TST62 BSS 1 HED TEST TABLE FOR ..DCM TESTS. ***** ***** TAB 850 * TEST TABLE FOR ..DCM TESTS. * TAB 860 ***** ***** TAB 870 TST5 DEC -3 NUMBER OF TEST VALUSS IN THE TABLE TAB 880 TST50 EQU * TABLE ENTRY ADDRESS TAB 890 OCT 000000 *TEST VALUE #1 - HI MANTISSA TAB 900 OCT 000000 - MID MANTISSA TAB 910 OCT 000377 - LO MANTISSA+EXPONENT(NEGATIVE) TAB 920 OCT 000000 RESULT #1 - HI MANTISSA OCT 000000 - MID MANTISSA OCT 000000 - LO MANTISSA + EXP OCT 177777 *TEST VALUE #2 - HI MANTISSA TAB 960 OCT 177777 - MID MANTISSA TAB 970 OCT 177777 - LO MANTISSA+EXOONENT TAB 980 OCT 040000 RESULT #2 - HI MANTISSA OCT 000000 - MID MANTISSA TAB 000 OCT 000263 - LO MANTISSA + EXP OCT 000000 *TEST VALUE #3 - HI MANTISSA(NEGATIVE) TAB 020 OCT 000000 - MID MANTISSA TAB 030 OCT 000376 - LO MANTISSA+EXPONENT(POSITIVE) TAB 040 OCT 000000 RESULT #3 - HI MANTISSA OCT 000000 - MID MANTISSA O.K. TAB 060 OCT 000000 - EXPONENT OVERFLOWED TAB 070 HED TEST # 22 - ..DCM TESTS. ***** ***** ..DCM 10 * TEST # 22 - ..DCM TESTS. * ***** ***** ..DCM 30 TST22 NOP JSB MSGC,I OUTPUT TEST HEADER MESSAGE DEF MMS19 LDA TST5 OBTAIN LOOP COUNT ..DCM 60 STA CNTR SET UP A LOOP COUNTER ..DCM 70 LDA TSTA6 RPT6 STA TST51 TEST VALUE ADDRESS PARAMETER ..DCM100 ADA .+3 STA TST52 SET UP RESULT POINTER ..DCM130 JSB XCOPY,I MOVE TEST VALUES INTO BUFFER DEF TST51 SOURCE COPY ADDRESS DEF XBUF DESTINATION COPY ADDRESS OCT 3 WORD COUNT RAM ..DCM CALL TO ..DCM MICRO-ROUTINE ..DCM140 DEF XBUF ADDRESS PARAMETER OF TEST VALUE JSB COMP,I VALUE COMPARISONS DEF ERR18 ERROR RETURN ADDRESS DEF TST52 SOURCE COMPARE POINTER DEF XBUF DESTINATION COMPARE ADDRESS OCT 3 WORD COUNT JMP ARD6 ERR18 JSB CNVRT,I DEF XBUF ACTUAL VALUE BUFFER ADDRESS DEF TST52 OCT 3 WORD COUNT DLD XBUF LOAD ACTUAL VAL. - WORDS 1 & 2 JSB ERMS,I JUMP TO ERROR MESSAGE HANDLER ..DCM350 DEF ERM19 JSB SHLTC,I SET HALT CODE LDA XBUF+2 CLB JSB XINV2,I DISPLAY ACT. VAL. WORD 3 JSB RHLTC,I RESTORE HALT CODE JSB XINV3,I REG. DISPLAY OF EXPECTED VALUES DEF TST52,I JSB DSPLY,I OUTPUT ACT. & WXP. VALUES ARD6 ISZ CNTR CHECK FOR EXIT CONDITION JMP *+2 SKIP AROUND