EOS (8-bit operating system)

From Wikipedia, the free encyclopedia
Elementary Operating System
DeveloperColeco Industries, Inc.
Written inZ80 Assembly language
Working stateDiscontinued, historic
Initial release1983; 41 years ago (1983)
Latest releaseEOS-7
Available inEnglish
PlatformsColeco Adam
Default
user interface
Text user interface
LicenseProprietary software

EOS is the built-in operating system of the Coleco Adam. There are bindings in high-level programming languages like BASIC.[1]

Overview[edit]

EOS-API[2] with Doxygen

The functions are grouped into categories as follows.[3][4]

Executive calls[edit]

  • 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[edit]

  • eos_console_init
  • eos_console_display_regular
  • eos_console_display_special

Printer Interface[edit]

  • eos_print_character
  • eos_print_buffer
  • eos_printer_status
  • eos_start_print_character
  • eos_end_print_character

Keyboard Interface[edit]

  • eos_keyboard_status
  • eos_read_keyboard
  • eos_start_read_keyboard
  • eos_end_read_keyboard

File Operations[edit]

  • 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[5]
  • eos_put_date
  • eos_delete_file
  • eos_rename_file

Device Operations[edit]

  • 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[edit]

  • 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[edit]

  • eos_read_game_controller[6]
  • eos_update_spinner

Sound Routines[edit]

  • eos_sound_init
  • eos_sound_off
  • eos_start_sound
  • eos_play_sound
  • eos_end_sound

Subroutines[edit]

  • eos_decrement_low_nibble
  • eos_decrement_high_nibble
  • eos_move_high_nibble_to_low_nibble
  • eos_add_a_to_hl

References[edit]

  1. ^ BASIC bindings
  2. ^ C bindings
  3. ^ EOS Programmer's Manual
  4. ^ "Color label printer".
  5. ^ https://web.archive.org/web/20170815223823/http://www.theadamresource.com/articles/eos/date_stamping.html
  6. ^ https://web.archive.org/web/20170815223017/http://www.theadamresource.com/articles/assembly/game_controller_input.html

External links[edit]