home *** CD-ROM | disk | FTP | other *** search
/ CBM Funet Archive / cbm-funet-archive-2003.iso / cbm / geos / programming / source / geoFontID.lnx / geoFontID (.txt) < prev    next >
Encoding:
GEOS ConVerT  |  1999-06-16  |  8.5 KB  |  326 lines

  1. GEOfONTid
  2. prg FORMATTED geos FILE v1.0
  3. wRITE iMAGE v2.1
  4. GEOwRITE    v2.1
  5. @;GEOfONTid
  6. .IFpASS1
  7. .INCLUDEGEOSsYM
  8. .INCLUDEGEOSmAC
  9. .INCLUDEGEOfONTeQUA
  10. .ENDIF
  11. ;__________________________________
  12. .PSECT
  13. BEGINPROG:lOADbDISPbUFFERoN, #(st_wr_fore {$7c} st_wr_back)
  14. LDA#0;SETS WHITE PATTERN
  15. JSRsETpATTERN
  16. JSRI_rECTANGLE;CLEARS BOTH SCREENS
  17. .BYTE0,199
  18. .WORD0,319
  19. lOADbDISPbUFFERoN, #st_wr_fore 
  20. LDA#0
  21. JSRsETpATTERN
  22. JSRI_rECTANGLE;DRAWS TITLE BOX W/FRAME
  23. .BYTE150,195
  24. .WORD70,250
  25. JSRI_fRAMErECTANGLE
  26. .BYTE150,195
  27. .WORD70,250
  28. .BYTE255
  29. JSRI_pUTsTRING
  30. .WORD102
  31. .BYTE165,boldon,"- GEOfONT id lISTER -",plaintext,0
  32. JSRI_pUTsTRING
  33. .WORD94
  34. .BYTE180,boldon,"aUTHOR:  ",plaintext,"nANCY wERTZBERGER",0
  35. lOADbA6, #0
  36. JSRLOADPDRIVER;IN PRINT
  37. CONTPROG:JSRDISKNAME
  38. LDANUMdRIVES
  39. CMP#2
  40. BEQTWODRIVES
  41. lOADwR0, #FIRSTBOX
  42. JMPDOBOX
  43. TWODRIVES:LDACURdRIVE
  44. SBC#8
  45. LDADRIVEtYPE,X
  46. AND#128
  47. BNERAM
  48. lOADwR0, #SECBOX
  49. JMPDOBOX
  50. RAM:lOADwR0, #RAMBOX
  51. DOBOX:JSRdOdLGbOX
  52. LDAR0l
  53. CMP#2;cancel CHOSEN
  54. BNECONT1
  55. JMPeNTERdESKtOP
  56. CONT1:LDAR0l
  57. CMP#3;yes CHOSEN
  58. BEQQUALITY
  59. LDAR0l
  60. CMP#11;drive CHOSEN
  61. BNECONT2
  62. JSRCHANGEDRIVE
  63. JMPCONTPROG
  64. CONT2:lOADwR0, #CHGDISKBOX
  65. JSRdOdLGbOX
  66. JSRoPENdISK
  67. JMPCONTPROG
  68. QUALITY:lOADwR0, #QUALITYBOX
  69. JSRdOdLGbOX
  70. LDAR0l
  71. CMP#13;draft CHOSEN
  72. BEQLOQUAL
  73. lOADbDRAFTfLAG, #1;HIGH QUALITY
  74. JMPCANCELBOX
  75. LOQUAL:lOADbDRAFTfLAG, #0;DRAFT QUALITY
  76. CANCELBOX:JSRCLEARFRONT
  77. lOADbDISPbUFFERoN, #st_wr_fore
  78. LDA#0
  79. JSRsETpATTERN
  80. JSRI_rECTANGLE
  81. .BYTE150,170
  82. .WORD120,200
  83. JSRI_fRAMErECTANGLE
  84. .BYTE150,170
  85. .WORD120,200
  86. .BYTE255
  87. JSRI_pUTsTRING
  88. .WORD140
  89. .BYTE163,boldon,"cANCEL...",plaintext,0
  90. lOADbR11l, #160
  91. lOADbR11h, #0
  92. JSRsTARTmOUSEmODE
  93. lOADbDISPbUFFERoN, #st_wr_back    ;TO SEND BACK SCREEN TO PRINTER BUFFER
  94. LDADRAFTfLAG
  95. CMP#0
  96. BNE HIQUAL
  97. JMP DRAFT
  98. HIQUAL:JSRINITDISK
  99. JSRsTARTpRINT
  100. JSRCLRBUFF;IN PRINT
  101. JSRCLRSCR
  102. JSRPRINTROW;IN PRINT
  103. JSRTITLE
  104. JSRPRINTLINES;IN PRINT
  105. JSRCLRSCR
  106. JSRDISKLINE
  107. JSRPRINTLINES
  108. JSRCLRSCR
  109. JSRCOLLINES
  110. JSRPRINTLINES
  111. JSRCLRSCR
  112. MAINLOOP:LDANXTtRACK
  113. CMP#40
  114. BEQREADSECT
  115. CMP#0
  116. BNENOFFPAGE
  117. LDAOPfLAG
  118. CMP#0
  119. BNEDONEP1
  120. mOVEbOPtRACK,TRACK
  121. mOVEbOPsECT,SECTOR
  122. lOADbOPfLAG, #1
  123. JMPREADSECT
  124. DONEP1:JMPDONE
  125. NOFFPAGE:mOVEbNXTtRACK,TRACK
  126. mOVEbNXTsECT,SECTOR
  127. READSECT:mOVEbTRACK, R1l
  128. mOVEbSECTOR, R1h
  129. lOADwR4, #DISKbLKbUFF
  130. JSRgETbLOCK
  131. mOVEbDISKbLKbUFF, NXTtRACK
  132. mOVEbDISKbLKbUFF+1, NXTsECT
  133. lOADbENDsECTfLAG, #0
  134. READENT:lOADbSECTpTR, #24;GEOS FILE TYPE
  135. lOADbHDRpTR, #21
  136. NEXTFILE:LDXSECTpTR
  137. STXTEMP1
  138. LDADISKbLKbUFF,X
  139. CMP#8;FONT FILE TYPE
  140. BEQFNAME
  141. ADD32:aDDvbENToFF, SECTpTR
  142. aDDvbENToFF, HDRpTR
  143. aDDvbENToFF, SCRATCHfLAG
  144. LDASECTpTR
  145. BCCNEXTFILE
  146. LDANXTtRACK
  147. CMP#0
  148. BNEJMPSECT
  149. lOADbENDsECTfLAG, #1
  150. JMPMAINLOOP
  151. JMPSECT:mOVEbNXTtRACK, TRACK
  152. mOVEbNXTsECT,SECTOR
  153. JMPREADSECT
  154. FNAME:LDYSCRATCHfLAG
  155. LDADISKbLKbUFF,Y
  156. CMP#0
  157. BEQADD32
  158. LDATEMP1;IS SECTpTR
  159. SUB#19;LOCATION OF FILENAME FOR ANY ENTRY IN BLOCK
  160. LDY#0
  161. GETFNAME:LDADISKbLKbUFF,X
  162. CMP#$A0
  163. BEQENDFNAME
  164. CPY#16
  165. BEQENDFNAME
  166. STAFONTnAME,Y
  167. JMPGETFNAME
  168. ENDFNAME:LDA#0
  169. STAFONTnAME,Y
  170. IDBLOCK:LDXHDRpTR
  171. mOVEb"DISKbLKbUFF,X", R1l
  172. mOVEb"DISKbLKbUFF,X", R1h
  173. READHDR:lOADwR4, #FILEhEADER
  174. JSRgETbLOCK
  175. LDX#IDpTR
  176. mOVEb"FILEhEADER,X", IDnO;128 IS WHERE IT IS --ddd
  177. LDADRAFTfLAG
  178. CMP#0
  179. BNEHIQENTRY
  180. JMPDENTRY
  181. HIQENTRY:LDA FIRSTlINE
  182. CMP#0
  183. BNESECLINE
  184. LDA#6
  185. STAR1h
  186. STAFIRSTlINE
  187. STALINE
  188. JMPSTARTPOS
  189. P1SECTENDCK:JMPSECTENDCK
  190. SECLINE:LDA#18
  191. STAR1h
  192. STALINE
  193. lOADbFIRSTlINE, #0
  194. STARTPOS:lOADwR11, #40
  195. lOADwR0, #FONTnAME
  196. JSRpUTsTRING
  197. IDGET:lOADwR11, #200
  198. mOVEbIDnO,R0l
  199. lOADbR0h, #0
  200. LDA#%01010000
  201. JSRpUTdECIMAL
  202. LDAFIRSTlINE
  203. CMP#0
  204. BEQSECTENDCK
  205. JSRPRINTLINES
  206. JSRCLRSCR
  207. SECTENDCK:LDAENDsECTfLAG
  208. CMP#0
  209. BEQADDLOOPP1
  210. JMPMAINLOOP
  211. ADDLOOPP1:JMPADD32
  212. DONE:LDADRAFTfLAG
  213. CMP#0
  214. BEQDONECANC
  215. JSRPRINTLINES
  216. JSRCLRSCR
  217. DONECANC:lOADwR0, #GRBUFF
  218. lOADwR1, #PBUFF
  219. JSRsTOPpRINT
  220. JSRCLEARFRONT
  221. lOADwR0, #ENDBOX
  222. JSRdOdLGbOX 
  223. LDAR0l
  224. CMP#yes
  225. BNEOUT
  226. JMPCONT2
  227. OUT:JMPeNTERdESKtOP
  228. ;__________________________________
  229. CLEARFRONT:lOADbDISPbUFFERoN, #st_wr_fore
  230. LDA#0
  231. JSRsETpATTERN
  232. JSRI_rECTANGLE
  233. .BYTE0,199
  234. .WORD0,319
  235. lOADbDISPbUFFERoN, #st_wr_back
  236. ;__________________________________
  237. INITDISK:LDA#0
  238. STAFIRSTlINE
  239. STAOPfLAG
  240. STASECTpTR
  241. lOADbSCRATCHfLAG, #2
  242. lOADbHDRpTR, #21
  243. lOADbNXTtRACK, #40
  244. lOADbTRACK, #18
  245. lOADbSECTOR, #1
  246. mOVEbCURdIRhEAD+off_op_tr_sc,OPtRACK
  247. mOVEbCURdIRhEAD+off_op_tr_sc+1,OPsECT
  248. ;__________________________________
  249. DISKNAME:LDXCURdRIVE
  250. LDY#0
  251. DRIVENO:CPX#9
  252. BEQDRIVEB
  253. LDAdRacURdKnM,Y
  254. JMPENDNAME
  255. DRIVEB:LDAdRbcURdKnM,Y
  256. ENDNAME:CMP#$A0
  257. BEQNEXT
  258. STADISKnAME,Y
  259. CPY#17
  260. BEQNEXT
  261. JMPDRIVENO
  262. NEXT:lOADb"DISKnAME,Y", #0
  263. RTS
  264. ;__________________________________
  265. CHANGEDRIVE:LDACURdRIVE
  266. CMP#8
  267. BEQNINE
  268. LDA#8
  269. JMPSETDVC
  270. NINE:LDA#9
  271. SETDVC:JSRsETdEVICE
  272. JSRoPENdISK
  273. ;__________________________________
  274. CLRSCR:lOADwR0, #$0780;???
  275. lOADwR1, #back_scr_base
  276. JSRcLEARrAM
  277. ;__________________________________
  278. TITLE:JSRI_pUTsTRING
  279. .WORD0
  280. .BYTE6
  281. .BYTEboldon,"geos fONT id pRINTER",0
  282. JSRI_pUTsTRING
  283. .WORD200
  284. .BYTE6
  285. .BYTE"pRINTED ON: ",plaintext,0
  286.               mOVEbMONTH, R0l
  287. lOADbR0h, #0
  288. LDA#%11000000;LEFT JUSTIFY, NO LEADING ZEROS
  289. JSRpUTdECIMAL
  290. lOADwR0, #SLASH;MUST BE ADDRESS OF STRING - IS IN TABLES
  291. JSR pUTsTRING
  292. mOVEbDAY, R0l
  293. lOADbR0h, #0
  294. LDA#%11000000;LEFT JUSTIFY, NO LEADING ZEROS
  295. JSRpUTdECIMAL
  296. lOADwR0, #SLASH
  297. JSR pUTsTRING
  298. mOVEbYEAR, R0l
  299. lOADbR0h, #0
  300. LDA#%11000000
  301. JSRpUTdECIMAL
  302. ;__________________________________
  303. DISKLINE:JSRI_pUTsTRING
  304. .WORD100
  305. .BYTE6
  306. .BYTEboldon,"dISK: ",plaintext,0 
  307. lOADwR0, #DISKnAME
  308. JSRpUTsTRING
  309. @__________________________________
  310. COLLINES:JSRI_pUTsTRING
  311. .WORD40
  312. .BYTE6
  313. .BYTEulineon,"fONT",0
  314. JSRI_pUTsTRING
  315. .WORD209
  316. .BYTE6
  317. .BYTE"id",ulineoff,0
  318. @__________________________________
  319. HIQUALROUTINE:lOADbSYSdbdATA, #12
  320. JMPrSTRfRMdIALOGUE
  321. LOQUALROUTINE:lOADbSYSdbdATA, #13
  322. JMPrSTRfRMdIALOGUE
  323. DRIVEROUTINE:lOADbSYSdbdATA, #11
  324. JMPrSTRfRMdIALOGUE
  325. @time  date  pAGE--page   id__
  326.