1 Virtual Jaguar v1.0.7 GCC/SDL
2 -----------------------------
4 * Various fixes to make for smoother compilation on MacOS. [Adam Green]
5 * Fixes to filetype parsing. VJ now properly recognizes .abs, .jag, .rom,
6 and .j64 files--be sure to check the README for the gory details! [Shamus]
7 * Added a kludge to allow homebrew demos to run without a Stubulator ROM and
8 without crashing the emulator. [Shamus]
9 * Fixed a blitter intensity addition problem. This fixes the title in Hover
10 Strike and the road/shadows in Checkered Flag. [Shamus]
11 * Partially fixed a problem with the SUBC opcode in the RISC processors. This
12 allows Hover Strike, Phase Zero and Fight For Life to boot into their title
13 screens and makes them somewhat playable. [Shamus]
14 * Fixed a horizontal scaling problem in the OP and the off-by-one bug that it
15 reintroduced. This fixes the road in Atari Karts and probably a few others.
17 * Fixed a long standing blitter bug that kept certain doors in AvP from
18 rendering correctly. [Shamus]
19 * Fixed some vertical positioning bugs in the OP. Now Checkered Flag, Alien
20 vs Predator and probably others now work as they should (graphically ;-)
22 * Better GUI support. Most options in the GUI work now, and more are expected
23 to be functional in the near future. [Shamus]
24 * Fixed a few more lingering blitter bugs (there are more to be found). This
25 fixes most of the glitches in Cybermorph and Alien vs Predator. [Shamus]
26 * Fixed an Object Processor scaled bitmap bug that caused incorrect
27 positioning of scaled bitmaps that started outside the line buffer, and
28 also fixed a problem that caused the OP to hang in certain situations. This
29 fixes Bubsy, International Sensible Soccer, and probably a few others.
31 * Cleaned up various bits of video rendering related code. [nwagenaar]
32 * Added support for OpenGL textures with a depth of 16bpp, 24bpp or 32bpp.
34 * Rewrote several OpenGL related rendering code concerning the new OpenGL
35 texture depths and texture sizes. [nwagenaar]
36 * Rewrote several OpenGL rendering functions concerning speed related items.
38 * Several bugs resolved due to OpenGL and normal rendering code. [nwagenaar]
39 * Default resolution for OpenGL is now 640x480 [nwagenaar];
42 Virtual Jaguar v1.0.6 GCC/SDL
43 -----------------------------
45 * Added support for gzipped ROM files. [Adam Green]
46 * Added OpenGL support. Because of this, aspect ratios in the various
47 graphic modes should be correct now. Thanks goes to Niels for enlightenment
48 in this area. :-) [Shamus]
49 * Moved all platform specific video code to video.cpp. This should make it
50 easier to add functionality to the video subsystem without having to chase
51 code around in places where it didn't belong. [Shamus]
52 * Key bindings are now customizable. [Shamus]
53 * VJ now uses a config file (vj.cfg) for commonly used settings. Settings in
54 the config file can still be overridden by command line switches. [Shamus]
55 * Preliminary GUI mouse support. [Shamus]
56 * Fixed an off-by-one bug in the Object Processor when dealing with scaled
57 bitmap objects. [Shamus]
58 * Fully virtualized screen size. What this means is that we can keep the
59 Jagaur screen displayed in a convenient size (320 x 240) and the graphics
60 that various ROMs display will now be properly centered (more or less, they
61 were really centered for a TV display). [Shamus]
62 * Border color is now displayed properly. [Shamus]
63 * Fully pipelined DSP core. Because of this, Wolfenstein 3D now has sound. To
64 use the old core, use the -nopipeline switch. [Shamus]
67 Virtual Jaguar v1.0.5 GCC/SDL
68 -----------------------------
70 * Various fixes to the codebase so that it compiles and works properly on
71 Linux. :-) The makefiles are almost identical now, the only thing that's
72 different between them are the SYSTYPE and EXESUFFIX variables defined at
74 * Fixed a pernicious blitter bug that kept Rayman from doing proper collision
76 * Added a simple file selector so that typing in long filenames in order to
77 run the emulator is no longer necessary. :-) To use it, instead of
78 supplying a ROM name, simply put in the name of the directory where your
80 * Removed all the assembly language code from the DSP, so it should be a
81 little less buggy now. Also, removed some brain-dead timeslice releasing
82 that was causing a bunch of problems with various ROMs. [Shamus]
83 * Added sound support! In order to hear any sound, you probably have to
84 start VJ with the -dspon switch. Also, unless you have a very fast computer
85 the sound is going to be choppy. Hopefully future optimizations will cure
87 * Added GUI support. You can see the results by hitting the TAB key while the
88 emulator is running. ;-) [Shamus]
89 * Lots of cleanups to the source code including the ability to trace who
90 writes what to where. [Shamus]
93 Virtual Jaguar v1.0.4 GCC/SDL - source only release
94 ---------------------------------------------------
96 * Lots of bugfixes. [Shamus]
97 * Jaguar BIOS now works properly and is used by default. BIOS failure was
98 due to a bug in the GPU (specifically in the SUBC and ADDC opcodes). To
99 override this behavior, use the -nobios switch. [Shamus]
100 * Rewrote the OP code--mostly because it was pissing me off. ;-) Not
101 to mention that it was almost completely unmaintainable in its former
102 state and was just plain wrong in its implementation in many places.
103 Because of this, some RMW effects that were missing from AvP are present
104 now and leftover crud in scaled bitmaps in Rayman is gone now. ;-) [Shamus]
105 * ZIP support! Now there is no longer any need to unzip ROMs (although if
106 you prefer to waste HD space, VJ will gladly accomodate you). The code to
107 support this is a pretty ugly hack, but it works and there are other fish
108 to fry at the moment. Also, ZLIB is now required to compile VJ. [Shamus]
109 * Support for PD ROMs. Currently the only one that works at all is JagMania,
110 though as the hardware emulation gets better more PD ROMs will begin to
111 work. Note that you must use the -nobios switch for this to work. [Shamus]
112 * Preliminary support for PAL Jaguar emulation. Default is NTSC. To use it,
113 use the -pal switch. [Shamus]
114 * Support for DSP activation. The DSP is now *off* by default, since it
115 doesn't work properly yet. Use the -dspon switch to force the DSP on.
117 * Removed all hacks that were written to support a specific ROM from the OP
118 and GPU code (much more remains to be removed). Since the CRCs that were
119 calculated to support these hacks were done on byte swapped ROMs, they
120 weren't working anyway. Besides which, a hack means that you don't
121 understand the hardware properly and/or don't know how to write the code to
122 properly emulate the hardware. ;-) [Shamus]
123 * Renamed the executable from the ridiculously named jag_em to the more
124 sensibly named vj. Note that the Jag_em.cpp file has also been changed to
125 reflect this name change. [Shamus]
126 * Removed Aaron Giles 68K dissasembler in favor of the one included with the
127 Musashi core. It's there, why not use it? ;-) [Shamus]
128 * Reordered the order of A, B, and C buttons to more accurately reflect their
129 respective positions on a real Jaguar controller. Also fixed a small bug that
130 kept the number pad from reporting the right numbers to the emulator. :-)
132 * Started to remove the !__PORT__ defintions from the source code. Since this
133 is supposed to be a portable emulator, we won't be using any MS specific
134 code anyway. [Shamus]
135 * Fixed some problems with the blitter when doing clipping and bit expansion.
136 Also fixed (reintroduced?) a bug that existed in the real blitter HW (the
137 YADD1 bit in A2--fixes Tempest 2000). [Shamus]
138 * Probably a bunch of other stuff that I've forgotten about. ;-) [Shamus]
140 NOTE: Tested only on WIN32 platform! ;-)
143 Virtual Jaguar v1.0.3 GCC/SDL - source only release
144 ---------------------------------------------------
146 * Converted GNU assembly in the GPU core to C code -- Rayman and
147 Alien vs Predator work again. :-) [Shamus]
148 * Removed closed source Starscream and replaced it with the open source
149 Musashi core. Because of this, VJ runs a little faster now. :-) [Shamus]
150 * Various cleanups to the source files (still lots of work to do!) [Shamus]
152 NOTE: Tested only on WIN32 platform!
155 1.0.1 - 1.0.2 - Unreleased, mostly for testing/finding bugs
156 -----------------------------------------------------------
158 * Lots of stuff happened, but we can't remember any of it. :-)
161 Virtual Jaguar v1.0.0 GCC/SDL - initial source release
162 ------------------------------------------------------
164 * Converted VC++ assembly to standard GNU assembly;
165 * Fixed small bugs in SDL related items (keyboard/graphics);
166 * Added *some* optimalisations to the graphics sources;
167 * Added joystick support (not tested);
168 * Added joystick port support (not tested);
169 * Added frameskip support;
171 Source only release. Tested on BeOS, Linux, FreeBSD and WIN32.
172 SOUND emulation was NOT done. Need help with this one :)
175 SDLEMU (Niels Wagenaar & Caz) - http://sdlemu.ngemu.com