EOS (8-bit operating system)

{{Multiple issues|{{refimprove|date=January 2022}}{{context|date=January 2022}}}}

{{about|the EOS home computer operating system|the supercomputer system|EOS (operating system)}}

{{Infobox OS

| name = Elementary Operating System

| logo =

| logo size =

| screenshot =

| caption =

| developer = Coleco Industries, Inc.

| source_model =

| kernel_type =

| supported_platforms = Coleco Adam

| ui = Text user interface

| family =

| released = {{Start date and age|1983}}

| latest_release_version = EOS-7

| latest_release_date =

| latest_test_version =

| latest_test_date =

| marketing_target =

| programmed_in = Z80 Assembly language

| prog_language =

| language = English

| updatemodel =

| package_manager =

| working_state = Discontinued, historic

| license = Proprietary software

| website =

}}

EOS is the built-in operating system of the Coleco Adam. There are bindings in high-level programming languages like BASIC.[https://web.archive.org/web/20170815223915/http://www.theadamresource.com/articles/smartbasic/mcode.html BASIC bindings]

Overview

File:FileManager.png]]

The functions are grouped into categories as follows.[https://www.colecoadam.net/manuals%20&%20docs/e.o.s%20programming%20manual%20(199x)%20(guy%20cousineau).html EOS Programmer's Manual]{{cite news |title=Color label printer |url=https://labelbasic.ca/}}

= 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{{cite web | url=http://www.theadamresource.com/articles/eos/date_stamping.html | archive-url=https://web.archive.org/web/20170815223823/http://www.theadamresource.com/articles/eos/date_stamping.html | archive-date=2017-08-15 | title=EOS Date Stamping by Alan Neeley }}
  • 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{{cite web | url=http://www.theadamresource.com/articles/assembly/game_controller_input.html | archive-url=https://web.archive.org/web/20170815223017/http://www.theadamresource.com/articles/assembly/game_controller_input.html | archive-date=2017-08-15 | title=EOS Game Controller Input by Dr. Solomon Swift }}
  • 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

References

{{reflist}}