Previous Page Single Page Next Page  

* FIG FORTH FOR SERIES-16 MACHINES PAGE 40

1616 * **** SP@ **** 1617 * ( --- N ) CURRENT STACK POINTER 1618 * HEAD FNUL,SP@,SPAT 1619 001321 TLNK SET * 1620 01321 001723 VFD 1,0,1,FNUL,6,3,8,'323 1621 * =<FNUL,3>,'S' 1622 01322 150100 VFD 8,'320,8,'100 ='P@' 1623 01323 0 001313 DAC LINK 1624 001321 LINK SET TLNK 1625 001324 SPAT EQU * 1626 01324 0 02 00000 LDA 0 GET POINTER 1627 01325 141206 AOA INCREMENT BECAUSE POINTS TO FIRST FREE 1628 01326 0 01 00116 JMP PUSH 1629 * 1630 * **** SP! **** 1631 * ( --- ) INITIALISE STACK POINTER 1632 * HEAD FNUL,SP!,SPST 1633 001327 TLNK SET * 1634 01327 001723 VFD 1,0,1,FNUL,6,3,8,'323 1635 * =<FNUL,3>,'S' 1636 01330 150041 VFD 8,'320,8,'041 ='P!' 1637 01331 0 001321 DAC LINK 1638 001327 LINK SET TLNK 1639 001332 SPST EQU * 1640 01332 0 02 00103 LDA UP 1641 01333 0 06 00730 ADD ='3 OFFSET 3 IN USER AREA 1642 01334 0 04 00104 STA T1 POINT TO LOCATION IN TABLE 1643 01335 -0 02 00104 LDA* T1 GET VALUE 1644 01336 0 07 00736 SUB =1 BECAUSE POINTS TO FIRST FREE 1645 01337 0 04 00000 STA 0 1646 * 1647 * NEXT 1648 01340 0 12 00100 IRS IP 1649 01341 -0 01 00100 JMP* IP 1650 EJCT
  Previous Page Single Page Next Page