Operating system for developing boot sector games & apps
GameOS is a 16-bit real mode operating system allowing to run
binary executables in a boot sector (0x0000_7C00 physical RAM address)
It's distributed in a form of 'packs' with bundled games/apps.
- run boot sector games from floppy image
- create new 512 bytes programs in hex editor using x86 machine codes!
- save up to 5 programs onto USB flash drive
- load & edit one of 5 user defined programs
- run user defined games/apps in the boot sector or at 0x0000_0500-0x0000_06FF (hex editor's scope)
- change color scheme
- clear screen
- Pick up GameOS.img from the desired pack
- Command to run in QEMU: qemu-system-i386 -hda GameOS.img
- Run in online emulator(https://copy.sh/v86/): click upload HDD image then start emulation
- Plug in USB flash drive
- Run command sudo fdisk -l => /dev/sdb should be your USB flash drive
- Navigate to where GameOS image is located
- Run command dd if=GameOS.img of=/dev/sdb count=2880 bs=512
- Boot from USB flash drive
CHS addresses: https://en.wikipedia.org/wiki/Cylinder-head-sector
x86 Real mode: https://wiki.osdev.org/Real_Mode
x86 Real mode memory segmentation: https://wiki.osdev.org/Segmentation
x86 Memory map: https://wiki.osdev.org/Memory_Map_(x86)
x86 BIOS interrupts: http://www.ablmcc.edu.hk/~scy/CIT/8086_bios_and_dos_interrupts.htm
x86 Assembly registers: https://www.assemblylanguagetuts.com/x86-assembly-registers-explained/
x86 Assembly instructions: https://www.aldeid.com/wiki/X86-assembly/Instructions
x86 Assembler Instruction Set Opcode Table http://sparksandflames.com/files/x86InstructionChart.html
x86 Online emulator: https://copy.sh/v86/