
-----------------------------------------------------------------------------------------
                 Kega 0.04b (C) Steve Snake, 18th March 2002.
-----------------------------------------------------------------------------------------

Kega 0.04b (AKA "Bloody Stupid Bugfix Version"):

What's new ?
------------

Thanks to everyone who reported that SMS/GG ROMs were not being detected correctly if
they were not zipped. All my files are zipped... So I didn't notice ;-)

This problem has now been fixed.

-----------------------------------------------------------------------------------------

Kega 0.04:


What's new ?
------------

* Fixed SegaCD Graphics Dot Conversion (Stupid typo) - thanks Gerrie for spotting the
  bug.

* Temporary fix for graphics corruption in Willy Beamish - thanks Stef for the tip.

* Seperate BRM files for SegaCD USA/JAP/EUR modes when in "Single" mode.

* Added many more Keyboard Shortcuts.

* PSG emulation rewritten.

* YM SuperHQ renamed to SuperHQ - it now affects the PSG too, high pitched PSG notes
  will sound a lot cleaner.

* Added WAV Logging.

* "Idle" bug fixed. Kega now *WILL* go completely idle when it is minimised.

* Game Genie support added. Currently works for Genesis/MegaDrive only.

* Added a "Patch" folder setting to the Genesis/MegaDrive config for Game Genie PAT
  files.

* Fixed bugs relating to "ghosted" images in various circumstances.

* BIG Rewrite to various "behind the scenes" parts, should solve problems with saving
  and loading of SRM/BRM etc. files.

* Minor update to the Z80 core.

* Minor update to the Genecyst Save State stuff (in line with Stef)

* Added MasterSystem / GameGear support :o)

* Added Config for SMS/GG.

* Many other little bug fixes / compatibility issues that I've now forgotten about ;-)
  Hmm... maybe I should start documenting everything I do.... ;-)

About SMS/GG Support
--------------------

SMS/GG Support in Kega is not yet complete. Although most, if not all, games should run,
there are a couple of features still missing:

* Double Sized Sprites are not implemented yet.
* Vertical Scroll Locking is not implemented yet.
* Although Battery Backed RAM is emulated, it is not saved/loaded yet.
* The FM sound chip present in some Japanese SMS systems is not implemented yet.
* GameGear sound is currently Mono only.
* Only the Mode4 video mode (and its variants) are currently emulated. This is the mode
  used by 99% of SMS/GG games, and the only "official" mode documented by Sega. However
  there are some (very few) games that use other modes, which will be supported at a
  later date.

Other things I will probably add to the SMS/GG support (when I get around to it):

* Game Genie support.
* Save State support.

You will notice in the Config for SMS/GG you can specify BIOS files. Most SMS/GG games
will work fine without a BIOS, but a few require it. The SMS BIOS files are usually
interchangeable (you could use the same one for USA/JAP/EUR if you like), I kept three
seperate settings so that you have the option of using different versions. If you leave
the BIOS setting completely blank, then the SMS/GG will start without a BIOS.

The SMS does not include hardware for detecting the country code. Most games can only
distinguish between Japanese and Non-Japanese systems, and infact the ROM header can
also only specify Japanese, Non-Japanese, or all versions. However, there are some games
(in particular, pretty much all of the Codemasters games, which were all developed in
the UK) that only work correctly if the country code is set to EUR. So, if you have a
ROM file with the letters (UE) in the title, it may be that it only actually works in
EUR mode, since there is no way to specify Europe only in the ROM header.

While in SMS/GG mode, only the A,B and START buttons are effective. They correspond to
A,B and START on the GG, and A,B and PAUSE on the SMS (The SMS had no START button as
such, and instead button A is labelled A/START.)

That's all for now... I have a LOT of work ahead of me (at least two parts of Kega need
a major rewrite, this may take a LONG time) so I cannot say when the next version will
be released. However if there are any stupid/annoying bugs in this version I may release
a fixed version in the meantime.


Have fun,

Snake.



-----------------------------------------------------------------------------------------

Kega 0.03 Zig:

Interim Release
---------------

Lots of extra stuff I wanted to add, and some stuff I've added that I wanted to tidy up, but
time has been very short recently. So I'm going ahead and releasing this anyway. More stuff will
hopefully be coming very soon.
 
What's new ?
------------

* Fixed all SegaCD Graphics Conversion Functions.

* Many SegaCD Compatibility Issues fixed.

* Many Genesis Compatibility Issues fixed.

* Reworking of DirectDraw code - should no longer give people any trouble.

