?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. ;--------------------------------------------------------
  2. ; File Created by SDCC : free open source ANSI-C Compiler
  3. ; Version 3.9.0 #11195 (MINGW32)
  4. ;--------------------------------------------------------
  5.         .module evo
  6.         .optsdcc -mz80
  7.        
  8. ;--------------------------------------------------------
  9. ; Public variables in this module
  10. ;--------------------------------------------------------
  11.         .globl _vsync
  12.         .globl _joystick
  13.         .globl _draw_tile
  14.         .globl _draw_image
  15.         .globl _draw_image_extra
  16.         .globl _memset
  17.         .globl _memcpy
  18.         .globl _pal_select
  19.         .globl _pal_bright
  20.         .globl _pal_copy
  21.         .globl _sfx_play
  22.         .globl _sfx_stop
  23.         .globl _pal_clear
  24.         .globl _pal_col
  25.         .globl _pal_custom
  26.         .globl _draw_tile_key
  27.         .globl _clear_screen
  28.         .globl _select_image
  29.         .globl _color_key
  30.         .globl _time
  31.         .globl _delay
  32.         .globl _swap_screen
  33.         .globl _border
  34.         .globl _keyboard
  35.         .globl _music_play
  36.         .globl _music_stop
  37.         .globl _sample_play
  38.         .globl _rand16
  39.         .globl _set_sprite
  40.         .globl _sprites_start
  41.         .globl _sprites_stop
  42. ;--------------------------------------------------------
  43. ; special function registers
  44. ;--------------------------------------------------------
  45. ;--------------------------------------------------------
  46. ; ram data
  47. ;--------------------------------------------------------
  48.         .area _DATA
  49. ;--------------------------------------------------------
  50. ; ram data
  51. ;--------------------------------------------------------
  52.         .area _INITIALIZED
  53. ;--------------------------------------------------------
  54. ; absolute external ram data
  55. ;--------------------------------------------------------
  56.         .area _DABS (ABS)
  57. ;--------------------------------------------------------
  58. ; global & static initialisations
  59. ;--------------------------------------------------------
  60.         .area _HOME
  61.         .area _GSINIT
  62.         .area _GSFINAL
  63.         .area _GSINIT
  64. ;--------------------------------------------------------
  65. ; Home
  66. ;--------------------------------------------------------
  67.         .area _HOME
  68.         .area _HOME
  69. ;--------------------------------------------------------
  70. ; code
  71. ;--------------------------------------------------------
  72.         .area _CODE
  73. ;..\_sdk\evo.c:6: void vsync(void) __naked
  74. ;       ---------------------------------
  75. ; Function vsync
  76. ; ---------------------------------
  77. _vsync::
  78. ;..\_sdk\evo.c:11: __endasm;
  79.         halt
  80.         ret
  81. ;..\_sdk\evo.c:12: }
  82. ;..\_sdk\evo.c:16: u8 joystick(void) __naked
  83. ;       ---------------------------------
  84. ; Function joystick
  85. ; ---------------------------------
  86. _joystick::
  87. ;..\_sdk\evo.c:20: __endasm;
  88.         jp      0x00001EBE
  89. ;..\_sdk\evo.c:21: }
  90. ;..\_sdk\evo.c:24: void draw_tile(u8 x,u8 y,u16 tile) __naked
  91. ;       ---------------------------------
  92. ; Function draw_tile
  93. ; ---------------------------------
  94. _draw_tile::
  95. ;..\_sdk\evo.c:37: __endasm;
  96.         ld      hl,#2
  97.         add     hl,sp
  98.         ld      c,(hl)
  99.         inc     hl
  100.         ld      b,(hl)
  101.         inc     hl
  102.         ld      e,(hl)
  103.         inc     hl
  104.         ld      d,(hl)
  105.         jp      0x000011BC
  106. ;..\_sdk\evo.c:38: }
  107. ;..\_sdk\evo.c:40: void draw_image(u8 x,u8 y,u8 id) __naked
  108. ;       ---------------------------------
  109. ; Function draw_image
  110. ; ---------------------------------
  111. _draw_image::
  112. ;..\_sdk\evo.c:60: __endasm;
  113.         ld      hl,#2
  114.         add     hl,sp
  115. ;push   ix
  116. ;ld     ix,#0
  117. ;add    ix,sp
  118.         ld      c,(hl)
  119.         inc     hl
  120.         ld      b,(hl)
  121.         inc     hl
  122.         ld      a,(hl)
  123.         call    0x000013B7
  124. ;pop    ix
  125.         ret
  126. ;..\_sdk\evo.c:61: }
  127. ;..\_sdk\evo.c:63: void draw_image_extra(u8 x,u8 y,u8 id,u8 width,u8 begx) __naked
  128. ;       ---------------------------------
  129. ; Function draw_image_extra
  130. ; ---------------------------------
  131. _draw_image_extra::
  132. ;..\_sdk\evo.c:96: __endasm;
  133.         ld      hl,#2
  134.         add     hl,sp ;cy=0
  135. ;push   ix
  136. ;ld     ix,#0
  137. ;add    ix,sp
  138. ;ld     a,(_MEMSLOT2)
  139. ;push   af
  140.         ld      c,(hl)
  141.         inc     hl
  142.         ld      b,(hl)
  143.         inc     hl
  144.         ld      a,(hl)
  145.         inc     hl
  146.         ld      e,(hl)
  147.         inc     hl
  148.         ld      d,(hl)
  149.         scf
  150.         call    0x000013B7
  151. ;pop    af
  152. ;LD     BC, #0xbff7
  153. ;ld     (_MEMSLOT2),a
  154. ;out    (c),a
  155. ;pop    ix
  156.         ret
  157. ;..\_sdk\evo.c:97: }
  158. ;..\_sdk\evo.c:100: void memset(void* m,u8 b,u16 len) __naked
  159. ;       ---------------------------------
  160. ; Function memset
  161. ; ---------------------------------
  162. _memset::
  163. ;..\_sdk\evo.c:122: __endasm;
  164.         ld      hl,#2
  165.         add     hl,sp
  166.         ld      e,(hl)
  167.         inc     hl
  168.         ld      d,(hl)
  169.         inc     hl
  170.         ld      a,(hl)
  171.         inc     hl
  172.         ld      c,(hl)
  173.         inc     hl
  174.         ld      b,(hl)
  175.         ex      de,hl
  176.         ld      d,h
  177.         ld      e,l
  178.         inc     de
  179.         dec     bc
  180.         ld      (hl),a
  181.         jp      0x000004F7
  182. ;..\_sdk\evo.c:123: }
  183. ;..\_sdk\evo.c:127: void memcpy(void* d,void* s,u16 len) __naked
  184. ;       ---------------------------------
  185. ; Function memcpy
  186. ; ---------------------------------
  187. _memcpy::
  188. ;..\_sdk\evo.c:147: __endasm;
  189.         ld      hl,#2
  190.         add     hl,sp
  191.         ld      e,(hl)
  192.         inc     hl
  193.         ld      d,(hl)
  194.         push    de
  195.         inc     hl
  196.         ld      e,(hl)
  197.         inc     hl
  198.         ld      d,(hl)
  199.         inc     hl
  200.         ld      c,(hl)
  201.         inc     hl
  202.         ld      b,(hl)
  203.         ex      de,hl
  204.         pop     de
  205.         jp      0x000004F7
  206. ;..\_sdk\evo.c:148: }
  207. ;..\_sdk\evo.c:150: void pal_select(u8 id) __naked
  208. ;       ---------------------------------
  209. ; Function pal_select
  210. ; ---------------------------------
  211. _pal_select::
  212. ;..\_sdk\evo.c:157: __endasm;
  213.         ld      hl,#2
  214.         add     hl,sp
  215.         ld      a,(hl)
  216.         jp      0x00000475
  217. ;..\_sdk\evo.c:158: }
  218. ;..\_sdk\evo.c:162: void pal_bright(u8 bright) __naked
  219. ;       ---------------------------------
  220. ; Function pal_bright
  221. ; ---------------------------------
  222. _pal_bright::
  223. ;..\_sdk\evo.c:169: __endasm;
  224.         ld      hl,#2
  225.         add     hl,sp
  226.         ld      a,(hl)
  227.         jp      0x00000489
  228. ;..\_sdk\evo.c:170: }
  229. ;..\_sdk\evo.c:172: void pal_copy(u8 id,u8* pal) __naked
  230. ;       ---------------------------------
  231. ; Function pal_copy
  232. ; ---------------------------------
  233. _pal_copy::
  234. ;..\_sdk\evo.c:183: __endasm;
  235.         ld      hl,#2
  236.         add     hl,sp
  237.         ld      a,(hl)
  238.         inc     hl
  239.         ld      e,(hl)
  240.         inc     hl
  241.         ld      d,(hl)
  242.         jp      0x000004A3
  243. ;..\_sdk\evo.c:184: }
  244. ;..\_sdk\evo.c:188: void sfx_play(u8 sfx,i8 vol) __naked
  245. ;       ---------------------------------
  246. ; Function sfx_play
  247. ; ---------------------------------
  248. _sfx_play::
  249. ;..\_sdk\evo.c:197: __endasm;
  250.         ld      hl,#2
  251.         add     hl,sp
  252.         ld      b,(hl)
  253.         inc     hl
  254.         ld      c,(hl)
  255.         jp      0x00001F70
  256. ;..\_sdk\evo.c:198: }
  257. ;..\_sdk\evo.c:202: void sfx_stop(void) __naked
  258. ;       ---------------------------------
  259. ; Function sfx_stop
  260. ; ---------------------------------
  261. _sfx_stop::
  262. ;..\_sdk\evo.c:206: __endasm;
  263.         jp      0x00001F84
  264. ;..\_sdk\evo.c:207: }
  265. ;..\_sdk\evo.c:213: void pal_clear(void) __naked
  266. ;       ---------------------------------
  267. ; Function pal_clear
  268. ; ---------------------------------
  269. _pal_clear::
  270. ;..\_sdk\evo.c:225: __endasm;
  271.         ld      hl,#0x00002040
  272.         ld      bc,#0x1000
  273.         1$:
  274.         ld      (hl),c
  275.         inc     l
  276.         djnz    1$
  277.         ld      a,h
  278.         ld      (0x00002053),a
  279.         ret
  280. ;..\_sdk\evo.c:226: }
  281. ;..\_sdk\evo.c:232: void pal_col(u8 id,u8 col) __naked
  282. ;       ---------------------------------
  283. ; Function pal_col
  284. ; ---------------------------------
  285. _pal_col::
  286. ;..\_sdk\evo.c:249: __endasm;
  287.         ld      hl,#2
  288.         add     hl,sp
  289.         ld      a,(hl)
  290.         inc     hl
  291.         ld      c,(hl)
  292.         ld      hl,#0x00002040
  293.         add     a,l
  294.         ld      l,a
  295.         ld      a,c
  296.         and     #63
  297.         ld      (hl),a
  298.         ld      a,h
  299.         ld      (0x00002053),a
  300.         ret
  301. ;..\_sdk\evo.c:250: }
  302. ;..\_sdk\evo.c:256: void pal_custom(u8* pal) __naked
  303. ;       ---------------------------------
  304. ; Function pal_custom
  305. ; ---------------------------------
  306. _pal_custom::
  307. ;..\_sdk\evo.c:277: __endasm;
  308.         ld      hl,#2
  309.         add     hl,sp
  310.         ld      a,(hl)
  311.         inc     hl
  312.         ld      h,(hl)
  313.         ld      l,a
  314.         ld      de,#0x00002040
  315.         ld      b,#16
  316.         1$:
  317.         ld      a,(hl)
  318.         and     #63
  319.         ld      (de),a
  320.         inc     hl
  321.         inc     e
  322.         djnz    1$
  323.         ld      a,d
  324.         ld      (0x00002053),a
  325.         ret
  326. ;..\_sdk\evo.c:278: }
  327. ;..\_sdk\evo.c:283: void draw_tile_key(u8 x,u8 y,u16 tile) __naked
  328. ;       ---------------------------------
  329. ; Function draw_tile_key
  330. ; ---------------------------------
  331. _draw_tile_key::
  332. ;..\_sdk\evo.c:296: __endasm;
  333.         ld      hl,#2
  334.         add     hl,sp
  335.         ld      c,(hl)
  336.         inc     hl
  337.         ld      b,(hl)
  338.         inc     hl
  339.         ld      e,(hl)
  340.         inc     hl
  341.         ld      d,(hl)
  342.         jp      0x000012DD
  343. ;..\_sdk\evo.c:297: }
  344. ;..\_sdk\evo.c:302: void clear_screen(u8 color) __naked
  345. ;       ---------------------------------
  346. ; Function clear_screen
  347. ; ---------------------------------
  348. _clear_screen::
  349. ;..\_sdk\evo.c:309: __endasm;
  350.         ld      hl,#2
  351.         add     hl,sp
  352.         ld      a,(hl)
  353.         jp      0x00000411
  354. ;..\_sdk\evo.c:310: }
  355. ;..\_sdk\evo.c:316: void select_image(u8 id) __naked
  356. ;       ---------------------------------
  357. ; Function select_image
  358. ; ---------------------------------
  359. _select_image::
  360. ;..\_sdk\evo.c:323: __endasm;
  361.         ld      hl,#2
  362.         add     hl,sp
  363.         ld      l,(hl)
  364.         jp      0x0000118C
  365. ;..\_sdk\evo.c:324: }
  366. ;..\_sdk\evo.c:328: void color_key(u8 col) __naked
  367. ;       ---------------------------------
  368. ; Function color_key
  369. ; ---------------------------------
  370. _color_key::
  371. ;..\_sdk\evo.c:335: __endasm;
  372.         ld      hl,#2
  373.         add     hl,sp
  374.         ld      c,(hl)
  375.         jp      0x000012AF
  376. ;..\_sdk\evo.c:336: }
  377. ;..\_sdk\evo.c:341: u32 time(void) __naked
  378. ;       ---------------------------------
  379. ; Function time
  380. ; ---------------------------------
  381. _time::
  382. ;..\_sdk\evo.c:354: __endasm;
  383.         ld      hl,#0x00002060 +3
  384.         ld      d,(hl)
  385.         dec     hl
  386.         ld      e,(hl)
  387.         dec     hl
  388.         ld      a,(hl)
  389.         dec     hl
  390.         ld      l,(hl)
  391.         ld      h,a
  392.         ret
  393. ;..\_sdk\evo.c:355: }
  394. ;..\_sdk\evo.c:359: void delay(u16 time) __naked
  395. ;       ---------------------------------
  396. ; Function delay
  397. ; ---------------------------------
  398. _delay::
  399. ;..\_sdk\evo.c:380: __endasm;
  400.         ld      hl,#2
  401.         add     hl,sp
  402.         ld      c,(hl)
  403.         inc     hl
  404.         ld      b,(hl)
  405.         ld      a,b
  406.         or      c
  407.         ret     z
  408.         1$:
  409.         halt
  410.         dec     bc
  411.         ld      a,b
  412.         or      c
  413.         jr      nz,1$
  414.         ret
  415. ;..\_sdk\evo.c:381: }
  416. ;..\_sdk\evo.c:383: void swap_screen(void) __naked
  417. ;       ---------------------------------
  418. ; Function swap_screen
  419. ; ---------------------------------
  420. _swap_screen::
  421. ;..\_sdk\evo.c:390: __endasm;
  422.         jp      0x00000432
  423. ;..\_sdk\evo.c:391: }
  424. ;..\_sdk\evo.c:396: void border(u8 n) __naked
  425. ;       ---------------------------------
  426. ; Function border
  427. ; ---------------------------------
  428. _border::
  429. ;..\_sdk\evo.c:412: __endasm;
  430.         ld      hl,#2
  431.         add     hl,sp
  432.         ld      a,(hl)
  433.         ld      (0x00002050),a
  434. ;ld     c,a
  435. ;and    #7
  436. ;bit    3,c
  437. ;jr     nz,1$
  438. ;out    (0xfe),a
  439. ;ret
  440. ;1$:
  441. ;out    (0xf6),a
  442.         ret
  443. ;..\_sdk\evo.c:413: }
  444. ;..\_sdk\evo.c:420: void keyboard(u8* keys) __naked
  445. ;       ---------------------------------
  446. ; Function keyboard
  447. ; ---------------------------------
  448. _keyboard::
  449. ;..\_sdk\evo.c:429: __endasm;
  450.         ld      hl,#2
  451.         add     hl,sp
  452.         ld      e,(hl)
  453.         inc     hl
  454.         ld      d,(hl)
  455.         jp      0x00001EF5
  456. ;..\_sdk\evo.c:430: }
  457. ;..\_sdk\evo.c:433: void music_play(u8 mus) __naked
  458. ;       ---------------------------------
  459. ; Function music_play
  460. ; ---------------------------------
  461. _music_play::
  462. ;..\_sdk\evo.c:440: __endasm;
  463.         ld      hl,#2
  464.         add     hl,sp
  465.         ld      a,(hl)
  466.         jp      0x00001F8B
  467. ;..\_sdk\evo.c:441: }
  468. ;..\_sdk\evo.c:445: void music_stop(void) __naked
  469. ;       ---------------------------------
  470. ; Function music_stop
  471. ; ---------------------------------
  472. _music_stop::
  473. ;..\_sdk\evo.c:449: __endasm;
  474.         jp      0x00001F80
  475. ;..\_sdk\evo.c:450: }
  476. ;..\_sdk\evo.c:454: void sample_play(u8 sample) __naked
  477. ;       ---------------------------------
  478. ; Function sample_play
  479. ; ---------------------------------
  480. _sample_play::
  481. ;..\_sdk\evo.c:461: __endasm;
  482.         ld      hl,#2
  483.         add     hl,sp
  484.         ld      l,(hl)
  485.         jp      0x00001F27
  486. ;..\_sdk\evo.c:462: }
  487. ;..\_sdk\evo.c:466: u16 rand16(void) __naked
  488. ;       ---------------------------------
  489. ; Function rand16
  490. ; ---------------------------------
  491. _rand16::
  492. ;..\_sdk\evo.c:489: __endasm;
  493.         ld      hl,(1$)
  494.         push    hl
  495.         srl     h
  496.         rr      l
  497.         ex      de,hl
  498.         ld      hl,(2$)
  499.         add     hl,de
  500.         ld      (2$),hl
  501.         ld      a,l
  502.         xor     #15
  503.         ld      l,a
  504.         ex      de,hl
  505.         pop     hl
  506.         sbc     hl,de
  507.         ld      (1$),hl
  508.         ret
  509.         1$:
  510.         .dw 1
  511.         2$:
  512.         .dw 5
  513. ;..\_sdk\evo.c:490: }
  514. ;..\_sdk\evo.c:582: void set_sprite(u8 id,u8 x,u8 y,u16 spr) __naked
  515. ;       ---------------------------------
  516. ; Function set_sprite
  517. ; ---------------------------------
  518. _set_sprite::
  519. ;..\_sdk\evo.c:622: __endasm;
  520.         ld      hl,#2
  521.         add     hl,sp
  522.         ld      a,(hl) ;id
  523.         inc     hl
  524.         ld      c,(hl) ;x
  525.         inc     hl
  526.         ld      b,(hl) ;y
  527.         inc     hl
  528.         ld      e,(hl) ;sprl
  529.         inc     hl
  530.         ld      d,(hl) ;sprh
  531.         add     a,a
  532.         add     a,a
  533.         ld      l,a
  534.         ld      h,#0x00000800/256
  535.         ld      a,d ;яхЁхёў╕Є эюьхЁр ёяЁрщЄр
  536.         cp      #255
  537.         jr      z,1$
  538.         add     a,a
  539.         add     a,d
  540.         ld      d,a
  541.         1$:
  542.         ld      a,(0x00002054)
  543.         and     #2
  544.         jr      nz,2$
  545.         inc     h
  546.         2$:
  547.         ld      (hl),d
  548.         inc     l
  549.         ld      (hl),e
  550.         inc     l
  551.         ld      (hl),b
  552.         inc     l
  553.         ld      (hl),c
  554.         ret
  555. ;..\_sdk\evo.c:623: }
  556. ;..\_sdk\evo.c:627: void sprites_start(void) __naked
  557. ;       ---------------------------------
  558. ; Function sprites_start
  559. ; ---------------------------------
  560. _sprites_start::
  561. ;..\_sdk\evo.c:631: __endasm;
  562.         jp      0x0000158B
  563. ;..\_sdk\evo.c:632: }
  564. ;..\_sdk\evo.c:636: void sprites_stop(void) __naked
  565. ;       ---------------------------------
  566. ; Function sprites_stop
  567. ; ---------------------------------
  568. _sprites_stop::
  569. ;..\_sdk\evo.c:640: __endasm;
  570.         jp      0x000015DE
  571. ;..\_sdk\evo.c:641: }
  572.         .area _CODE
  573.         .area _INITIALIZER
  574.         .area _CABS (ABS)
  575.