Homer, the Odyssey2 Emulator
By Joe Fisher
joefish75@hotmail.com

Usage:

O2 bios goes in Homer/bios
Roms go in Homer/roms
Run Homer.exe to enter the GUI
Specify cart on command line to immediately run

Changes:

0.7
- Added support for Zip archives, including those with multiple roms inside
- Fixed command line support. Does not yet suport Zip archives from command line
- Fixed gray bar issues
- Code cleanup and bug fixes

0.6
- Command line options temporarily removed
- F2 toggles sound
- F3 toggles fullscreen
- F4 resets CPU
- F7/F8 decreases/increases volume
- F9 toggles pause
- GUI loader displays all ROM files. Double-click to play
- Input keys are now customizable via keys.cfg file
- Valid key codes are listed in key_codes.txt file
- Config data and screen size/position is now stored in options.cfg file
- I know there's a gray bar at the top. Working on that.

0.5
- Fixed drawing of sprites to properly overlap characters
- Fixed bug that kept keyboard focus from going to the main game window
- Removed debug code that accidentally locked volume at 1

0.4:
- Updated command line to check absolute path to rom image before checking in /roms/ folder
- Fixed character display to make projectiles appear in KTAA, and eliminate flickering in Quest for the Rings and other games
- Reversed sprite display order so the overlap matches hardware
- Reduced screen width to 168 pixels
- Allowed window resizing
- Added <ALT+ENTER> for fullscreen toggle
- Added a temporary console GUI that displays when no ROM is specified on the command line

0.3:
- Fixed bug in collision detection (caused KTAA to always detect hits)
- Fixed bug in sound emulation
- Fixed sound emulation to be much more accurate
- Added -v## switch for volume from 0-10

0.2:
- Added sound
- Fixed sprite drawing to allow mid screen changes
- Fixed K.C.'s Krazy Chase

Uses LibArchive, distributed under the BSD license:

Copyright (c) 2017 <Joe Fisher>
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer
   in this position and unchanged.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.