* Major GUI Overhaul.

* Shortcut Keys added.

* Modifications to YM2612 SuperHQ mode, now sounds slightly better in some cases.

* Added Full Screen support, with Right Mouse Click popup menus. Popup menus are not available
  in NORMAL video mode, you should switch back to windowed to access the menus.

* Added TV Mode rendering option - this mode emulates the output of a TV pretty well, look at
  the title screen for Vectorman 2 for an example.

* Changed the FPS display, it now appears at the bottom left of the screen, and can be enabled
  or disabled through the options menu.

* SegaCD LED display can also be enabled or disabled.

* Added message display.

* Save State files are now using the modified Genecyst format agreed upon by Stef and I. The
  Save State files should be compatible with Genecyst and Gens versions > 1.70.

* Added Save State Slots and Quick Load/Save options.

* Added "cool" (?) TV Static effect when console is powered off.

* Minimising Kega now causes it to go *completely* idle.

* Fixed (hopefully) strange timing problems caused by Windows stuff running in the background.

* Something Else.... ;-)

-----------------------------------------------------------------------------------------
 
Kega 0.02:

Second Maintenance Release.
---------------------------

What's new ?
------------

* Added workaround for bug in Nero's WNASPI32.DLL (thanks to all who made me
  aware of this problem)

* Added the "incorrectly named ROM" fix to the ZIP support also, forgot to
  do that last time ;-)

* Rewrote a SegaCD fix - I discovered why Snatcher keeps pausing a long time
  ago (before Kega's first release), and fixed it. I told Stef and he fixed
  it in Gens too. The difference is, Stef's fix actually worked, and mine
  didn't, because of a stupid typo. Should be OK now.

* MANY compatibility fixes - more games should now work.

* Added YM SuperHQ mode. When this mode is selected, the sound rate will
  automatically change to 44100Hz, and my YM2612 core will go into SuperHQ
  mode. This is probably about as accurate as a YM2612 core can get at this
  present time (well, it will be once I finally get around to adding LFO
  support!) - the Sonic "signpost" sound is now accurate, for example. But
  this mode is probably (I haven't timed it...) a fair bit slower, so you
  should probably only enable it for games that need it, or if you really
  care about the odd sound not being *quite* right.

LOTS more to come :-)


-----------------------------------------------------------------------------------------

Kega 0.01:

First Maintenance Release.
--------------------------

What's new ?
------------

* Fixed stupid Shadow/Highlight bug in DOUBLE mode (I accidentally deleted a
  line)

* Added 15-Bit Colour support

* Added information on what to do if your display is in 32-Bit Colour mode.
  This will later be replaced by 32-Bit Colour support.

* Kega no longer requires ASPI to be present (Just had to remove one line!)

* Made a few changes to the CD-ROM functions. Hopefully CD-ROM problems will
  be gone now.

* Rewrote Joystick handlers. Most, if not all, joysticks should work now.

* Added the ability to remap Joystick Buttons. See below for more info.

* Fixed the "APPLY" button, even though it isn't really neccessary, it was
  causing some confusion with several users. So now it works.

* ZIP support. This is my own UNZIP code, using nothing but the RFC docs for
  reference. (in ASM ;-) ok, I'm a speed freak...)
  Kega does not require ZLIB.DLL.

* Rewrite/Speedup to some CDC emulation code. Should improve SegaCD speed
  slightly.

* Fixed stupid bug in .BIN format for SegaCD images.

* Altered Genesis .BIN/SMD loader to handle incorrectly named files. Thanks
  to Dave for the hint ;-)

* Several compatibility fixes. More games should work now.

* Improved Country AutoDetection. Thanks to Eidolon for the info.

* Cleaned up ASPI code.

* Several other small fixes that I've forgotten about...


-----------------------------------------------------------------------------------------

Kega 0.00:

What is Kega ?
--------------

Kega is a new emulator for the Sega Genesis/Megadrive and SegaCD/MegaCD. It
runs under Windows 95/98/ME/2000/XP, and requires DirectX8 or above.

To use your CD/DVD-ROM drive you require an ASPI driver. To emulate CD games
you need to obtain the SegaCD/MegaCD BIOS ROMs.

The Windows GUI parts are written in C. However, the majority of Kega is
written in optimised x86 assembly. Some parts still need to be optimised,
but it should be pretty fast.

Kega is in nowhere near the state I wanted it to be for first release. But,
everything seems to have been working against me. Illness, Hardware Failure,
Constant interruption by my "real" life ;-) So I decided I *WAS* going to
release this weekend, whatever state it was in. I hope this works.... ;-)

