Previous Page Single Page Next Page  

* FIG FORTH FOR SERIES-16 MACHINES PAGE 20

0762 * 0763 01023 0 001007 XXS0 DAC OXS0 START OF AREA COPIED 0764 01024 0 005656 X4P4 DAC FRTH+4 0765 * 0766 * ACTUAL COLD ENTRY POINT 0767 * 0768 * NOTE THAT THE DICTIONARY ENTRY FOR 'COLD' IS FURTHER 0769 * ON. THIS CODE IS MOVED HERE SO CROSS-SECTOR LINKS FROM 0770 * THE ENTRY POINT AT '1000, AND REFERENCES TO THE START-UP 0771 * TABLE ARE NOT REQUIRED. 0772 * 0773 001025 CENT EQU * 0774 IFN XTND 0775 EXA 0776 ENDC 0777 01025 0 10 05762 JST MSZ ONCE ONLY - CALCULATE MEMORY SIZE 0778 01026 0 02 01004 LDA OTSK SET 'FORTH' VOCABULARY FROM STARTUP TABLE 0779 01027 -0 04 01024 STA* X4P4 0780 01030 0 02 01006 LDA OUP INITIALIZE USER POINTER 0781 01031 0 04 00103 STA UP 0782 01032 0 04 00000 STA 0 AND BORROW INDEX REGISTER FOR INITIALISATION 0783 * NOTE - FOR SMALLER STAND-ALONE BOOT, INITIALIZE AREAS IN 0784 * HIGH MEMORY WHICH MUST BE INITIALIZED. 0785 * CLEAR DISK BUFFERS ON FIRST TIME THROUGH 0786 01033 0 02 01017 LDA O1ST GET POINTER TO START OF BUFFERS 0787 01034 101040 SNZ ANY DISK BUFFERS? 0788 01035 0 01 01046 JMP CNT2 0789 01036 0 04 00105 STA T2 0790 01037 0 07 01020 SUB OLMT SUBTRACT END TO GET -VE WORDS 0791 01040 0 04 00104 STA T1 COUNTER 0792 01041 140040 CRA 0793 01042 -0 04 00105 CNT1 STA* T2 0794 01043 0 12 00105 IRS T2 STEP POINTER 0795 01044 0 12 00104 IRS T1 STEP COUNTER 0796 01045 0 01 01042 JMP CNT1 LOOP 0797 * NOW INITIALIZE 'OUT', 'OFFSET', 'USE' AND 'PREV' 0798 * NOTE INDEX REGISTER POINTING AT USER AREA (NOT STACK) 0799 01046 140040 CNT2 CRA 0800 01047 1 04 00021 STA '21,1 CLEAR 'OUT' 0801 01050 1 04 00023 STA '23,1 CLEAR 'OFFSET' 0802 01051 0 02 01017 LDA O1ST 0803 01052 1 04 00035 STA '35,1 TO 'USE' 0804 01053 1 04 00036 STA '36,1 TO 'PREV' 0805 * END OF SPECIAL HIGH-MEMORY INITIALIZE 0806 01054 0 02 00732 LDA =-12 ON COLD START, MOVE 12 WORDS 0807 01055 0 01 01061 JMP WNT1 0808 01056 000000 STOP HLT 'BYE' COMES HERE 0809 * SO RESTART GOES TO WARM ENTRY 0810 001057 WENT EQU * 0811 IFZ XTND
  Previous Page Single Page Next Page