Previous Page Single Page Next Page  

* FIG FORTH FOR SERIES-16 MACHINES PAGE 137

6007 * 6008 ****************************************************************** 6009 ORG XTIB DELIBERATELY OVERLAY 6010 05762 0 000000 MSZ DAC ** 6011 05763 140040 CRA 6012 05764 140500 SSM JUST TOP BIT 6013 IFZ XTND 6014 05765 0404 77 LGR 1 DIVIDE BY 2 6015 ENDC 6016 * A POINTS ONE BEYOND MAXIMUM MEMORY 6017 05766 0 01 05772 JMP MSZ2 6018 * 6019 05767 0 02 00105 MSZ1 LDA T2 6020 05770 -0 04 00104 STA* T1 PUT ORIGINAL DATA BACK (JUST IN CASE) 6021 05771 0 02 00104 LDA T1 6022 05772 0 07 06034 MSZ2 SUB MS4K 6023 05773 100400 SPL SHOULD ALWAYS BE POSITIVE 6024 05774 000000 HLT TRAP NEVER-ENDING LOOP 6025 05775 0 04 00104 STA T1 6026 05776 -0 02 00104 LDA* T1 6027 05777 0 04 00105 STA T2 SAVE ORIGINAL CONTENTS 6028 06000 140040 CRA 6029 06001 -0 04 00104 STA* T1 6030 06002 140401 CMA ALL ONES 6031 06003 -0 02 00104 LDA* T1 6032 06004 100040 SZE 6033 06005 0 01 05767 JMP MSZ1 DIDN'T CLEAR 6034 06006 140401 CMA GET ALL ONES 6035 06007 -0 04 00104 STA* T1 6036 06010 -0 12 00104 IRS* T1 SHOULD SKIP 6037 06011 0 01 05767 JMP MSZ1 DIDN'T SKIP 6038 * 6039 * HAVE MEMORY HERE... 6040 06012 0 02 00105 LDA T2 6041 06013 -0 04 00104 STA* T1 PUT ORIGINAL DATA BACK 6042 06014 0 02 00104 LDA T1 6043 06015 0 06 06034 ADD MS4K JUST ABOVE MEMORY 6044 06016 0 07 06035 SUB MSRV WORDS TO RESERVE 6045 06017 0 07 00720 SUB =2 TWO WORDS FOR EMPTY STACK 6046 06020 0 11 06036 CAS MXDB 6047 06021 101000 NOP OK - GREATER 6048 06022 100000 SKP OK - EQUAL 6049 06023 000000 HLT NO SPACE FOR DICTIONARY 6050 * 6051 * SAVE CALCULATED TOP OF STACK 6052 06024 0 04 01007 STA OXS0 6053 * 6054 * PATCH SO NEVER CALL AGAIN 6055 06025 0 02 05762 LDA MSZ RETURN ADDRESS 6056 06026 0 07 00736 SUB =1 POINT AT JST
  Previous Page Single Page Next Page