Call | ASM symbol(s) | Preserved regs optimisation | C prototype(s) |
KM INITIALISE |
_fw_km_initialise == 0xBB00
| iyh, iyl | void fw_km_initialise(void); |
KM RESET |
| iyh, iyl | void fw_km_reset(void); |
KM WAIT CHAR |
| b, c, d, e, iyh, iyl | unsigned char fw_km_wait_char(void); |
KM READ CHAR |
| b, c, d, e, iyh, iyl | uint16_t fw_km_read_char(void); |
KM CHAR RETURN |
| b, c, d, e, iyh, iyl | void fw_km_char_return(unsigned char c); |
KM SET EXPAND |
| iyh, iyl | enum fw_byte_all_or_nothing fw_km_set_expand(uint8_t token, uint8_t string_length, unsigned char* string); |
KM GET EXPAND |
| b, c, iyh, iyl | uint16_t fw_km_get_expand(uint8_t token, uint8_t char_number); |
KM EXP BUFFER |
| iyh, iyl | enum fw_byte_all_or_nothing fw_km_exp_buffer(unsigned char *buffer, uint16_t buffer_bytecount); |
KM WAIT KEY |
| b, c, d, e, iyh, iyl | unsigned char fw_km_wait_key(void); |
KM READ KEY |
| b, c, d, e, iyh, iyl | uint16_t fw_km_read_key(void); |
KM TEST KEY |
| b, c, d, e, iyh, iyl | uint16_t fw_km_test_key(uint8_t key_number); |
KM GET STATE |
_fw_km_get_state == 0xBB21
| b, c, d, e, iyh, iyl | uint16_t fw_km_get_state(void); |
KM GET JOYSTICK |
_fw_km_get_joystick == 0xBB24
| b, c, d, e, iyh, iyl | uint16_t fw_km_get_joystick(void); |
KM SET TRANSLATE |
| b, c, d, e, iyh, iyl | void fw_km_set_translate(uint8_t key_number, uint8_t new_translation); |
KM GET TRANSLATE |
| b, c, d, e, iyh, iyl | uint8_t fw_km_get_translate(uint8_t key_number); |
KM SET SHIFT |
| b, c, d, e, iyh, iyl | void fw_km_set_shift(uint8_t key_number, uint8_t new_translation); |
KM GET SHIFT |
| b, c, d, e, iyh, iyl | uint8_t fw_km_get_shift(uint8_t key_number); |
KM SET CONTROL |
| b, c, d, e, iyh, iyl | void fw_km_set_control(uint8_t key_number, uint8_t new_translation); |
KM GET CONTROL |
| b, c, d, e, iyh, iyl | uint8_t fw_km_get_control(uint8_t key_number); |
KM SET REPEAT |
| d, e, iyh, iyl | uint8_t fw_km_set_repeat(uint8_t key_number, enum fw_byte_all_or_nothing repeat_allowed); |
KM GET REPEAT |
| b, c, d, e, iyh, iyl | enum fw_byte_all_or_nothing fw_km_get_repeat(uint8_t key_number); |
KM SET DELAY |
| b, c, d, e, iyh, iyl | void fw_km_set_delay(uint8_t startup_delay, uint8_t repeat_speed); |
KM GET DELAY |
_fw_km_get_delay == 0xBB42
| b, c, d, e, iyh, iyl | uint16_t fw_km_get_delay(void); |
KM ARM BREAK | Not yet covered |
KM DISARM BREAK |
_fw_km_disarm_break == 0xBB48
| b, c, d, e, iyh, iyl | void fw_km_disarm_break(void); |
KM BREAK EVENT |
_fw_km_break_event == 0xBB4B
| b, c, d, e, iyh, iyl | void fw_km_break_event(void); |
KM SET LOCKS |
_fw_km_set_locks == 0xBD3A
| b,c,d,e,iyh, iyl | void fw_km_set_locks(uint16_t locks); |
KM FLUSH |
| b, c, d, e, iyh, iyl | void fw_km_flush(void); |
Call | ASM symbol(s) | Preserved regs optimisation | C prototype(s) |
TXT INITIALISE |
_fw_txt_initialise == 0xBB4E
| iyh, iyl | void fw_txt_initialise(void); |
TXT RESET |
| iyh, iyl | void fw_txt_reset(void); |
TXT VDU ENABLE |
_fw_txt_vdu_enable == 0xBB54
| b, c, d, e, h, l, iyh, iyl | void fw_txt_vdu_enable(void); |
TXT VDU DISABLE |
_fw_txt_vdu_disable == 0xBB57
| b, c, d, e, h, l, iyh, iyl | void fw_txt_vdu_disable(void); |
TXT OUTPUT |
| a, b, c, d, e, h, l, iyh, iyl | void fw_txt_output(unsigned char c); |
TXT WR CHAR |
| iyh, iyl | void fw_txt_wr_char(unsigned char c); |
TXT RD CHAR |
| b, c, d, e, h, l, iyh, iyl | uint16_t fw_txt_rd_char(void); |
TXT SET GRAPHIC |
| b, c, d, e, h, l, iyh, iyl | void fw_txt_set_graphic(bool enable); |
TXT WIN ENABLE |
| iyh, iyl | void fw_txt_win_enable(uint8_t left, uint8_t right, uint8_t top, uint8_t bottom); |
_fw_txt_win_enable__fastcall == 0xBB66
| iyh, iyl | void fw_txt_win_enable__fastcall(uint32_t fw_txt_window_t_asint); |
TXT GET WINDOW |
_fw_txt_get_window == 0xBB69
| iyh, iyl | uint32_t fw_txt_get_window(void); |
TXT CLEAR WINDOW |
_fw_txt_clear_window == 0xBB6C
| iyh, iyl | void fw_txt_clear_window(void); |
TXT SET COLUMN |
| iyh, iyl | void fw_txt_set_column(int8_t column); |
TXT SET ROW |
| b, c, d, e, iyh, iyl | void fw_txt_set_row(int8_t row); |
TXT SET CURSOR |
| b, c, d, e, iyh, iyl | void fw_txt_set_cursor(int8_t row, int8_t column); |
_fw_txt_set_cursor__fastcall == 0xBB75
| b, c, d, e, iyh, iyl | void fw_txt_set_cursor__fastcall(int16_t colum8h_row8l); |
TXT GET CURSOR |
| b, c, iyh, iyl | uint32_t fw_txt_get_cursor(); |
TXT CUR ENABLE |
_fw_txt_cur_enable == 0xBB7B
| b, c, d, e, h, l, iyh, iyl | void fw_txt_cur_enable(void); |
TXT CUR DISABLE |
_fw_txt_cur_disable == 0xBB7E
| b, c, d, e, iyh, iyl | void fw_txt_cur_disable(void); |
TXT CUR ON |
| a, b, c, d, e, h, l, iyh, iyl | void fw_txt_cur_on(void); |
TXT CUR OFF |
_fw_txt_cur_off == 0xBB84
| a, b, c, d, e, h, l, iyh, iyl | void fw_txt_cur_off(void); |
TXT VALIDATE |
| c, iyh, iyl | uint32_t fw_txt_validate(void); |
TXT PLACE CURSOR |
_fw_txt_place_cursor == 0xBB8A
| b, c, d, e, h, l, iyh, iyl | void fw_txt_place_cursor(void); |
TXT REMOVE CURSOR |
_fw_txt_remove_cursor == 0xBB8D
| b, c, d, e, h, l, iyh, iyl | void fw_txt_remove_cursor(void); |
TXT SET PEN |
| b, c, d, e, iyh, iyl | void fw_txt_set_pen(uint8_t p); |
TXT GET PEN |
| b, c, d, e, h, l, iyh, iyl | uint8_t fw_txt_get_pen(void); |
TXT SET PAPER |
| b, c, d, e, iyh, iyl | void fw_txt_set_paper(uint8_t p); |
TXT GET PAPER |
| b, c, d, e, h, l, iyh, iyl | uint8_t fw_txt_get_paper(void); |
TXT INVERSE |
_fw_txt_inverse == 0xBB9C
| b, c, d, e, iyh, iyl | void fw_txt_inverse(void); |
TXT SET BACK |
| b, c, d, e, iyh, iyl | void fw_txt_set_back(uint8_t is_transparent); |
TXT GET BACK |
| b, c, iyh, iyl | uint8_t fw_txt_get_back(void); |
TXT GET MATRIX |
| b, c, iyh, iyl | uint32_t fw_txt_get_matrix(uint8_t character_number); |
_fw_txt_get_matrix__ignore_rom_indication == 0xBBA5
| b, c, d, e, iyh, iyl | fw_txt_character_matrix_t *fw_txt_get_matrix__ignore_rom_indication(uint8_t character_number); |
TXT SET MATRIX |
| iyh, iyl | enum fw_byte_all_or_nothing fw_txt_set_matrix(uint8_t character, fw_txt_character_matrix_t *matrix); |
TXT SET M TABLE |
| iyh, iyl | uint32_t fw_txt_set_m_table(fw_txt_character_matrix_t *buffer, bool disable, uint8_t lowest_affected_character); |
TXT GET M TABLE |
| b, c, iyh, iyl | uint32_t fw_txt_get_m_table(); |
TXT GET CONTROLS |
_fw_txt_get_controls == 0xBBB1
| a, b, c, d, e, iyh, iyl | fw_txt_control_code_table_t *fw_txt_get_controls(); |
TXT STR SELECT |
| b, c, d, e, iyl, iyh | uint8_t fw_txt_str_select(uint8_t stream_to_select); |
TXT SWAP STREAMS |
| iyh, iyl | void fw_txt_swap_streams(uint8_t stream1, uint8_t stream2); |
TXT ASK STATE |
| b, c, d, e, h, l, iyh, iyl | void fw_txt_ask_state(void); |
Call | ASM symbol(s) | Preserved regs optimisation | C prototype(s) |
TXT SET GRAPHIC |
| b, c, d, e, h, l, iyh, iyl | void fw_txt_set_graphic(bool enable); |
GRA INITIALISE |
_fw_gra_initialise == 0xBBBA
| iyh, iyl | void fw_gra_initialise(void); |
GRA RESET |
| iyh, iyl | void fw_gra_reset(void); |
GRA MOVE ABSOLUTE |
| iyh, iyl | void fw_gra_move_absolute(int16_t x, int16_t y); |
_fw_gra_move_absolute__fastcall == 0xBBC0
| iyh, iyl | void fw_gra_move_absolute__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA MOVE RELATIVE |
| iyh, iyl | void fw_gra_move_relative(int16_t x, int16_t y); |
_fw_gra_move_relative__fastcall == 0xBBC3
| iyh, iyl | void fw_gra_move_relative__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA ASK CURSOR |
_fw_gra_ask_cursor == 0xBBC6
| b, c, iyh, iyl | uint32_t fw_gra_ask_cursor(void); |
GRA SET ORIGIN |
| iyh, iyl | void fw_gra_set_origin(int16_t x, int16_t y); |
_fw_gra_set_origin__fastcall == 0xBBC9
| iyh, iyl | void fw_gra_set_origin__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA GET ORIGIN |
_fw_gra_get_origin == 0xBBCC
| b, c, iyh, iyl | uint32_t fw_gra_get_origin(void); |
GRA WIN WIDTH |
| iyh, iyl | void fw_gra_win_width(int16_t x1, int16_t x2); |
_fw_gra_win_width__fastcall == 0xBBCF
| iyh, iyl | void fw_gra_win_width__fastcall(int32_t fw_gra_x_x_coordinates_t_asint); |
GRA WIN HEIGHT |
| iyh, iyl | void fw_gra_win_height(int16_t y1, int16_t y2); |
_fw_gra_win_height__fastcall == 0xBBD2
| iyh, iyl | void fw_gra_win_height__fastcall(int32_t fw_gra_y_y_coordinates_t_asint); |
GRA GET W WIDTH |
_fw_gra_get_w_width == 0xBBD5
| b, c, iyh, iyl | uint32_t fw_gra_get_w_width(); |
GRA GET W HEIGHT |
_fw_gra_get_w_height == 0xBBD8
| b, c, iyh, iyl | uint32_t fw_gra_get_w_height(); |
GRA CLEAR WINDOW |
_fw_gra_clear_window == 0xBBDB
| iyh, iyl | void fw_gra_clear_window(void); |
GRA SET PEN |
| b, c, d, e, h, l, iyh, iyl | void fw_gra_set_pen(uint8_t pencolor); |
GRA GET PEN |
| b, c, d, e, h, iyh, iyl | uint8_t fw_gra_get_pen(void); |
GRA SET PAPER |
| b, c, d, e, h, l, iyh, iyl | void fw_gra_set_paper(uint8_t papercolor); |
GRA GET PAPER |
| b, c, d, e, h, iyh, iyl | uint8_t fw_gra_get_paper(void); |
GRA PLOT ABSOLUTE |
| iyh, iyl | void fw_gra_plot_absolute(int16_t x, int16_t y); |
_fw_gra_plot_absolute__fastcall == 0xBBEA
| iyh, iyl | void fw_gra_plot_absolute__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA PLOT RELATIVE |
| iyh, iyl | void fw_gra_plot_relative(int16_t x, int16_t y); |
_fw_gra_plot_relative__fastcall == 0xBBED
| iyh, iyl | void fw_gra_plot_relative__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA TEST ABSOLUTE |
| iyh, iyl | void fw_gra_test_absolute(int16_t x, int16_t y); |
_fw_gra_test_absolute__fastcall == 0xBBF0
| iyh, iyl | void fw_gra_test_absolute__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA TEST RELATIVE |
| iyh, iyl | void fw_gra_test_relative(int16_t x, int16_t y); |
_fw_gra_test_relative__fastcall == 0xBBF3
| iyh, iyl | void fw_gra_test_relative__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA LINE ABSOLUTE |
| iyh, iyl | void fw_gra_line_absolute(int16_t x, int16_t y); |
_fw_gra_line_absolute__fastcall == 0xBBF6
| iyh, iyl | void fw_gra_line_absolute__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA LINE RELATIVE |
| iyh, iyl | void fw_gra_line_relative(int16_t x, int16_t y); |
_fw_gra_line_relative__fastcall == 0xBBF9
| iyh, iyl | void fw_gra_line_relative__fastcall(uint32_t fw_gra_x_y_coordinates_t_asint); |
GRA WR CHAR |
| iyh, iyl | void fw_gra_wr_char(char character); |
MC BOOT PROGRAM |
_fw_mc_boot_program == 0xBD13
| | void fw_mc_boot_program(void *loader); |
MC START PROGRAM |
| | void fw_mc_start_program(uint8_t rom_selection, void *entry); |
GRA DEFAULT |
_fw_gra_default == 0xBD43
| iyh, iyl | void fw_gra_default(void); |
GRA SET BACK | Not yet covered |
GRA SET FIRST | Not yet covered |
GRA SET LINE MASK | Not yet covered |
GRA FROM USER | Not yet covered |
GRA FILL | Not yet covered |
Call | ASM symbol(s) | Preserved regs optimisation | C prototype(s) |
CAS INITIALISE |
_fw_cas_initialise == 0xBC65
| iyh, iyl | void fw_cas_initialise(void); |
CAS SET SPEED |
| b, c, d, e, iyh, iyl | void fw_cas_set_speed(uint16_t length_of_half_zero_bit, uint8_t precompensation); |
CAS NOISY |
| b, c, d, e, h, l, iyh, iyl | void fw_cas_noisy(uint8_t messages_enabled); |
CAS START MOTOR |
| b, c, d, e, iyh, iyl | uint16_t fw_cas_start_motor(void); |
CAS STOP MOTOR |
| b, c, d, e, iyh, iyl | uint16_t fw_cas_stop_motor(void); |
CAS RESTORE MOTOR |
| b, c, d, e, h, iyh, iyl | uint8_t fw_cas_restore_motor(uint8_t previous_motor_state); |
CAS IN OPEN |
| iyh, iyl | uint8_t fw_cas_in_open(fw_cas_in_open_parameters_t *parameters); |
CAS IN CLOSE |
No implementation: _fw_cas_in_close
| iyh, iyl | uint8_t fw_cas_in_close(void); |
CAS IN ABANDON |
_fw_cas_in_abandon == 0xBC7D
| iyh, iyl | void fw_cas_in_abandon(void); |
CAS IN CHAR |
No implementation: _fw_cas_in_char
| b, c, d, e, iyh, iyl | uint16_t fw_cas_in_char(void); |
CAS IN DIRECT |
No implementation: _fw_cas_in_direct
| iyh, iyl | uint32_t fw_cas_in_direct(void *destination_buffer); |
CAS RETURN |
| a, b, c, d, e, h, l, iyh, iyl | void fw_cas_return(void); |
CAS TEST EOF |
No implementation: _fw_cas_test_eof
| b, c, d, e, iyh, iyl | uint16_t fw_cas_test_eof(void); |
CAS OUT OPEN |
| iyh, iyl | uint8_t fw_cas_out_open(fw_cas_out_open_parameters_t *parameters); |
CAS OUT CLOSE |
No implementation: _fw_cas_out_close
| iyh, iyl | uint16_t fw_cas_out_close(void); |
CAS OUT ABANDON |
_fw_cas_out_abandon == 0xBC92
| iyh, iyl | void fw_cas_out_abandon(void); |
CAS OUT CHAR |
No implementation: _fw_cas_out_char
| iyh, iyl | uint16_t fw_cas_out_char(unsigned char char_to_write); |
CAS OUT DIRECT | Not yet covered |
CAS CATALOG |
| iyh, iyl | uint16_t fw_cas_catalog(void *buffer); |
CAS WRITE | Not yet covered |
CAS READ | Not yet covered |
CAS CHECK | Not yet covered |
Call | ASM symbol(s) | Preserved regs optimisation | C prototype(s) |
MC BOOT PROGRAM |
_fw_mc_boot_program == 0xBD13
| | void fw_mc_boot_program(void *loader); |
MC START PROGRAM |
| | void fw_mc_start_program(uint8_t rom_selection, void *entry); |
MC WAIT FLYBACK |
_fw_mc_wait_flyback == 0xBD19
| a, b, c, d, e, h, l, iyh, iyl | void fw_mc_wait_flyback(void); |
MC SET MODE |
| b, c, d, e, h, l, iyh, iyl | void fw_mc_set_mode(uint8_t mode); |
MC SCREEN OFFSET |
| b, d, e, iyh, iyl | void fw_mc_screen_offset(uint8_t screen_base, uint16_t screen_offset); |
MC CLEAR INKS |
| b, c, iyh, iyl | void fw_mc_clear_inks__1(ink_vector1 *ink_vector); |
| b, c, iyh, iyl | void fw_mc_clear_inks__16(ink_vector16 *ink_vector); |
| b, c, iyh, iyl | void fw_mc_clear_inks__2(ink_vector2 *ink_vector); |
| b, c, iyh, iyl | void fw_mc_clear_inks__4(ink_vector4 *ink_vector); |
MC SET INKS |
| b, c, iyh, iyl | void fw_mc_set_inks__16(ink_vector16 *ink_vector); |
| b, c, iyh, iyl | void fw_mc_set_inks__2(ink_vector2 *ink_vector); |
| b, c, iyh, iyl | void fw_mc_set_inks__4(ink_vector4 *ink_vector); |
MC RESET PRINTER |
_fw_mc_reset_printer == 0xBD28
| iyh, iyl | void fw_mc_reset_printer(void); |
MC PRINT CHAR |
| b, c, d, e, h, l, iyh, iyl | void fw_mc_print_char(unsigned char char_to_send_7bits); |
MC BUSY PRINTER |
| a, b, c, d, e, h, iyh, iyl | uint8_t fw_mc_busy_printer(void); |
MC SEND PRINTER |
| b, c, d, e, h, l, iyh, iyl | void fw_mc_send_printer(unsigned char char_to_send_7bits); |
MC SOUND REGISTER |
| d, e, iyh, iyl | void fw_mc_sound_register(uint8_t register_number, uint8_t data); |
MC PRINT TRANSLATION | Not yet covered |