VEGAS

The Sega™ Simulator

 

RELEASE NOTES

 

Copyright © 1998-2000 by Tim Meekins

tmeekins@home.com

 

 

Version 0.92 Release Notes (04/10/2000)

 

It seems the reception of Vegas has been good and I am happy.  Unhappily though, the inclusion of 32X emulation  has kept a lot of people from realizing how well the Genesis emulation is. But then, I guess w/o the 32X emulation, Vegas would probably have been lost in the ever increasing list of Genesis emulators.

 

In my haste to release the first version, I accidentally forgot to list any credits for Vegas. Vegas was entirely written by myself, however, I did “borrow” some code. The 68k core was lifted from an early version of Mame and was written by Bernd Schmidt and Markus Gietzen. I also made some massive changes to the 68k code. The Z80 core was by Marcel de Kogel and the FM synthesis by Tatsuyuki Satoh. All other code was written by myself, including the SH7604 emulation.

 

This update fixes a few more Genesis games. I believe my Genesis compatibility is very high, though I do have a very short list of games that need more work. If you come across any Genesis games with problems, feel free to let me know, and I’ll add them to my list of problem games. Some games are difficult to fix as the original games have bugs in them, yet they still magically work due to timing quirks in the Genesis hardware. Getting the emulation good enough for these broken games to work w/o breaking every other game is really difficult. I’m not the first to notice these “bugs” since I’ve also found some “fixed” Roms that actually have the bugs patched. So, beware…

 

This update also fixes a bunch of bugs in the 32X emulation, so a whole bunch more games work. Though, I must admit, the two most wanted games, Knuckles and Virtua Racing and not working yet. I’ve made some small improvements to the performance, but there’s a long ways to go. I just ordered a copy of VTune and Intel’s C compiler, so when that arrives in a few weeks, I’ll start digging deeper into the performance. I may eventually create separate executables for MMX and SSE. Using SIMD pipelining should really help the rendering performance.

 

Changes:

Fixed a stupid typo in interrupt clearing. A whole bunch of 32X games now work.

Small change to FM sound. Not sure, but possible improvement to some games.

Improved SH2 speed (5 to 10fps increase on my system)

Fixed SH2 Word writes. Fixes a lot of graphic glitches and some 32X games run better.

Fixed some bank switching. More 32X games work!

Simplified FM timers. Strider 2 and Grind Stormer (among others) now play music.

I accidentally deleted a line before the 0.9 release. It’s been replaced. Red Zone and Subterrania now work again.

Fixed window split. Dragonball Z looks better now.

Optimized BGA rendering.

Fixed a typo when reading 32X interrupt flags. Didn’t affect any games.

Found another stupid typo in the PWM flags. Toughman 32X runs further.

 

 

 

Version 0.9 Release Notes (04/05/2000)

 

Version 0.9 is the first public release of Vegas. Vegas started in January 1998 as an experimental project to see if it was possible to emulate the hardware of a gaming system on a home computer. I knew I could do a decent emulation, but I never expected the results to be as good as they eventually were. Why did I wait so long to release Vegas? I never planned on releasing it, though over time the quality and compatibility were high enough that I decided the rest of the world should have the chance to play around with it. What I found most amazing was that the basic emulation was quite trivial. In fact, the total hours of development on Vegas is quite small. The reason for the long stretch of time from start to this eventual release is simply that I’m very busy and months passed with no work being done. Most of Vegas was written over weekends. That said, don’t expect updates at any scheduled date.

 

What is Vegas? Vegas is an attempt to emulate the Sega Genesis (Sega Mega-Drive) and the Sega 32X. The 32X emulation in Vegas still has a number of compatibility and performance issues, but I feel the Genesis emulation is good enough to finally release. In future releases, I may add Sega Master System and Sega Game Gear emulation. Because I don’t have the time to play every game through to end, I haven’t done thorough testing. Feel free to let me know of any games that don’t work properly, but please don’t e-mail any ROM images.

 

