home *** CD-ROM | disk | FTP | other *** search
/ Outlet 81 / outlet-81.mgt / TOR-INC4SO < prev    next >
Text File  |  2021-04-18  |  2KB  |  171 lines

  1.  
  2.   ** TORNADO  **
  3.  
  4. ; TORNADO INCLUDE source     -- 106
  5.  
  6.  
  7. namebuf áfindtable +10 
  8.  
  9.  
  10. ;          ORG  25651,len 314
  11.  
  12. includs èev1 ;get drivenr
  13. àÇ
  14. ▓σ,icl ;err if 0
  15. î3 
  16. icl ▒║,err2 ;err if >2
  17. ┤(ufia),Ç
  18. èskip+1 ;get char
  19. îë;=34, quote
  20. ▓╛,fout0 
  21. ⌐ö;1st of filename
  22.  
  23. ┤Ñ,namebuf+10 ;cl namebuf
  24. ┤»,nstr2+10 ;IX points to filename in UFIA
  25. ┤(Ñ),255 ;set endmark for printmsge
  26. ┤å,10 ;10 spaces in namebuf
  27. movnam òÑ
  28. ò»
  29. ┤(Ñ),32 
  30. ┤(»),32 
  31. ¢movnam 
  32. ┤å,11 ;11th char must be a quote
  33. mn ┤Ç,(ö);get char from file
  34. ⌐ö
  35. îë;second quote
  36. ▓σ,setfl ;jp if end of name found
  37. ┤(Ñ),Ç;store char in namebuf
  38. ┤(»),Ç;store char in UFIA
  39. ⌐Ñ
  40. ⌐»
  41. ¢mn ;next char
  42. fout0 ▒err0 ;nonsens, filenaam to long
  43.  
  44. setfl ╔Ñ;drop A4 (ret to main)
  45. ╩ö;store mempntr
  46. ┤Ñ,inclflag 
  47. ┤Ç,1 
  48. î(Ñ);test if already including
  49. ▒σ,inclex2 ;err if so
  50. ┤(Ñ),Ç;signal 'including'
  51. ┤Ñ,22528 ;cls menu
  52. ┤ö,22529 
  53. ┤ç,639 
  54. ┤(Ñ),0 
  55. ┤Ñ,includmsge ;at 11,4;"including:"
  56. èprintmsge 
  57. ┤Ñ,namebuf 
  58. èprintmsge ;name
  59.  
  60. openfile ┤»,ufia 
  61. ┌8 
  62. û#3B;open the file
  63. ▓║,filefound 
  64. disk_error ┤(error_num),Ç
  65. ┌8 ;DISCiPLE or +D on
  66. û71 
  67. ┌32 ;use DISCiPLE error routine
  68. error_num û0 
  69.  
  70. filefound ┤ö,hd00 
  71. ┤ç,9 
  72. ┌8 
  73. û#3D
  74. ▓ë,disk_error 
  75. ┤Ç,(hd00)
  76. î3 
  77. ▓σ,ftype_ok 
  78. ┤Ç,13 
  79. ▓disk_error 
  80. ftype_ok ┤Ñ,(hd0d)
  81. ┤ö,32768 
  82. █Ñ,ö
  83. ▓σ,start_ok 
  84. ┤Ç,15 
  85. ▓disk_error 
  86. start_ok ┤ö,20480 
  87. inclloop èfillbuf 
  88. èdoass ;do assemble
  89. ┤Ç,(noroomflg)
  90. î2 
  91. ▓ë,inclexit ;jp with error and eof (1/0)
  92. ▓╛,inclmore ;3 = end of buffer, need more
  93.  ;no-room error now, = 2
  94. ╔ö;balance stack
  95. ═;cont. in main-noroom
  96.  
  97. inclmore ΣÇ
  98. ┤(noroomflg),Ç;reset 'more-flag'
  99. ▓inclloop ;cont. assemble
  100.  
  101. inclexit èprmenu ;restore screen
  102. èpra ;flash A
  103. ┤Ç,(noroomflg);get flag again
  104. inclex2 ┤Ñ,0 ;
  105. ┤(inclflag),Ñ;res 2 flags
  106. ╔ö;retr mempntr, stack balanced!
  107. ┤(storevar),▀;restore main-errsp!
  108. àÇ;test 'error during include'
  109. ▒σ,a4 ;cont. in main-ass if not
  110. ┤Ñ,mesge6 
  111. ▒err5 +3 ;insert errline + jp a4
  112.  
  113. ù"In file" 
  114. û13 
  115. mesge6 û8 
  116.  
  117. includmsge û22,17,4 
  118. ù"Including : " 
  119. û255 
  120.  
  121. fillbuf ┤Ñ,20480 
  122. àÇ
  123. █Ñ,ö
  124. ┤å,ú
  125. ┤ë,│
  126. ┤Ñ,16384 
  127. íö,Ñ
  128. ┤Ç,å
  129. ┐ë
  130. ▓σ,no_move 
  131. ʇ
  132. ɇ
  133. no_move ┤Ñ,4096 
  134. àÇ
  135. █Ñ,ç
  136. ʔ
  137. íö,Ñ
  138. ┤Ñ,(hd0b)
  139. █Ñ,ö
  140. ▓║,plenty 
  141. ┤ç,(hd0b)
  142. ▓do_loading 
  143. plenty ┤(hd0b),Ñ
  144. ┤å,Æ
  145. ┤ë,¥
  146. do_loading ╔ö
  147. ┌8 
  148. û#3D
  149. ▒ë,disk_error 
  150. ┤ö,16384 
  151.  
  152. ufia û0 
  153. û0 
  154. û0 
  155. û"d" 
  156. û4 
  157. nstr2 ÿ10 
  158. hd00 û3 
  159. hd0b Ö0 
  160. hd0d Ö0 
  161. Ö0 
  162. Ö0 
  163.  
  164. ERRMARK èINSLINE 
  165. èCURSDOWN 
  166. ┤Ç,127 
  167. ▒CHAR 
  168.