What is Kega NOT ?
------------------

Kega is not KGen2002. Kega uses *NO* code directly from KGen. It uses parts
of the KGen MC68000 and Z80 cores, although they have been heavily modified.
Everything else is 100% rewritten from the ground up, without even using the
KGen source as reference.

What is emulated ?
------------------

Genesis/MegaDrive:

Pretty much everything, except Custom Backup RAM. AFAIK My new YM2612 core
is the most accurate I know of, although it currently lacks LFO support.
Game Genie support is missing due to lack of time. Hardware problems, and
constant interruptions, have delayed me long enough.

SegaCD/MegaCD:

Again, pretty much everything, although several parts are bound not to act
exactly the same as the real hardware. Only time and testing will tell. I
have concentrated on getting Kega to run with real CDs. Kega supports ISO or
BIN images, but not CUE, and does not support any CD Audio functions with
this method, so many games may not run. Use real CDs for now.

Several other options need to be added, such as a full screen option.

Is Kega Free ?
--------------

Of course it is.

Quick explanation of Kega.
--------------------------

FILE menu
---------

LOAD ROM - obvious. Load Genesis ROMs in BIN or SMD format. You can also
change the "Files of type" selector and load SegaCD ISO or BIN files.

LOAD STATE/SAVE STATE - currently work for Genesis only. Save your position
in a game, and load it back later. You need to load the ROM first for this
to work.

LOAD RAM CART - load a SegaCD RAM cartridge file, for extra memory capacity.

CREATE NEW RAM CART - lets you create a new RAM cartridge file, the size is
selectable. Will also load the file once it is created.

BOOT CD - Boot a SegaCD game from your CD drive.

RESET CONSOLE - Reset the current console.

POWER OFF CONSOLE - Stops Emulation, Frees up memory.

EXIT - obvious :-)


COUNTRY menu
------------

Select USA/JAP/EUR modes, or Auto Detect. Auto Detect may not work for all
games because of incorrect data in the ROM header. You can also select the
preferred order of country detection, for games that work in more than one
region.


VIDEO menu
----------

Select from Normal, Double or Scanlines video modes.

SOUND menu
----------

Select from 11025Hz, 22050Hz, or 44100Hz. 44100Hz is highly recommended if
your PC is fast enough.

the OVERDRIVE option doubles the volume of Kega's output, making it sound
closer in volume to most other emulators using the MAME sound core. However,
doing this means that the YM2612, and possibly other chips, are slightly
distorted by clipping. If you turn this option off, and your speakers up,
you will get a slightly cleaner sound. But no doubt most users will prefer
OVERDRIVE mode, since the difference in quality may be very subtle.

DRIVE menu
----------

Your CD-ROM drive(s) should appear here. Select the one you wish to boot
from.

OPTIONS menu
------------

SET CONFIG - See CONFIG

PERFECT SYNC - Some SegaCD/MegaCD games will only run correctly if the two
MC68000 processors inside the console are perfectly syncronised. This option
enables this feature. But, it requires a lot more processor power to use
this option, so only enable it when it is needed by a particular game.

CONFIG
------

Genesis:
--------

SRM Files - these are the emulated battery-backed RAM files used in some
cartridges. Select the folder where you want Kega to save these files.

State Files - See LOAD/SAVE STATE. Select the folder where you want Kega to
save these files.

AutoFix Checksums - Fixes Checksums on ROMs with bad checksums.

Sega CD:
--------

USA/JAP/EUR BIOS - locate the BIOS files required for SegaCD emulation.

BRM Files - Select the folder where you wish SegaCD Save Games to be saved.

ReadAhead - Select amount of ReadAhead the CD drive does while running
SegaCD games. Which works best really depends on the speed of your PC and
CD-ROM drive. Experiment !

BRM File Mode - Per Game will create and save a new RAM file for each game
loaded. Single will use just one internal RAM file, similar to the original
SegaCD.

Controllers:
------------

Here you can select which type of controller is connected to each of the
two control ports. You can also select whether each of these controllers
uses Keyboard or Joystick. Click the DEFINE button to set keys or Joystick
buttons.

For joysticks that have less than eight buttons, you may instead press a key
on the keyboard for the "less important" buttons, such as START, X, Y, Z and
MODE.

What's next ?
-------------

There are many, many more things I want to do with Kega, and many things I
want to redo....

-----------------------------------------------------------------------------------------
That's all for now. Have fun :-)
Steve Snake.
-----------------------------------------------------------------------------------------
