ASMB,L NAM EMAVF 91711-16012 REV 1926 790604 ENT EMAVF EXT .ENTR ********************************************************************** * * * EXTENDED MEMORY AREA VERIFICATION SUBROUTINE * * * * CALL EMAVF(ICODE) * * * * RETURNS: ICODE = 0 EMA NOT INSTALLED * * ICODE < 0 EMA VERIFICATION FAILURE * * ICODE > 0 ICODE = FIRMWARE REV. NUMBER * * * ********************************************************************** * * ********************************************************************** * * * HERE WE WILL PUT A "JMP 3,I" IN LOCATION 2 IN BASE PAGE AND * * A "DEF LABEL" IN LOCATION 3 IN BASE PAGE * * * * THE A REGISTER IS NOT CHANGED BY RUNNING THIS MICROCODE. * * * * THE B REGISTER = 0 (THE LOGICAL ADDRESS OF ELEMENT). * ********************************************************************** * ORB JMP *+1,I DEF LABEL ORR * ICODE BSS 1 * EMAVF NOP ENTRY POINT JSB .ENTR GET ADDRESSES DEF ICODE CLA SET A = 0 STA ICODE,I SET ICODE = 0 * OCT 105257 .EMAP OCT 0 DEF RTN OCT 0 DEF ARRAY OCT 0 DEF TABLE * JMP EMAVF,I RETURN, NO FIRMWARE * * AT THIS POINT WE INVOKE SELF TEST * LABEL CLA,INA SET A = 1 CAX SET X = 1 * LIB 1 SET B = S-REGISTER STB TEMP SAVE S-REGISTER IN TEMP CLA SET A = 0 OTA 1 SET S = 0 OCT 105242 EMA SELF-TEST NOP LIA 1 SET A = TEST RESULT LDB TEMP RESTORE ORIGINAL CONTENTS OTB 1 OF THE S-REGISTER. * CXB SET B = X CPB D.1 REV. 1 FIRMWARE? JMP DONE YES! ALL DONE. CPA HLT77 NO! CHECK SWITCH REGISTER. JMP DONE EMA OK! ALL DONE. LDX DM.1 EMA FAILURE! LOAD ERROR CODE. * DONE STX ICODE,I RETURN ICODE. * JMP EMAVF,I RETURN. * TEMP BSS 1 HLT77 HLT 77B D.1 OCT 1 DM.1 DEC -1 * END