home *** CD-ROM | disk | FTP | other *** search
/ messroms.de / 2007-01-13_www.messroms.de.zip / VZ200 / TOOLS / DZ80.ZIP / vzrom.def < prev    next >
Text File  |  1999-12-08  |  11KB  |  546 lines

  1. 0000 C  RST_00
  2. 0000 +  prevent interrupts
  3. 0002 +  continue at 0674H
  4. 0008 C  RST_08
  5. 0008 +    continue at 7800H and from there at 1C96H
  6. 0010 C  RST_10
  7. 0010 +    continue at 7803H and from there at 1D78H
  8. 0013 ;  DCB input (AF,DE)
  9. 0013 ;  I: DE = DCB address
  10. 0013 ;  O: A  = byte read
  11. 0013 C  INCH
  12. 0014 +  DCB type is input
  13. 0018 C  RST_18
  14. 0018 +    continue at 7806H and from there at 1C90H
  15. 001B ;  DCB output (AF,DE)
  16. 001B ;  I: DE = DCB address
  17. 001B ;  I: A  = byte to output
  18. 001B ;  O: -
  19. 001B C  DCB_output
  20. 0020 C  RST_20
  21. 0023 ;  DCB in/out (AF,DE)
  22. 0023 ;  I: DE = DCB address
  23. 0023 ;  O: ?
  24. 0023 C  DCB_in_out
  25. 0028 C  RST_28
  26. 002B ;  get keyboard (AF,DE)
  27. 002B ;  I: -
  28. 002B ;  O: A = ASCII code of character
  29. 002B C  KEY_get
  30. 0030 C  RST_30
  31. 0033 ;  display (AF,DE)
  32. 0033 ;  print a character on the screen
  33. 0033 ;  I: A = ASCII code of character
  34. 0033 ;  O: -
  35. 0033 C  OUTCH
  36. 0038 C  RST_38
  37. 003B ;  print (AF,DE)
  38. 003B ;  I: ASCII code of character to print
  39. 003B ;  O: -
  40. 003B C  DCB_print
  41. 0040 C  INLINE
  42. 0046 C  DCB_in_out
  43. 0049 ;  wait for key (AF,DE)
  44. 0049 ;  I: -
  45. 0049 ;  O: A = ASCII code of character
  46. 0049 C  INCHW
  47. 0050 C
  48. 0060 ;  sleep BC (AF,BC)
  49. 0060 ;  I: BC counter (BC * 11.3 us delay)
  50. 0060 C  sleep_BC
  51. 0066 ;  NMI entry (reset key)
  52. 0066 C  reset
  53. 006C ;  prepare ram for BASIC
  54. 006C C  start4
  55. 007B C    start5a
  56. 007D ;  no ROM with basic found
  57. 007D C  start6
  58. 008B ;  ROM with basic found
  59. 008B C  start7
  60. 00E9 ;  enter number at MEM SIZE?
  61. 00E9 C  SUB_mem_size
  62. 00FA ;  limit memory
  63. 00FA ;  I: HL = address of top memory + 1
  64. 00FA C  SUB_mem_top
  65. 010A W    RAM_lo??
  66. 010C W    RAM_hi??
  67. 010E A  MSG_startup
  68. 012D C
  69. 0132 C  BAS_CHECK
  70. 0135 C  BAS_SET
  71. 0138 C  BAS_RESET
  72. 0140 C  start5
  73. 014F C  BAS_set_1
  74. 015D C  BAS_reset_1
  75. 016B C  BAS_check_1
  76. 0183 C  BAS_bit_and_addr
  77. 0195 B
  78. 019D C  BAS_inkey
  79. 01C9 C  BAS_CLS
  80. 01D3 C  BAS_RANDOM
  81. 01D9 B    KBD_norm_column_0
  82. 01E1 B    KBD_norm_column_1
  83. 01E9 B    KBD_norm_column_2
  84. 01F1 B    KBD_norm_column_3
  85. 01F9 B    KBD_norm_column_4
  86. 0201 B    KBD_norm_column_5
  87. 0209 B    KBD_shift_column_0
  88. 0211 B    KBD_shift_column_1
  89. 0219 B    KBD_shift_column_2
  90. 0221 B    KBD_shift_column_3
  91. 0229 B    KBD_shift_column_4
  92. 0231 B    KBD_shift_column_5
  93. 0239 B    KBD_func1_column_0
  94. 0241 B    KBD_func1_column_1
  95. 0249 B    KBD_func1_column_2
  96. 0251 B    KBD_func1_column_3
  97. 0259 B    KBD_func1_column_4
  98. 0261 B    KBD_func1_column_5
  99. 0269 B    KBD_func2_column_0
  100. 0271 B    KBD_func2_column_1
  101. 0279 B    KBD_func2_column_2
  102. 0281 B    KBD_func2_column_3
  103. 0289 B    KBD_func2_column_4
  104. 0291 B    KBD_func2_column_5
  105. 0299 B    KBD_func3_column_0
  106. 02a1 B    KBD_func3_column_1
  107. 02a9 B    KBD_func3_column_2
  108. 02b1 B    KBD_func3_column_3
  109. 02b9 B    KBD_func3_column_4
  110. 02c1 B    KBD_func3_column_5
  111. 02c9 B    KBD_func3_column_0
  112. 02d1 B    KBD_func3_column_1
  113. 02d9 B    KBD_func3_column_2
  114. 02e1 B    KBD_func3_column_3
  115. 02e9 B    KBD_func3_column_4
  116. 02f1 B    KBD_func3_column_5
  117. 02f9 C
  118. 0317 C  SUB_cursor_up
  119. 033A C  SUB_put_chr
  120. 0345 ;  calc new pos (AF,DE)
  121. 0345 ;  I: -
  122. 0345 ;  O: A = new pos value
  123. 0345 C  SUB_calc_pos
  124. 0358 ;  get keyboard DOS (AF)
  125. 0358 ;  I: -
  126. 0358 ;  O: A = ASCII code of character
  127. 0358 C  SUB_key_get_dos
  128. 0361 ;  input a line of max 240 characters (AF,DE,HL)
  129. 0361 ;  I: -
  130. 0361 ;  O: carry set if break pressed
  131. 0361 C  SUB_input_line
  132. 0384 ;  wait keyboard DOS (AF)
  133. 0384 ;  I: -
  134. 0384 ;  O: A = ASCII code of character
  135. 0384 C  SUB_key_wait_dos
  136. 038B ;  terminate printing (AF)
  137. 038B ;  I: -
  138. 038B ;  O: DPOS = 0
  139. 038B C  SUB_print_term
  140. 039C C  SUB_print_char
  141. 039C ;  print one character, convert control codes
  142. 03C2 C  DCB_in_out_1
  143. 03E3 ;  read keyboard (called by DCB)
  144. 03E3 C  SUB_kbd_read
  145. 0529 C  SUB_prt_status
  146. 053C C  SUB_prt_output
  147. 0564 C  SUB_print_number
  148. 056D C    start2
  149. 05CA C  reset_1
  150. 0674 C    start1
  151. 06CB B
  152. 06D2 C  DCB_init
  153. 0708 C
  154. 0713 C  SNG_sub_y_from_x
  155. 0716 C  SNG_add_y_to_x
  156. 0809 C  LOG_x
  157. 0847 C  SNG_mul_x_by_y
  158. 0897 C  SDIV_x_by_10
  159. 089D C  DIV_SP_by_HL
  160. 08A0 C  DIV_SP_by_x
  161. 08A0 C  DIV_BCDE_by_x
  162. 08A2 C  SNG_div_x_by_y
  163. 093E C  SMUL_x_by_10
  164. 0977 C  ABS_x
  165. 097B C  TNEG_x
  166. 0982 C  SDNEG_x
  167. 098A C  SGN_x
  168. 09BF C  GET_x_to_BCDE
  169. 0A0C C  SNG_cmp_x_with_y
  170. 0A39 C  INT_cmp_hl_de
  171. 0A78 C  DBL_cmp_x_with_y
  172. 0A7F C  CINT_x
  173. 0AB1 C  CSNG_x
  174. 0ADB C  CDBL_x
  175. 0B26 C  FIX_x
  176. 0B37 C  INT_x
  177. 0BC7 C  INT_sub_x_hl_de
  178. 0BD2 C  INT_add_x_hl_de
  179. 0BF2 C  INT_mul_x_hl_de
  180. 0C5B C  INEG_x
  181. 0C77 C  DBL_add_y_to_x
  182. 0C70 C  DBL_sub_y_from_x
  183. 0DA1 C  DBL_mul_x_by_y
  184. 0DE5 C  DBL_div_x_by_y
  185. 1364 D  FLO_1D10
  186. 136C D  FLO_1D15
  187. 1374 D  FLO_1D16
  188. 137C D  FLO_0D5
  189. 1384 D  FLO_1D16_2
  190. 138C B  FIX_1D15
  191. 1393 B  FIX_1D14
  192. 139A B  FIX_1D13
  193. 13A1 B  FIX_1D12
  194. 13A8 B  FIX_1D11
  195. 13AF B  FIX_1D10
  196. 13B6 B  FIX_1D9
  197. 13BD B  FIX_1D8
  198. 13C4 B  FIX_1D7
  199. 13CB B  FIX_1D6
  200. 13D2 B  FIX_1E5
  201. 13D5 B  FIX_1E4
  202. 13D8 B  INT_1E4
  203. 13DA B  INT_1E3
  204. 13DC B  INT_1E2
  205. 13DE B  INT_1E1
  206. 13E0 B  INT_1E0
  207. 13E2 C  NEG_x_on_ret
  208. 13E7 C  SQR_x
  209. 13F2 C  EXP_SP
  210. 1439 C  EXP_x
  211. 1479 B  EXP_coeff_cnt
  212. 147A S  EXP_1_7fak
  213. 147E S  EXP_1_6fak
  214. 1482 S  EXP_1_5fak
  215. 1486 S  EXP_1_4fak
  216. 148A S  EXP_1_3fak
  217. 148E S  EXP_1_2fak
  218. 1492 S  EXP_m1_1fak
  219. 1496 S  EXP_1
  220. 149A C  MATH_taylor_1
  221. 14A9 C  MATH_taylor_2
  222. 14C9 C  RND_x
  223. 14F0 C  RND_0
  224. 1541 C  COS_x
  225. 1547 C  SIN_x
  226. 1593 B  SIN_coeff_cnt
  227. 1594 S  PI2_E9_DIV_9
  228. 1598 S  PI2_E7_DIV_7
  229. 159C S  PI2_E5_DIV_5
  230. 15A0 S  PI2_E3_DIV_3
  231. 15A4 S  PI2_E1_DIV_1
  232. 15A8 C  TAN_x
  233. 15BD C  ATN_x
  234. 15E3 B  ATN_coeff_cnt
  235. 15E4 S  ATN_1_349
  236. 15E8 S  ATN_1_62
  237. 15EC S  ATN_1_23
  238. 15F0 S  ATN_M_1_11
  239. 15F4 S  ATN_1_9
  240. 15F8 S  ATN_M_1_7
  241. 15FC S  ATN_1_5
  242. 1600 S  ATN_M_1_3
  243. 1604 S  ATN_1
  244. 1608 E  BAS_funct_entry
  245. 1650 7  BAS_token_table
  246. 17A5 7  BAS_funct_table
  247. 1822 E  BAS_token_entry
  248. 189A B  BAS_op_priority
  249. 18A1 E  BAS_type_conv
  250. 18AB E  BAS_op_double
  251. 18B5 E  BAS_op_single
  252. 18BF E  BAS_op_integer
  253. 18C9 A  BAS_err2
  254. 18C9 +  Next without For
  255. 18CB +  SyNtax
  256. 18CD +  Return without Gosub
  257. 18CF +  Out of Data
  258. 18D1 +  Function Call
  259. 18D3 +  OVerflow
  260. 18D5 +  Out of Memory
  261. 18D7 +  Undefined Line
  262. 18D9 +  BS ??
  263. 18DB +  DD ??
  264. 18DD +  division by zero (/0)
  265. 18DF +  Illegal Direct
  266. 18E1 +  Type Mismatch
  267. 18E3 +  Out of Stringspace
  268. 18E5 +  LS ??
  269. 18E7 +  ST ??
  270. 18E9 +  CN ??
  271. 18EB +  NR ??
  272. 18ED +  RW ??
  273. 18EF +  UE ??
  274. 18F1 +  Missing Operand
  275. 18F3 +  FD ??
  276. 18F5 +    Syntax Error
  277. 18F7 ;    this is copied into ram at 7880H...
  278. 18F7 C    _SUB_SDIV
  279. 191C A  MSG_Error
  280. 1924 A  MSG_in
  281. 1929 A  MSG_READY
  282. 1930 A  MSG_Break
  283. 1936 C
  284. 1936 ;  subroutine for FOR, NEXT and RETURN
  285. 1936 ;  get data from basic stack
  286. 1936 ;  I: DE = VARPTR of the new loop variable if FOR/NEXT loop
  287. 1936 ;     DE = VARPTR of the variable of NEXT
  288. 1936 ;     DE = 0000 if no variable at NEXT
  289. 1936 ;  O: DE = unchanged
  290. 1936 ;     HL = stack pointer to FOR/TO stack + 1 (if Z clear)
  291. 1936 ;     HL = stack pointer to FOR/TO stack + 3 (if Z is set)
  292. 1B49 C  BAS_NEW
  293. 1CA1 C  BAS_FOR
  294. 1D91 C  BAS_RESTOR
  295. 1DA9 C  BAS_STOP
  296. 1DAE C  BAS_END
  297. 1DE4 C  BAS_CONT
  298. 1DF7 C  BAS_TRON
  299. 1DF8 C  BAS_TROFF
  300. 1E00 C  BAS_DEFSTR
  301. 1E03 C  BAS_DEFINT
  302. 1E06 C  BAS_DEFSNG
  303. 1E09 C  BAS_DEFDBL
  304. 1E7A C  BAS_CLEAR
  305. 1EA3 C  BAS_RUN
  306. 1EB1 C  BAS_GOSUB
  307. 1EC2 C  BAS_GOTO
  308. 1EDE C  BAS_RETURN
  309. 1F05 C  BAS_DATA
  310. 1F07 C  BAS_REM_ELSE
  311. 1F21 C  BAS_LET
  312. 1F6C C  BAS_ON
  313. 1FAF C  BAS_RESUME
  314. 1FF4 C  BAS_ERROR
  315. 2008 C  BAS_AUTO
  316. 2039 C  BAS_IF
  317. 2067 C  BAS_LPRINT
  318. 206F C  BAS_PRINT
  319. 219A C  BAS_INPUT
  320. 21EF C  BAS_READ
  321. 22B6 C  BAS_NEXT
  322. 2490 C  INT_div_x_hl_de
  323. 2608 C  BAS_DIM
  324. 27D4 C  FRE_x
  325. 27F5 C  POS_x
  326. 2836 C  STR$_x
  327. 28A7 C  SUB_print_hl
  328. 2A03 C  LEN_x
  329. 2A0F C  ASC_x
  330. 2A1F C  CHR$_x
  331. 2A61 C  LEFT$_x
  332. 2A91 C  RIGHT$_x
  333. 2A9A C  MID$_x
  334. 2AC5 C  VAL_x
  335. 2AEF C  INP_x
  336. 2AFB C  BAS_OUT
  337. 2B29 C  BAS_LLIST
  338. 2B2E C  BAS_LIST
  339. 2BC6 C  BAS_DELETE
  340. 2BF5 C  BAS_CSAVE
  341. 2C1F C  BAS_CLOAD
  342. 2CAA C  PEEK_x
  343. 2CB1 C  BAS_POKE
  344. 2E60 C  BAS_EDIT
  345. 687F B  KEY_ROW_0
  346. 68BF B    KEY_ROW_1
  347. 68DF B    KEY_ROW_2
  348. 68BF B    KEY_ROW_3
  349. 68F7 B    KEY_ROW_4
  350. 68FB B    KEY_ROW_5
  351. 68FD B    KEY_ROW_6
  352. 68FE B    KEY_ROW_7
  353. 7000 B    SCR_memory
  354. 7800 C  VEC_RST_08
  355. 7803 C    VEC_RST_10
  356. 7806 C    VEC_RST_18
  357. 7809 C    VEC_RST_20
  358. 780C C    VEC_RST_28
  359. 780F C    VEC_RST_30
  360. 7812 C    VEC_RST_38
  361. 7815 B    DCB_kbd_type
  362. 7816 E    DCB_kbd_entry
  363. 7818 B    DCB_kbd_ctrl_modsel
  364. 7819 B    CRT_cur_bottom
  365. 781A B    CRT_cur_top_flag
  366. 781D B    DCB_scr_type
  367. 781E E    DCB_scr_entry
  368. 781F B    DCB_scr_entry+1
  369. 7820 W    DCB_scr_pos
  370. 7821 B    DCB_scr_pos+1
  371. 7822 B    DCB_scr_cursor
  372. 7823 B    DCB_scr_colour
  373. 7824 B    DCB_scr_repeat
  374. 7825 B    DCB_prt_type
  375. 7826 E    DCB_prt_entry
  376. 7827 B    DCB_prt_entry+1
  377. 7828 B    DCB_prt_page_size
  378. 7829 B    DCB_prt_line_count
  379. 782D C    DOS_$RET
  380. 7830 C    DOS_$EXIT
  381. 7833 C    SUB_ill_DCB
  382. 7836 B    KEY_old_0
  383. 7837 B    KEY_old_1
  384. 7838 B    KEY_old_2
  385. 7839 B    KEY_old_3
  386. 783A B    KEY_old_4
  387. 783B B    KEY_old_5
  388. 783C B    KEY_old_6
  389. 783D B    KEY_old_7
  390. 783E B    MEM_unused
  391. 7880 C    SUB_SDIV
  392. 788E W    USR_address
  393. 7890 B    VAL_rnd_factor
  394. 7893 C    SUB_INP
  395. 7896 C    SUB_OUT
  396. 7899 B    KEY_old
  397. 789A B    ERR
  398. 789B B    DPOS
  399. 789C B    out_flag
  400. 789D B    scr_width
  401. 789E B    tab_max
  402. 78A0 W    STR_space
  403. 78A2 W    BAS_line_number
  404. 78A4 W    BAS_lomem
  405. 78A6 B    pos
  406. 78A7 W    ptr_line_buffer
  407. 78A9 B    flg_input
  408. 78AA B    rnd_mantissa
  409. 78AB B    rnd_seed
  410. 78AE B    dim_flag
  411. 78AF B    var_type
  412. 78B0 B    flg_dont_tokenize
  413. 78B1 W    bas_space_end
  414. 78B3 W    str_space_next
  415. 78B5 B    str_tab_len_0
  416. 78B6 W    str_tab_adr_0
  417. 78B8 B    str_tab_len_1
  418. 78B9 W    str_tab_adr_1
  419. 78BB B    str_tab_len_2
  420. 78BC W    str_tab_adr_2
  421. 78BE B    str_tab_len_3
  422. 78BF W    str_tab_adr_3
  423. 78C1 B    str_tab_len_4
  424. 78C2 W    str_tab_adr_4
  425. 78C4 B    str_tab_len_5
  426. 78C5 W    str_tab_adr_5
  427. 78C7 B    str_tab_len_6
  428. 78C8 W    str_tab_adr_6
  429. 78CA B    str_tab_len_7
  430. 78CB W    str_tab_adr_7
  431. 78CD B    str_tab_len_8
  432. 78CE W    str_tab_adr_8
  433. 78D0 B    str_tab_len_9
  434. 78D1 W    str_tab_adr_9
  435. 78D3 B    str_len
  436. 78D4 W    str_adr
  437. 78D6 W    str_last_str
  438. 78D8 W    old_ptz
  439. 78DA W    data_line
  440. 78DC B    flg_no_array
  441. 78DD B    flg_stopped
  442. 78DE B    flg_read_input
  443. 78DF E    VEC_prg_start
  444. 78E1 B    flg_auto
  445. 78E2 W    VAL_auto_line
  446. 78E4 W    VAL_auto_step
  447. 78E6 W    basic_code
  448. 78E8 W    basic_stack
  449. 78EA W    VAL_basic_erl
  450. 78EC W    VAL_basic_dot
  451. 78EE W    basic_code0
  452. 78F0 W    basic_on_error
  453. 78F2 B    flg_basic_on_error
  454. 78F3 W    BUF_basic_code
  455. 78F5 W    VAL_basic_line
  456. 78F7 W    basic_cont
  457. 78F9 W    var_space
  458. 78FB W    var_space_dim
  459. 78FD W    free_mem
  460. 78FF W    data
  461. 7901 B    DEF_A
  462. 7902 B    DEF_B
  463. 7903 B    DEF_C
  464. 7904 B    DEF_D
  465. 7905 B    DEF_E
  466. 7906 B    DEF_F
  467. 7907 B    DEF_G
  468. 7908 B    DEF_H
  469. 7909 B    DEF_I
  470. 790A B    DEF_J
  471. 790B B    DEF_K
  472. 790C B    DEF_L
  473. 790D B    DEF_M
  474. 790E B    DEF_N
  475. 790F B    DEF_O
  476. 7910 B    DEF_P
  477. 7911 B    DEF_Q
  478. 7912 B    DEF_R
  479. 7913 B    DEF_S
  480. 7914 B    DEF_T
  481. 7915 B    DEF_U
  482. 7916 B    DEF_V
  483. 7917 B    DEF_W
  484. 7918 B    DEF_X
  485. 7919 B    DEF_Y
  486. 791A B    DEF_Z
  487. 791B B    flg_trace
  488. 791C S    X_buff
  489. 7926 S    Y_buff
  490. 792F B    N_buff
  491. 794A B    M_buff
  492. 7952 C    DOS_CVI
  493. 7955 C    DOS_FN
  494. 7958 C    DOS_CVS
  495. 795B C    DOS_DEF
  496. 795E C    DOS_CVD
  497. 7961 C    DOS_EOF
  498. 7964 C    DOS_LOC
  499. 7967 C    DOS_LOF
  500. 796A C    DOS_MKI$
  501. 796D C    DOS_MKS$
  502. 7970 C    DOS_MKD$
  503. 7973 C    DOS_CMD
  504. 7976 C    DOS_TIME$
  505. 7979 C    DOS_OPEN
  506. 797C C    DOS_FIELD
  507. 797F C    DOS_GET
  508. 7982 C    DOS_PUT
  509. 7985 C    DOS_CLOSE
  510. 7988 C    DOS_LOAD
  511. 798B C    DOS_MERGE
  512. 798E C    DOS_NAME
  513. 7991 C    DOS_KILL
  514. 7994 C    DOS_AMPERSAND
  515. 7997 C    DOS_LSET
  516. 799A C    DOS_RSET
  517. 799D C    DOS_INSTR
  518. 79A0 C    DOS_SAVE
  519. 79A3 C    DOS_LINE
  520. 79A6 C    DOS_error
  521. 79A9 C    DOS_USR
  522. 79AC C    DOS_cmd_mode
  523. 79AF C    DOS_line_input
  524. 79B2 C    DOS_line_tokenized
  525. 79B5 C    DOS_line_program
  526. 79B8 C    DOS_line_inserted
  527. 79BB C    DOS_var_clear
  528. 79BE C    DOS_prt_done
  529. 79C1 C    DOS_dsp_char
  530. 79C4 C    DOS_key_running
  531. 79C7 C    DOS_RUN
  532. 79CA C    DOS_token_PRINT
  533. 79CD C    DOS_token_PRINT_N
  534. 79D0 C    DOS_new_line
  535. 79D3 C    DOS_PRINT
  536. 79D6 C    DOS_token_INPUT
  537. 79D9 C    DOS_func_MID$
  538. 79DC C    DOS_read_input
  539. 79DF C    DOS_input_done
  540. 79E2 C    DOS_SYSTEM
  541. 79E5 B    line_buffer_mark
  542. 79E8 B    line_buffer
  543.  
  544. 0010 P    IO_FDC
  545. 0020 P    IO_LPT
  546.