EOS (8-bit operating system) explained
EOS is the built-in operating system of the Coleco Adam. There are bindings in high-level programming languages like BASIC.[1]
Overview
The functions are grouped into categories as follows.[2] [3]
Executive calls
- eos_init
- eos_hard_init
- eos_hard_reset_net
- eos_delay_after_hard_reset
- eos_synchronize_clocks
- eos_scan_for_devices
- eos_relocate_pcb
- eos_soft_init
- eos_exit_to_smartwriter
- eos_switch_memory_banks
Console Output
- eos_console_init
- eos_console_display_regular
- eos_console_display_special
Printer Interface
- eos_print_character
- eos_print_buffer
- eos_printer_status
- eos_start_print_character
- eos_end_print_character
Keyboard Interface
- eos_keyboard_status
- eos_read_keyboard
- eos_start_read_keyboard
- eos_end_read_keyboard
File Operations
- eos_file_manager_init
- eos_check_directory_for_file
- eos_find_file_1
- eos_find_file_2
- eos_find_file_in_fcb
- eos_check_file_mode
- eos_make_file
- eos_update_file_in_directory
- eos_open_file
- eos_close_file
- eos_read_file
- eos_write_file
- eos_trim_file
- eos_initialize_directory
- eos_reset_file
- eos_get_date[4]
- eos_put_date
- eos_delete_file
- eos_rename_file
Device Operations
- eos_find_pcb
- eos_find_dcb
- eos_request_device_status
- eos_get_device_status
- eos_soft_reset_device
- eos_soft_reset_keyboard
- eos_soft_reset_printer
- eos_read_block
- eos_read_one_block
- eos_start_read_one_block
- eos_end_read_one_block
- eos_write_block
- eos_write_one_block
- eos_start_write_one_block
- eos_end_write_one_block
- eos_start_read_character_device
- eos_end_read_character_device
- eos_read_character_device
- eos_start_write_character_device
- eos_end_write_character_device
- eos_write_character_device
Video RAM Management
- eos_set_vdp_ports
- eos_set_vram_table_address
- eos_load_ascii_in_vdp
- eos_put_ascii_in_vdp
- eos_write_vram
- eos_read_vram
- eos_put_vram
- eos_get_vram
- eos_write_vdp_register
- eos_read_vdp_register
- eos_fill_vram
- eos_calculate_pattern_position
- eos_point_to_pattern_position
- eos_write_sprite_table
Game Controllers
- eos_read_game_controller[5]
- eos_update_spinner
Sound Routines
- eos_sound_init
- eos_sound_off
- eos_start_sound
- eos_play_sound
- eos_end_sound
Subroutines
- eos_decrement_low_nibble
- eos_decrement_high_nibble
- eos_move_high_nibble_to_low_nibble
- eos_add_a_to_hl
External links
Notes and References
- https://web.archive.org/web/20170815223915/http://www.theadamresource.com/articles/smartbasic/mcode.html BASIC bindings
- https://www.colecoadam.net/manuals%20&%20docs/e.o.s%20programming%20manual%20(199x)%20(guy%20cousineau).html EOS Programmer's Manual
- News: Color label printer .
- https://web.archive.org/web/20170815223823/http://www.theadamresource.com/articles/eos/date_stamping.html
- https://web.archive.org/web/20170815223017/http://www.theadamresource.com/articles/assembly/game_controller_input.html