home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
messroms.de
/
2007-01-13_www.messroms.de.zip
/
VZ200
/
TOOLS
/
DZ80.ZIP
/
vzrom.def
< prev
next >
Wrap
Text File
|
1999-12-08
|
11KB
|
546 lines
0000 C RST_00
0000 + prevent interrupts
0002 + continue at 0674H
0008 C RST_08
0008 + continue at 7800H and from there at 1C96H
0010 C RST_10
0010 + continue at 7803H and from there at 1D78H
0013 ; DCB input (AF,DE)
0013 ; I: DE = DCB address
0013 ; O: A = byte read
0013 C INCH
0014 + DCB type is input
0018 C RST_18
0018 + continue at 7806H and from there at 1C90H
001B ; DCB output (AF,DE)
001B ; I: DE = DCB address
001B ; I: A = byte to output
001B ; O: -
001B C DCB_output
0020 C RST_20
0023 ; DCB in/out (AF,DE)
0023 ; I: DE = DCB address
0023 ; O: ?
0023 C DCB_in_out
0028 C RST_28
002B ; get keyboard (AF,DE)
002B ; I: -
002B ; O: A = ASCII code of character
002B C KEY_get
0030 C RST_30
0033 ; display (AF,DE)
0033 ; print a character on the screen
0033 ; I: A = ASCII code of character
0033 ; O: -
0033 C OUTCH
0038 C RST_38
003B ; print (AF,DE)
003B ; I: ASCII code of character to print
003B ; O: -
003B C DCB_print
0040 C INLINE
0046 C DCB_in_out
0049 ; wait for key (AF,DE)
0049 ; I: -
0049 ; O: A = ASCII code of character
0049 C INCHW
0050 C
0060 ; sleep BC (AF,BC)
0060 ; I: BC counter (BC * 11.3 us delay)
0060 C sleep_BC
0066 ; NMI entry (reset key)
0066 C reset
006C ; prepare ram for BASIC
006C C start4
007B C start5a
007D ; no ROM with basic found
007D C start6
008B ; ROM with basic found
008B C start7
00E9 ; enter number at MEM SIZE?
00E9 C SUB_mem_size
00FA ; limit memory
00FA ; I: HL = address of top memory + 1
00FA C SUB_mem_top
010A W RAM_lo??
010C W RAM_hi??
010E A MSG_startup
012D C
0132 C BAS_CHECK
0135 C BAS_SET
0138 C BAS_RESET
0140 C start5
014F C BAS_set_1
015D C BAS_reset_1
016B C BAS_check_1
0183 C BAS_bit_and_addr
0195 B
019D C BAS_inkey
01C9 C BAS_CLS
01D3 C BAS_RANDOM
01D9 B KBD_norm_column_0
01E1 B KBD_norm_column_1
01E9 B KBD_norm_column_2
01F1 B KBD_norm_column_3
01F9 B KBD_norm_column_4
0201 B KBD_norm_column_5
0209 B KBD_shift_column_0
0211 B KBD_shift_column_1
0219 B KBD_shift_column_2
0221 B KBD_shift_column_3
0229 B KBD_shift_column_4
0231 B KBD_shift_column_5
0239 B KBD_func1_column_0
0241 B KBD_func1_column_1
0249 B KBD_func1_column_2
0251 B KBD_func1_column_3
0259 B KBD_func1_column_4
0261 B KBD_func1_column_5
0269 B KBD_func2_column_0
0271 B KBD_func2_column_1
0279 B KBD_func2_column_2
0281 B KBD_func2_column_3
0289 B KBD_func2_column_4
0291 B KBD_func2_column_5
0299 B KBD_func3_column_0
02a1 B KBD_func3_column_1
02a9 B KBD_func3_column_2
02b1 B KBD_func3_column_3
02b9 B KBD_func3_column_4
02c1 B KBD_func3_column_5
02c9 B KBD_func3_column_0
02d1 B KBD_func3_column_1
02d9 B KBD_func3_column_2
02e1 B KBD_func3_column_3
02e9 B KBD_func3_column_4
02f1 B KBD_func3_column_5
02f9 C
0317 C SUB_cursor_up
033A C SUB_put_chr
0345 ; calc new pos (AF,DE)
0345 ; I: -
0345 ; O: A = new pos value
0345 C SUB_calc_pos
0358 ; get keyboard DOS (AF)
0358 ; I: -
0358 ; O: A = ASCII code of character
0358 C SUB_key_get_dos
0361 ; input a line of max 240 characters (AF,DE,HL)
0361 ; I: -
0361 ; O: carry set if break pressed
0361 C SUB_input_line
0384 ; wait keyboard DOS (AF)
0384 ; I: -
0384 ; O: A = ASCII code of character
0384 C SUB_key_wait_dos
038B ; terminate printing (AF)
038B ; I: -
038B ; O: DPOS = 0
038B C SUB_print_term
039C C SUB_print_char
039C ; print one character, convert control codes
03C2 C DCB_in_out_1
03E3 ; read keyboard (called by DCB)
03E3 C SUB_kbd_read
0529 C SUB_prt_status
053C C SUB_prt_output
0564 C SUB_print_number
056D C start2
05CA C reset_1
0674 C start1
06CB B
06D2 C DCB_init
0708 C
0713 C SNG_sub_y_from_x
0716 C SNG_add_y_to_x
0809 C LOG_x
0847 C SNG_mul_x_by_y
0897 C SDIV_x_by_10
089D C DIV_SP_by_HL
08A0 C DIV_SP_by_x
08A0 C DIV_BCDE_by_x
08A2 C SNG_div_x_by_y
093E C SMUL_x_by_10
0977 C ABS_x
097B C TNEG_x
0982 C SDNEG_x
098A C SGN_x
09BF C GET_x_to_BCDE
0A0C C SNG_cmp_x_with_y
0A39 C INT_cmp_hl_de
0A78 C DBL_cmp_x_with_y
0A7F C CINT_x
0AB1 C CSNG_x
0ADB C CDBL_x
0B26 C FIX_x
0B37 C INT_x
0BC7 C INT_sub_x_hl_de
0BD2 C INT_add_x_hl_de
0BF2 C INT_mul_x_hl_de
0C5B C INEG_x
0C77 C DBL_add_y_to_x
0C70 C DBL_sub_y_from_x
0DA1 C DBL_mul_x_by_y
0DE5 C DBL_div_x_by_y
1364 D FLO_1D10
136C D FLO_1D15
1374 D FLO_1D16
137C D FLO_0D5
1384 D FLO_1D16_2
138C B FIX_1D15
1393 B FIX_1D14
139A B FIX_1D13
13A1 B FIX_1D12
13A8 B FIX_1D11
13AF B FIX_1D10
13B6 B FIX_1D9
13BD B FIX_1D8
13C4 B FIX_1D7
13CB B FIX_1D6
13D2 B FIX_1E5
13D5 B FIX_1E4
13D8 B INT_1E4
13DA B INT_1E3
13DC B INT_1E2
13DE B INT_1E1
13E0 B INT_1E0
13E2 C NEG_x_on_ret
13E7 C SQR_x
13F2 C EXP_SP
1439 C EXP_x
1479 B EXP_coeff_cnt
147A S EXP_1_7fak
147E S EXP_1_6fak
1482 S EXP_1_5fak
1486 S EXP_1_4fak
148A S EXP_1_3fak
148E S EXP_1_2fak
1492 S EXP_m1_1fak
1496 S EXP_1
149A C MATH_taylor_1
14A9 C MATH_taylor_2
14C9 C RND_x
14F0 C RND_0
1541 C COS_x
1547 C SIN_x
1593 B SIN_coeff_cnt
1594 S PI2_E9_DIV_9
1598 S PI2_E7_DIV_7
159C S PI2_E5_DIV_5
15A0 S PI2_E3_DIV_3
15A4 S PI2_E1_DIV_1
15A8 C TAN_x
15BD C ATN_x
15E3 B ATN_coeff_cnt
15E4 S ATN_1_349
15E8 S ATN_1_62
15EC S ATN_1_23
15F0 S ATN_M_1_11
15F4 S ATN_1_9
15F8 S ATN_M_1_7
15FC S ATN_1_5
1600 S ATN_M_1_3
1604 S ATN_1
1608 E BAS_funct_entry
1650 7 BAS_token_table
17A5 7 BAS_funct_table
1822 E BAS_token_entry
189A B BAS_op_priority
18A1 E BAS_type_conv
18AB E BAS_op_double
18B5 E BAS_op_single
18BF E BAS_op_integer
18C9 A BAS_err2
18C9 + Next without For
18CB + SyNtax
18CD + Return without Gosub
18CF + Out of Data
18D1 + Function Call
18D3 + OVerflow
18D5 + Out of Memory
18D7 + Undefined Line
18D9 + BS ??
18DB + DD ??
18DD + division by zero (/0)
18DF + Illegal Direct
18E1 + Type Mismatch
18E3 + Out of Stringspace
18E5 + LS ??
18E7 + ST ??
18E9 + CN ??
18EB + NR ??
18ED + RW ??
18EF + UE ??
18F1 + Missing Operand
18F3 + FD ??
18F5 + Syntax Error
18F7 ; this is copied into ram at 7880H...
18F7 C _SUB_SDIV
191C A MSG_Error
1924 A MSG_in
1929 A MSG_READY
1930 A MSG_Break
1936 C
1936 ; subroutine for FOR, NEXT and RETURN
1936 ; get data from basic stack
1936 ; I: DE = VARPTR of the new loop variable if FOR/NEXT loop
1936 ; DE = VARPTR of the variable of NEXT
1936 ; DE = 0000 if no variable at NEXT
1936 ; O: DE = unchanged
1936 ; HL = stack pointer to FOR/TO stack + 1 (if Z clear)
1936 ; HL = stack pointer to FOR/TO stack + 3 (if Z is set)
1B49 C BAS_NEW
1CA1 C BAS_FOR
1D91 C BAS_RESTOR
1DA9 C BAS_STOP
1DAE C BAS_END
1DE4 C BAS_CONT
1DF7 C BAS_TRON
1DF8 C BAS_TROFF
1E00 C BAS_DEFSTR
1E03 C BAS_DEFINT
1E06 C BAS_DEFSNG
1E09 C BAS_DEFDBL
1E7A C BAS_CLEAR
1EA3 C BAS_RUN
1EB1 C BAS_GOSUB
1EC2 C BAS_GOTO
1EDE C BAS_RETURN
1F05 C BAS_DATA
1F07 C BAS_REM_ELSE
1F21 C BAS_LET
1F6C C BAS_ON
1FAF C BAS_RESUME
1FF4 C BAS_ERROR
2008 C BAS_AUTO
2039 C BAS_IF
2067 C BAS_LPRINT
206F C BAS_PRINT
219A C BAS_INPUT
21EF C BAS_READ
22B6 C BAS_NEXT
2490 C INT_div_x_hl_de
2608 C BAS_DIM
27D4 C FRE_x
27F5 C POS_x
2836 C STR$_x
28A7 C SUB_print_hl
2A03 C LEN_x
2A0F C ASC_x
2A1F C CHR$_x
2A61 C LEFT$_x
2A91 C RIGHT$_x
2A9A C MID$_x
2AC5 C VAL_x
2AEF C INP_x
2AFB C BAS_OUT
2B29 C BAS_LLIST
2B2E C BAS_LIST
2BC6 C BAS_DELETE
2BF5 C BAS_CSAVE
2C1F C BAS_CLOAD
2CAA C PEEK_x
2CB1 C BAS_POKE
2E60 C BAS_EDIT
687F B KEY_ROW_0
68BF B KEY_ROW_1
68DF B KEY_ROW_2
68BF B KEY_ROW_3
68F7 B KEY_ROW_4
68FB B KEY_ROW_5
68FD B KEY_ROW_6
68FE B KEY_ROW_7
7000 B SCR_memory
7800 C VEC_RST_08
7803 C VEC_RST_10
7806 C VEC_RST_18
7809 C VEC_RST_20
780C C VEC_RST_28
780F C VEC_RST_30
7812 C VEC_RST_38
7815 B DCB_kbd_type
7816 E DCB_kbd_entry
7818 B DCB_kbd_ctrl_modsel
7819 B CRT_cur_bottom
781A B CRT_cur_top_flag
781D B DCB_scr_type
781E E DCB_scr_entry
781F B DCB_scr_entry+1
7820 W DCB_scr_pos
7821 B DCB_scr_pos+1
7822 B DCB_scr_cursor
7823 B DCB_scr_colour
7824 B DCB_scr_repeat
7825 B DCB_prt_type
7826 E DCB_prt_entry
7827 B DCB_prt_entry+1
7828 B DCB_prt_page_size
7829 B DCB_prt_line_count
782D C DOS_$RET
7830 C DOS_$EXIT
7833 C SUB_ill_DCB
7836 B KEY_old_0
7837 B KEY_old_1
7838 B KEY_old_2
7839 B KEY_old_3
783A B KEY_old_4
783B B KEY_old_5
783C B KEY_old_6
783D B KEY_old_7
783E B MEM_unused
7880 C SUB_SDIV
788E W USR_address
7890 B VAL_rnd_factor
7893 C SUB_INP
7896 C SUB_OUT
7899 B KEY_old
789A B ERR
789B B DPOS
789C B out_flag
789D B scr_width
789E B tab_max
78A0 W STR_space
78A2 W BAS_line_number
78A4 W BAS_lomem
78A6 B pos
78A7 W ptr_line_buffer
78A9 B flg_input
78AA B rnd_mantissa
78AB B rnd_seed
78AE B dim_flag
78AF B var_type
78B0 B flg_dont_tokenize
78B1 W bas_space_end
78B3 W str_space_next
78B5 B str_tab_len_0
78B6 W str_tab_adr_0
78B8 B str_tab_len_1
78B9 W str_tab_adr_1
78BB B str_tab_len_2
78BC W str_tab_adr_2
78BE B str_tab_len_3
78BF W str_tab_adr_3
78C1 B str_tab_len_4
78C2 W str_tab_adr_4
78C4 B str_tab_len_5
78C5 W str_tab_adr_5
78C7 B str_tab_len_6
78C8 W str_tab_adr_6
78CA B str_tab_len_7
78CB W str_tab_adr_7
78CD B str_tab_len_8
78CE W str_tab_adr_8
78D0 B str_tab_len_9
78D1 W str_tab_adr_9
78D3 B str_len
78D4 W str_adr
78D6 W str_last_str
78D8 W old_ptz
78DA W data_line
78DC B flg_no_array
78DD B flg_stopped
78DE B flg_read_input
78DF E VEC_prg_start
78E1 B flg_auto
78E2 W VAL_auto_line
78E4 W VAL_auto_step
78E6 W basic_code
78E8 W basic_stack
78EA W VAL_basic_erl
78EC W VAL_basic_dot
78EE W basic_code0
78F0 W basic_on_error
78F2 B flg_basic_on_error
78F3 W BUF_basic_code
78F5 W VAL_basic_line
78F7 W basic_cont
78F9 W var_space
78FB W var_space_dim
78FD W free_mem
78FF W data
7901 B DEF_A
7902 B DEF_B
7903 B DEF_C
7904 B DEF_D
7905 B DEF_E
7906 B DEF_F
7907 B DEF_G
7908 B DEF_H
7909 B DEF_I
790A B DEF_J
790B B DEF_K
790C B DEF_L
790D B DEF_M
790E B DEF_N
790F B DEF_O
7910 B DEF_P
7911 B DEF_Q
7912 B DEF_R
7913 B DEF_S
7914 B DEF_T
7915 B DEF_U
7916 B DEF_V
7917 B DEF_W
7918 B DEF_X
7919 B DEF_Y
791A B DEF_Z
791B B flg_trace
791C S X_buff
7926 S Y_buff
792F B N_buff
794A B M_buff
7952 C DOS_CVI
7955 C DOS_FN
7958 C DOS_CVS
795B C DOS_DEF
795E C DOS_CVD
7961 C DOS_EOF
7964 C DOS_LOC
7967 C DOS_LOF
796A C DOS_MKI$
796D C DOS_MKS$
7970 C DOS_MKD$
7973 C DOS_CMD
7976 C DOS_TIME$
7979 C DOS_OPEN
797C C DOS_FIELD
797F C DOS_GET
7982 C DOS_PUT
7985 C DOS_CLOSE
7988 C DOS_LOAD
798B C DOS_MERGE
798E C DOS_NAME
7991 C DOS_KILL
7994 C DOS_AMPERSAND
7997 C DOS_LSET
799A C DOS_RSET
799D C DOS_INSTR
79A0 C DOS_SAVE
79A3 C DOS_LINE
79A6 C DOS_error
79A9 C DOS_USR
79AC C DOS_cmd_mode
79AF C DOS_line_input
79B2 C DOS_line_tokenized
79B5 C DOS_line_program
79B8 C DOS_line_inserted
79BB C DOS_var_clear
79BE C DOS_prt_done
79C1 C DOS_dsp_char
79C4 C DOS_key_running
79C7 C DOS_RUN
79CA C DOS_token_PRINT
79CD C DOS_token_PRINT_N
79D0 C DOS_new_line
79D3 C DOS_PRINT
79D6 C DOS_token_INPUT
79D9 C DOS_func_MID$
79DC C DOS_read_input
79DF C DOS_input_done
79E2 C DOS_SYSTEM
79E5 B line_buffer_mark
79E8 B line_buffer
0010 P IO_FDC
0020 P IO_LPT