-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use t2k.exe instead of PT.exe for running the game
- Loading branch information
Showing
5 changed files
with
278 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,272 @@ | ||
Jaguar Tempest 2000 Emulator | ||
|
||
(approximate) | ||
Minimum Requirements: 500MHz or greater (should work with throttle) | ||
Recommended Requirements: 1GHz or greater. | ||
For games other than Tempest 2000, the faster the better... | ||
|
||
DirectX 9 is required. Windows XP may or may not be required. | ||
|
||
Starscream 680x0 emulation library by Neill Corlett | ||
([email protected]) | ||
|
||
This software also makes use of the excellent LibPNG and Zlib, both | ||
available at Sourceforge. | ||
|
||
THIS EMULATOR IS PROVIDED WITH NO WARRANTY, INCLUDING IMPLIED WARRANTIES, | ||
ETC. IT IS A BETA PRODUCT THAT IS KNOWN NOT TO BE THOROUGHLY DEBUGGED, AND | ||
HAS PREVIOUSLY CONTAINED AT LEAST ONE BUG THAT CAN UNRECOVERABLY CRASH A | ||
SYSTEM. YOU USE IT ENTIRELY AT YOUR OWN RISK. | ||
|
||
|
||
Keys: | ||
---- | ||
|
||
F1 - Fullscreen toggle | ||
F3 - Enable Music device capture | ||
F4 - Show Music Input | ||
F6 - Load State | ||
F7 - Save State | ||
F11 - Throttle toggle | ||
F12 - Screenshot | ||
O - option | ||
P - pause | ||
Z/Ctrl - A | ||
X/ALT - B | ||
C/Space - C | ||
Arrow keys | ||
Numeric keypad (. is #) | ||
Q - three-fingered salute (used on the flashing CD with ?) to engage VLM | ||
Esc - Quit | ||
|
||
VLM: press Z (button A) twice to enter program mode, press O to engage | ||
user programmable mode, then the numeric pad or numbers: first press is | ||
bank, second press is effect in bank. | ||
|
||
Joypads are supported. | ||
|
||
Mouse-as-spinner mode is only loosely tested and probably not well | ||
calibrated. Pause hits both pause keys so can be used to enable spinner | ||
mode in game. Note that if spinner mode is enabled it is saved in the | ||
EEPROM. | ||
|
||
|
||
|
||
|
||
|
||
The game defaults to unthrottled operation, in which it assumes the blitter | ||
and GPU have infinite speed. This makes Tempest 2000 run at 60fps at all | ||
times. Throttling will take GPU and blitter into account and run more | ||
realistically as in the real hardware. This also reduces the load on the host | ||
CPU and will probably be required for processors under about 1GHz. | ||
|
||
MOST GAMES OTHER THAN T2K REQUIRE THROTTLED OPERATION | ||
|
||
The latest versions use native sound rather than emulating the DSP under Tempest | ||
2000. The cost of sound is well down under previous versions. Native sound can | ||
be forced off from the menu. With throttling this should enable T2K to run even on | ||
slow processors or in low CPU power states. It does not need to be manually disabled | ||
on games other than Tempest 2000. | ||
|
||
The emulator can yield unneeeded CPU time to the operating system. This may | ||
cause stuttering on CPU's with dynamic clocking if the CPU ends up bouncing | ||
between two power states. SpeedswitchXP is your friend. | ||
|
||
Smoothing toggles between point sampling and bilinear interpolation filtering | ||
of the upscale of the Jaguar screen. Select your preference accordingly for | ||
chunky pixels or Telly-O-Vision. | ||
|
||
EEPROM saves are placed in directory assigned in the options, which defaults to | ||
the All Users Application Data directory (in theory, although they have been | ||
sighted in the application directory, the rom directory, and frankly just about | ||
anywhere else it feels like it). | ||
|
||
In PAL mode (selected by adding -pal on the command line) you can see slightly | ||
more of the web, but the 50Hz refresh rate will not look as smooth. The game | ||
also feels very slightly different. | ||
|
||
If you have an older DX7 card then you may find that the emulator's screen size | ||
does not resize with the window; in this case you must use fullscreen mode. You | ||
may find it doesn't work at all, although I hope that is no longer the case. | ||
|
||
SAVE STATES ARE NOT COMPATIBLE BETWEEN VERSIONS. | ||
|
||
|
||
|
||
VLM Music | ||
--------- | ||
|
||
Old method - attach a WAV file. This has no level control. | ||
|
||
Preferred now: select 'Music input is output' from the settings menu, which will | ||
take the currently running sound output. If there is more than one sound capture | ||
device in the system it will offer you a choice. You may also need to double-click | ||
the speaker icon in the taskbar, select properties/recording and map the input to | ||
Wave or Stereo Mix (or similar using the sound card's own control). | ||
|
||
The level will need to be adjusted to make VLM's triggers work properly - VLM | ||
is at it's most fascinating when the levels are well balanced, and it's | ||
particularly important for music genres like rock which are rich across the | ||
entire audio spectrum. | ||
|
||
If you select 'Show music input' (F4) it will give a level graph, and the | ||
input level scaling can be adjusted with the up and down keys while it is | ||
displayed. Setting it so the peak red line tends to be around the blue guide | ||
and rarely dramatically exceeds it should give reasonable results. You can | ||
also use your music program's level control. This option works best on the | ||
"Waiting for CD" screen - once VLM itself is running results will be less | ||
consistent. | ||
|
||
Another good option is to use Bank 3 effect 3 (swirling squares) - if this | ||
is always very dark it's too quiet for VLM's internal triggers, while if it's | ||
always extremely bright then it's probably too loud. A nice balance should give | ||
excellent results. | ||
|
||
VLM will happily eat up every emulated cycle most PC's can generate, and so you | ||
may find either VLM or the music replay stuttering unless you have a very | ||
high-spec machine. If this happens, turning on Throttle and Yield will usually | ||
improve matters. | ||
|
||
|
||
|
||
Known / Suspected Bugs: | ||
---------------------- | ||
|
||
The game must be throttled to play the track bonus levels. Unless you like it tricky. | ||
|
||
Yield mode is also frequently slightly drunken music mode. | ||
|
||
EEPROM saving and loading has previously proved a bit less reliable than it should | ||
be, but this should be fixed with the specific setting of the eeprom save | ||
directory. | ||
|
||
Throttled mode cannot throttle the blitter slower than one blit per frame. | ||
|
||
Dialog boxes often do not appear if the game is in fullscreen mode. If you repeatedly | ||
close it with escape and reopen then it will usually appear after a few tries. Yes, | ||
D3D has a flag that fixes this. No, I can't get it to work. | ||
|
||
Switching out of fullscreen mode used to crash some nvidia systems with a Blue | ||
Screen Of Death (or the Windows XP equivalent of the Silent Reboot). It seems | ||
that 0.05 has fixed this but users should still be aware of the issue. | ||
|
||
The joystick button mapping isn't very clever. In particular, there is no keyboard | ||
command to escape from it. | ||
|
||
|
||
|
||
Kind of not bugs: | ||
---------------- | ||
|
||
Windowed mode suffers tearing artifacts due to the lack of sync with vertical | ||
retrace. Fullscreen should not have these, but may not be perfectly smooth if | ||
the fullscreen refresh rate is not 60Hz or in PAL mode. | ||
|
||
|
||
|
||
Version history | ||
--------------- | ||
|
||
0.06: (Core) | ||
Experimented with an alternate memory access method, which didn't help performance much | ||
Halved timeslice sizes | ||
Move CLUT to be a memory region rather than part of the chip | ||
Compute buffer size and pixel aspect ratio accurately in the OP, pass to window system | ||
Cleaned up CPU and RISC interrupt systems, added CPU stop object interrupt | ||
Rewrote Tom PIT to the correct spec (and fixed the stall bug I found in it too) | ||
Rewrote Jerry PIT to correct an awful inaccuracy. However, to get AvP sound right | ||
I had to add a hack to multiply the rate by 4. I don't understand why, I don't | ||
know where the bug is, and in particular I don't know if I should apply the same | ||
hack to the Tom PIT as well. | ||
Fixed a bug that was causing writes to the start of some memory regions to be misdirected | ||
Rewrote OP towards optional line-granularity | ||
Added option to disable DSP altogether | ||
Added all DSP wavetables, or at least guesses at same | ||
Hacked around a problem that was causing the 'superzapper recharge' sample not to appear in T2K. Also | ||
hacked the 'gappy sample' issue by slowing the music replay rate down 2% in the native | ||
sound routine | ||
GPU/Risc fixes: truly embarassing bug with sat8, equally rubbish bug with move pc, | ||
MMULT instruction, kick off small timeslice on all RISC starts to avoid race if the RISC | ||
sets a status flag which the 68k then checks, possibly the largest bug in the history | ||
of errors in RISC interrupts (which weren't saving flags), ADDQMOD instruction, | ||
PACKUNPACK instruction, PC register, hidata register | ||
OP bugfixes: don't infinite loop on zero vscale, abort if hit address zero, fully | ||
clipped objects off left side fix, some colour transparency, RGB16 conversion | ||
was incorrect, scaled objects needed signed height, 8-bit OP scaled objects, | ||
improved horizontal scaling accuracy, added RGB24 mode | ||
Blitter bugfixes: bit to pixel expansion bits were reversed bit order, 32bpp phrasemode | ||
blits were using wrong address mask, moved srcshade inside transparency check, fixed | ||
8-bit phrasemode blit alignment several times, added byte-to-phrase blits | ||
Blitter improvements: added blitter A1 inc sign, added blitter Y inc, added 8-bit | ||
srcshade, additive blits | ||
(Debugger) | ||
Track RISC history (some of these need compile switches) | ||
Append register name comments to disasm output | ||
Added help menu in debugger because I'm too stupid to remember my own commands | ||
Tidied up some registers | ||
Kill OP object option | ||
(Windows) | ||
Fixed fullscreen on certain widescreen machines | ||
Connected OP screen width hook | ||
Went up to W4 and fixed most of the additional warnings | ||
Reversed left and right sound channels | ||
Fixed the remaining bugs with fastcall and switched to it, for a small performance gain | ||
Added joystick button configuration | ||
(All) | ||
Clean up headers, clearly define core/window system interface | ||
0.05: (Core) | ||
Blitter speed optimisations | ||
RISC core speed optimisations | ||
OP speed optimisations (contributed by Gary Liddon) | ||
Screen capture support | ||
Defender 2000 compatibility fixes (some contributed by David Bateman) | ||
Native sound for T2K to avoid high DSP load | ||
(Windows) | ||
Rewrote keyboard system | ||
Rewrote D3D fullscreen switch - should have fixed fullscreen change crash | ||
Fixed D3D cards that support StretchRect but need no filter specified | ||
Options dialog box for configuring controls and directories | ||
Saves options into registry | ||
Avoid window shrink with repeated restart or fullscreen switch | ||
Made fullscreen mode select a wide ratio mode if desktop is in a widescreen mode | ||
0.04: Fixed no joystick support | ||
Added sound capture and level meter | ||
More internal work for porting | ||
0.03: Cleaned up fullscreen code a little | ||
Cleared all fullscreen backbuffers at init | ||
Added automatic resizing of window if too big for screen | ||
Fixed (in theory) mono and 8-bit WAV files | ||
Added joystick/joypad support | ||
Internal code cleaning in preparation for Mac/Linux ports | ||
0.02: Fixed bug with some video cards | ||
0.01: First release | ||
|
||
|
||
|
||
|
||
Rough compatibility list (only a few games tried): | ||
|
||
Seem Playable: | ||
|
||
Tempest 2000: The shaded web is not exactly matching up with the line web, and there | ||
are sometimes thin stripy lines on horizontal left-of-centre segments. | ||
|
||
VLM: bank 4 effects flicker with throttle enabled. | ||
|
||
Defender 2000: Classic and Plus have no screen, although it sounds like the game is | ||
running. 2000 mode mostly works but it looks like the 'assistant' ship is broken. | ||
|
||
Trevor McFur In The Crescent Galaxy: White objects shoot black, near-invisible | ||
bullets, which doesn't seem right. | ||
|
||
Sensible Soccer: Looks fine, although I'm not sure what's going on with save/load. | ||
|
||
|
||
Not playable: | ||
|
||
Alien vs Predator: Graphical glitches. Marine mode broken. Marines do not shoot at player. | ||
|
||
Doom: Panel is distorted. Game sticks as soon as you move. | ||
|
||
|
||
|