Files
chibi-pc09/README.md
2021-05-07 22:48:22 -04:00

2.6 KiB

chibi pc-09

GitHub last commit Contributor Covenant

Description:

The pc-09 will be an extremely expandable Motorola 6809 based microcomputer that can run OS-9 of off an SD card:

  • On boot, the coldboot ROM will search an SD card for a bootfile, load it into RAM, and execute it. The bootfile will be a BIN file that is copied directly to RAM. This bootfile can be copied and moved the same as any other file, allowing for easy backup and distribution of boot code.

  • It will come with 64k of RAM by default. These are split into 2k RAM blocks. The first page is the Kernal Root Block. The second-to-last page is the I/O Block. The last page is the Vector Block. All other blocks are normal RAM. A maximum of 58k of address space is program-accessible. An optional upgrade is the 6829 MMU. The MMU has a 10-bit output, but the maximum amount of RAM will be 1mb, as the upper address line is used for marking r/rw, as outlined in the 6829 datasheet.

  • The MMU allows for 4 different address spaces. Multiple MMUs can be combined to create up to 32 address spaces. The kernal will occupy address space 0, and will manage all other address spaces. Faults will trigger an interrupt for the kernal to handle.

  • The I/O Block is sub-divided into 128 devices, with 16 addresses each. Address 0 will be a type indicator, telling the ROM what type of device it is.

  • The graphics system will be more advanced than most homebrew computer projects. It will have a custom TTL logic graphics card that will be able to display 320x200 in 256 colours over VGA. There will be 64k of double-buffered VRAM, interfaced via commands. The buffer will not copy unless a 'done' command is sent. This way, if the frame is not ready, the previous frame will be displayed, preventing tearing. These commands will include an auto-increment function, allowing entire bitmaps to be copied with ease. It will also have a text mode, utilizing bitmap copy from the character ROM. [SUBJECT TO CHANGE]

  • It will run OS-9, with pc-09 specific drivers and memory management. This should be invisible to OS-9 programs that use only system calls.

Progress

Currently there isn't a lot to see here. I am in the process of getting everything from my head onto paper.

Code of Conduct

This project uses the Contributor Covenant. While a code of conduct is not strictly neccesary at this stage, any form of discrimination will not be tolerated. Thank you for understanding.