home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 4: Demo 1 / almathera_demo1.bin / sourcecode / dexion / ssdemo1.s < prev    next >
Text File  |  1995-03-17  |  6KB  |  263 lines

  1.  
  2. scr=$7a000
  3. struc=$7d000
  4. rastport=struc+100
  5.  
  6. setupsystem:
  7.  
  8. bsr getgfx
  9. bsr cleanitdown
  10.  
  11.  
  12. move.w #8000-1 ,d0
  13. move.l #scr ,a0
  14. slet: move.b #0 ,(a0)+
  15. dbra d0 ,slet
  16.  
  17. move.l #scr ,a0
  18. move.l a0 ,struc+8
  19. move.l #struc ,a0
  20. moveq #1 ,d0
  21. move.l #320 ,d1
  22. move.l #200 ,d2
  23. move.l gfxbase ,a6
  24. jsr -390(a6)
  25. move.l #rastport ,a1
  26. jsr -198(a6)
  27. move.l #struc,rastport+4
  28.  
  29. move.l #copper0,newcop
  30. bsr changecop
  31.  
  32. ;--DEMO
  33.  
  34. move=-240
  35. draw=-246
  36. setapen=-342
  37.  
  38. move.l #rastport,a1
  39.  
  40. ;/////// my demo!!! ///////
  41. move.l    #charset,a2    ;A2 is the pointer for the charset list.
  42. move.l    #text,a3    ;A3 is the pointer to the current letter.
  43. move.l    #end,a4        ;A4 is the pointer to the end of the text.
  44. clr.l    d0
  45. clr.l    d1
  46. clr.l    d2
  47. clr.l    d3
  48. clr.l    d4
  49. clr.l    d5
  50. clr.l    d6
  51. clr.l    d7
  52.  
  53. nextletter:
  54. move.b    (a3),d0
  55.  
  56. ;-----    STUFF IN JUMPERS FOR SPECIAL ROUTINES HERE!
  57.  
  58. ;-----    AND NOT HERE!
  59.  
  60. subi    #34,d0
  61. mulu    #28,d0
  62. add.l    a2,d0
  63. move.l    d0,a0        ;A0 is the pointer to the current coordinate.
  64. move.l    a0,a5
  65. add.l    #28,a5        ;A5 is the pointer to the end of letter.
  66.  
  67. nextline:
  68. move.b    (a0)+,d2
  69. move.b    (a0)+,d3
  70. move    size,d0
  71. mulu    d0,d2
  72. mulu    d0,d3
  73. divu    #3,d2
  74. divu    #3,d3
  75. add    x,d2
  76. add    y,d3
  77. move.b    (a0)+,d6
  78. move.b    (a0)+,d7
  79. mulu    d0,d6
  80. mulu    d0,d7
  81. divu    #3,d6
  82. divu    #3,d7
  83. add    x,d6
  84. add    y,d7
  85.  
  86. move.b    #$11,d4
  87. move.w    #1,d0
  88. jsr    setapen(a6)
  89. jsr    thisline
  90. move.b    #$11,d4
  91. clr.w    d0
  92. ;jsr    setapen(a6)
  93. jsr    thisline
  94.  
  95. cmp.l    a0,a5
  96. bgt    nextline
  97.  
  98. ;rts
  99.  
  100. move    x,d0
  101. add    size,d0
  102. add    #4,d0
  103. move    d0,x
  104. addi.l    #1,a3
  105. cmp.l    a3,a4
  106. bne    nextletter
  107. rts
  108.  
  109.  
  110. thisline:
  111. clr.l    d0
  112. clr.l    d1
  113. move    d2,d0
  114. move    d3,d1
  115. divs    d4,d0
  116. divs    d4,d1
  117. ext.l    d0
  118. ext.l    d1
  119. jsr    move(a6)
  120.  
  121. move    d6,d0
  122. move    d7,d1
  123. divu    d4,d0
  124. divu    d4,d1
  125. ext.l    d0
  126. ext.l    d1
  127. move.l    a0,d5
  128. jsr    draw(a6)
  129. move.l    d5,a0
  130.  
  131. sub    #1,d4
  132. cmpi    #0,d4
  133. bne    thisline
  134.  
  135. rts
  136.  
  137. ;/////// my demo's over. //
  138.  
  139. copper0:dc.w    $0100,$1200
  140.  
  141.     dc.w    $008e,$2c81
  142.     dc.w    $0090,$f4c1
  143.     dc.w     $0092,$38
  144.     dc.w    $0094,$d0
  145.  
  146.     dc.w    $0108,$0000
  147.     dc.w    $010a,$0000
  148.  
  149.     dc.w    $00e0,$0007
  150.     dc.w    $00e2,$a000
  151.  
  152.     dc.w    $0180,$000
  153.     dc.w    $0182,$fff
  154.  
  155. dc.w $ffff,$fffe
  156.  
  157. ;*** gfx ***
  158. gfxbase:    dc.l    0
  159. gfxname:    dc.b    'graphics.library',0,0
  160.  
  161. getgfx:
  162.     move.l    4    ,a6
  163.     move.l    #gfxname,a1
  164.     jsr    -408(a6)
  165.     move.l    d0    ,gfxbase
  166. rts
  167.  
  168. ;*** change copper list ***
  169.  
  170. newcop: dc.l 0
  171. ;***
  172. changecop:
  173.     move.l    gfxbase    ,a0
  174.     move.l    newcop    ,50(a0)
  175. rts
  176.  
  177. ;*********
  178.  
  179. forbid =-132
  180. oldcopper:    dc.l 0
  181.  
  182. cleanitdown:
  183. move.l 4,a6
  184. jsr    -132(a6)
  185. rts
  186.  
  187. charset:
  188. dc.b    1,0,1,2,1,3,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;!
  189. dc.b    1,0,1,1,2,0,2,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;"
  190. dc.b    0,0,3,0,0,0,0,2,1,0,1,3,0,2,3,2,3,2,3,3,0,3,3,3,0,0,0,0;$
  191. dc.b    0,0,0,3,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;%
  192. dc.b    0,0,0,3,0,0,2,3,2,0,2,3,3,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0;&
  193. dc.b    1,0,1,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;'
  194. dc.b    1,0,0,1,0,1,0,2,0,2,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;(
  195. dc.b    2,0,3,1,3,1,3,2,3,2,2,3,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0;)
  196. dc.b    1,0,3,0,0,2,1,0,1,0,1,3,0,2,3,2,0,2,0,3,1,0,1,0,1,0,1,0;AF
  197. dc.b    0,0,2,0,0,0,0,1,1,0,1,1,0,1,2,1,1,1,1,2,2,1,2,2,0,2,2,2;SS
  198. dc.b    1,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;,
  199. dc.b    0,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2;-
  200. dc.b    1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3;.
  201. dc.b    0,3,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0;/
  202. dc.b    0,0,3,0,3,0,3,3,0,3,3,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0;0
  203. dc.b    1,0,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;1
  204. dc.b    0,0,3,0,3,0,3,2,0,2,3,2,0,2,0,3,0,3,3,3,0,0,0,0,0,0,0,0;2
  205. dc.b    0,0,3,0,3,0,3,3,0,3,3,3,1,2,3,2,0,0,0,0,0,0,0,0,0,0,0,0;3
  206. dc.b    0,0,0,2,0,2,3,2,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;4
  207. dc.b    0,0,3,0,0,0,0,2,0,2,3,2,3,2,3,3,0,3,3,3,0,0,0,0,0,0,0,0;5
  208. dc.b    0,0,3,0,0,0,0,3,0,2,3,2,3,2,3,3,0,3,3,3,0,0,0,0,0,0,0,0;6
  209. dc.b    0,0,3,0,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;7
  210. dc.b    0,0,3,0,3,0,3,3,0,0,0,3,0,2,3,2,0,0,0,0,0,0,0,0,0,0,0,0;8
  211. dc.b    0,0,3,0,0,0,0,2,0,2,3,2,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0;9
  212. dc.b    1,0,1,0,1,3,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;:
  213. dc.b    0,1,1,3,1,3,3,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1;Amiga
  214. dc.b    3,0,0,2,0,2,3,3,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0;>
  215. dc.b    0,1,3,1,0,2,3,2,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1;=
  216. dc.b    0,0,3,2,0,3,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;>
  217. dc.b    0,0,3,0,3,0,3,1,0,1,3,1,0,1,0,2,0,2,3,2,1,3,2,3,0,0,0,0;?
  218. dc.b    0,0,3,3,1,0,3,2,0,1,2,3,0,3,3,0,0,2,2,0,1,3,3,1,0,0,0,0;XX
  219. dc.b    0,0,3,0,0,0,0,3,3,0,3,3,0,2,3,2,0,0,0,0,0,0,0,0,0,0,0,0;A
  220. dc.b    0,0,0,3,0,0,3,0,3,0,3,1,3,1,2,1,2,1,3,2,3,2,3,3,0,3,3,3;B
  221. dc.b    0,0,3,0,0,0,0,3,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;C
  222. dc.b    0,0,2,0,2,0,3,1,3,1,3,2,3,2,2,3,0,3,2,3,0,0,0,3,0,0,0,0;D
  223. dc.b    0,0,3,0,0,0,0,3,0,2,2,2,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0;E
  224. dc.b    0,0,3,0,0,0,0,3,0,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;F
  225. dc.b    0,0,3,0,0,0,0,3,0,3,3,3,3,2,1,2,0,0,0,0,0,0,0,0,0,0,0,0;G
  226. dc.b    0,0,0,3,0,2,3,2,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;H
  227. dc.b    1,0,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;I
  228. dc.b    3,0,3,3,3,3,0,3,0,3,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;J
  229. dc.b    0,0,0,3,0,2,3,0,0,2,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;K
  230. dc.b    0,0,0,3,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;L
  231. dc.b    0,0,0,3,0,0,1,1,1,1,3,0,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0;M
  232. dc.b    0,0,0,3,0,0,3,3,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;N
  233. dc.b    0,0,3,0,3,0,3,3,3,3,0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0;O
  234. dc.b    0,0,3,0,3,0,3,2,0,0,0,3,0,2,3,2,0,0,0,0,0,0,0,0,0,0,0,0;P
  235. dc.b    0,0,3,0,3,0,3,3,0,0,0,3,0,3,3,3,2,2,3,3,0,0,0,0,0,0,0,0;Q
  236. dc.b    0,0,3,0,0,0,0,3,0,2,3,2,3,0,3,2,0,2,3,3,0,0,0,0,0,0,0,0;R
  237. dc.b    0,0,3,0,0,0,0,2,0,2,3,2,3,2,3,3,0,3,3,3,0,0,0,0,0,0,0,0;S
  238. dc.b    0,0,3,0,1,0,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;T
  239. dc.b    0,0,0,3,0,3,3,3,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;U
  240. dc.b    0,0,1,3,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;V
  241. dc.b    0,0,0,3,0,3,1,3,1,3,3,3,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0;W
  242. dc.b    0,0,3,3,3,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;X
  243. dc.b    0,0,1,2,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;Y
  244. dc.b    0,0,3,0,0,3,3,0,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;Z
  245. dc.b    0,0,3,0,0,0,0,3,0,2,3,2,1,0,1,3,1,3,3,3,0,0,0,0,0,0,0,0;Æ
  246. dc.b    0,0,3,0,0,0,0,3,0,3,3,0,3,0,3,3,0,3,3,3,0,0,0,0,0,0,0,0;Ø
  247. dc.b    0,1,3,1,0,1,0,1,0,2,3,2,3,1,3,3,0,1,0,2,1,0,1,0,1,0,1,0;Å
  248.  
  249. even
  250.  
  251. size:
  252. dc.w    7
  253.  
  254. x:
  255. dc.w    50
  256.  
  257. y:
  258. dc.w    100
  259.  
  260. text:
  261. dc.b    "SWEINSTEIN!!!"
  262. end:
  263.