home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / forth / compiler / zen / zen.asm < prev    next >
Assembly Source File  |  1989-12-29  |  2KB  |  77 lines

  1. %TITLE 'ZEN 1.9  by Martin J. Tracy'
  2. ;
  3. ;    ZEN 1.9
  4. ;    Main program
  5. ;
  6. ; Martin J. Tracy   8/7/89
  7. ; Copyright 1989    All rights reserved
  8. ;
  9. ; ANS X3J14 Standard Documentation
  10. ;   See ANSFORTH.DOC
  11. ;
  12. ; IBM MS-DOS small-model ROM-able Forth
  13. ;
  14. ;   BX register is top-of-stack.
  15. ;   Direct-Threaded Code (DTC) with JMP in code field.
  16. ;
  17. ; Listing Attributes
  18. ;
  19. %MACS
  20. %PAGESIZE  58,70
  21. %BIN  10
  22. %TEXT 50
  23. ;
  24. ; Parameters
  25. ;
  26. Dictionary_Size   EQU 0FFF0h  ; Dictionary size in bytes
  27. Table_Area_Size   EQU  2000h  ; Table size in bytes
  28. Array_Area_Size   EQU 0D400h  ; Variable size in bytes
  29.  
  30. Data_Stack_Size   EQU 300h    ; Data stack size in words
  31. Return_Stack_Size EQU 300h    ; Return stack size in words
  32. ;
  33. ; Groups
  34. ;
  35. DGROUP  GROUP CONST, _BSS, STACK
  36. ASSUME  CS:_TEXT, SS:DGROUP, DS:DGROUP
  37. ;
  38. ; Data segments
  39. ;
  40. CONST   SEGMENT WORD PUBLIC 'DATA'
  41. ; Constant variables and tables go here
  42. TORG:
  43. INCLUDE TBL.INC
  44. TP0     db    (Table_Area_Size-($-TORG)) DUP (?)
  45. CONST   ENDS
  46.  
  47. _BSS    SEGMENT WORD PUBLIC 'DATA'
  48. ; Uninitialized variables go here
  49. VORG:
  50. INCLUDE VAR.INC
  51. VP0     db    (Array_Area_Size-($-VORG)) DUP (?)
  52. _BSS    ENDS
  53.  
  54. STACK   SEGMENT PARA STACK 'STACK'
  55.         dw    (Data_Stack_Size)     DUP (?)
  56. SP0     dw    (Return_Stack_Size-2) DUP (?)
  57. RP0     dw    ?
  58. STACK   ENDS
  59.  
  60. _TEXT   SEGMENT WORD PUBLIC 'CODE'
  61. DORG:
  62. INCLUDE INTERNAL.INC     ; macros and internals
  63. INCLUDE CONTROL.INC      ; flow of control
  64. INCLUDE STACKMEM.INC     ; stack and memory operators
  65. INCLUDE LOGIMATH.INC     ; logic and math operators
  66. INCLUDE STRINGS.INC      ; string operators
  67. INCLUDE DEVICE.INC       ; device drivers
  68. INCLUDE INPUTOUT.INC     ; I/O
  69. INCLUDE INTRPRET.INC     ; Interpreter
  70. INCLUDE COMPILER.INC     ; Compiler
  71. INCLUDE STRINGS2.INC     ; Supplementary strings
  72. INCLUDE FILES.INC        ; File system
  73. INCLUDE FINALE.INC       ; Initialization
  74. DP0     db    (Dictionary_Size-($-DORG)) DUP (?)
  75. _TEXT ENDS
  76. END     ColdStart
  77.