What is missing from Vegas? Technically, nothing is missing. Vegas emulates every single feature of the core Genesis system (and 32X.) However, controller emulation is limited. Currently I only support keyboard play, but I will eventually add DirectInput support. Another feature I feel that is important, but missing, is saving backup-ram to the computer’s hard drive. Also planned is support for 6-button controllers and the Sega Menacer. These features will eventually be added to Vegas.

 

How is the joypad mapped?

 

            START            Enter

            UP                   Up Arrow

            DOWN            Down Arrow

            LEFT               Left Arrow

            RIGHT Right Arrow

            A                     Z

            B                      X

            C                     C

 

Performance and Compatability Issues:

 

Vegas was initially written on a Pentium Pro 200. So needless to say, a lot of effort was spent making Vegas run fast on this machine. The average frame rate I encountered on this machine was anywhere to from 30fps to 60fps. Most games are averaging in the 40s. If you have a 266MHZ class machine, I would expect that 60fps would be easy to achieve. I also have a Pentium III 600, and needless to say, it always runs.

 

Vegas uses a 16-bit rendering engine. Any 15/16-bit bit-depth format is supported. However, if you wish to run Vegas in a window, you will need to set your desktop to 15/16-bit bit-depth. If you run in full screen mode, you don’t need to adjust your desktop depth, however, if you go to windowed mode, the rendering may look funny.

 

Under windowing mode, Vegas uses a stretched drawing mode in DirectDraw. This means that the Vegas frame buffer is scaled (stretched) to fit the window. If your video card does not support this feature, you may encounter poor performance under windowed mode and I suggest just playing in full screen mode. (BTW, windowed-mode is the most accurate rendering since the full-screen mode doesn’t do any stretching, so the aspect ratios aren’t always correct.)

 

Vegas uses the computer’s sound card for timing. If you do not have a sound card, then the windows timer will be used instead. However, the windows timer is not very accurate, so frame rates will vary between 56 and 64 fps. If you have a sound card, the frame rate should stay steady at 60 fps. (If you’re playing a PAL [European] game, then replace all references to 60 fps with 50 fps.)

 

Cool Features

 

Emulates all rendering features of the Genesis without the need for setting menu options. Vegas dynamically analyzes the scene being rendered and switches between rendering engines on the fly. This is why some simple games run at higher frame rates than more complex games. Typically, games with column shifting and windowing are the slowest.

 

16-bit renderer instead of 8-bit renderer allows for shadow and hilight effects. In addition, a blurring effect has been added to simulate the blurry NTSC signal generated by the Genesis.

 

Automatic detection of country of origin. The country code can be changed from the menus to emulate the Genesis running in different countries. There are some games which have different features depending on which country the hardware is set to. Vegas properly emulates the timing differences between PAL and NTSC. A future enhancement will be a dialog at load time which shows you which countries the game was written for and you can choose which one you want.

 

Interlace mode is also emulated. In windowed mode, the number of scanlines is doubled but the image stays stretched to the windowed view. It looks quite nice. In full screen mode, the renderer attempts to emulate interlacing by rendering alternating scanlines. Which scanline is rendered also toggles each frame so you end up with a flickering image quite similar to the actual hardware.

 

If you have a copy of the Genesis Bios, you can tell Vegas what it is and every time you run Vegas, the Bios will boot. Now Vegas looks just like a Genesis when you turn it on without a cartridge. Please don’t ask me for a copy of the Bios (or any games for that matter.)

 

32X

 

I’ve written all of the emulation for the 32X, however, I haven’t finished finding bugs, so only a handful of games work correctly (and slowly at that [dang it, it has 4 four CPUs running in parallel.])

 

For the 32X emulation to work, you need to obtain copies of the Master and Slave BIOS Roms. Once you have these Roms, load them from the File/Configure menu. DO NOT ASK FOR ME THESE ROMS. These ROMs must be in a raw binary format.