Version 1 65

download Version 1 65

If you can't read please download the document

Transcript of Version 1 65

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

05. August, 2002 Version 1.65

- Many users reported me wrong black areas in certain NTSC games. Thanx to Cobra95, by using his Spyro3 save state I was able to investigate and fix that issue.

- Lewpy suggested a small trick to prevent FF9 from crashing when framebuffer access is activated. I have followed his suggestions, but still I advise NOT to use the FA options with that game (it will not crash anymore, but glitches in battle will happen). Well, it's up to you :)

- I've removed the "FF9 mdec mask bit" special game fix, hopefully now all mdec polygons and mdec texts will be fine without. Thanks to Dimitri for reports and Yazoo for his save state.

- Since Lewpy did a very nice dynamic loading of the kernel funcs for disabling screensavers/power saving modes in the P.E.Op.S. soft gpu plugin, I couldn't find any more reasons against a 'disable screensavers' option (without Lewpy's piece of code such an option would have crashed with Win95/WinNT in the past). So, if you were tormented by suddenly starting screen savers while playing a psx game before, you can now easily disable them in the gpu configs.

- I've found a small bug in the D3D plugins with the "Unfiltered frame- buffer updates - faster mdecs" option. I don't know what games suffered by that bug, but I've decided to fix it nonetheless ;) Oh, btw, I did notice that this option does not (and never will) work right with emulating the psx mask bit. So, if you are seeing flickering displays, or missing stuff, try to turn that D3D option off (OpenGL will always be ok, though).

- Finally I was able to find out what was going wrong with the 'Monkey Hero' game (that one was really messed up with all of my gpu plugins), and yeah, I've fixed it. Will be interesting to see what other games will also run better because of the fix (and I hope that speed will not drop much because of it... at least on my system I didn't notice any slowdowns).

"Life is the future, not the past - it's the Wizard's Seventh Rule"- "The Pillars of Creation" by Terry Goodkind

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

10. July, 2002 Version 1.64

- While the last releases were mainly bug fixes and compatibility stuff, 1.64 has only one purpose: to improve the graphics (yeah, we all love that :))

- Ok, the first change takes care about some unwanted texture shaking that was happening in my hw/accel plugins. That doesn't mean that now all psx texture wobbling is magically gone, only some issues caused by the internal texture alignment has been improved. Thanx to Shadow Lady for the 'shaking Lara' save state :)

- And now for the real graphical boost (note: if you don't want to read (maybe boring) background informations, you can skip this part): I was long time no friend to special texture filtering ideas. I always did see big problems arise when the original psx texture data gets changed by filters, and it's already hard enuff to render the original unfiltered psx textures on hw/accel APIs without glitches. Anyway, last week there was a small ngemu forum discussion about filtering again, and to proove E}I{ wrong (who was telling that 2xSaI filtering on textures should work well), I downloaded the latest OpenGL plugin from NickK, to make some screenshots with that texture filtering method. NickK always is a pioneer when it comes to interesting new ideas (like his full screen smoothing or... tada... 2xSaI texture caching), but this time I wanted to use his plugin to show the various problems which will occur with pre-filtered textures (shame on me ;)) Anyway, I've tried all kind of games with his plugin and 2xSaI textures, and yeah, I did see glitches caused by the filtering, but strange enuff not the problems I have expected to see (only some texture alignment gaps and garbage, and big slowdowns, but not the expected texture distortions... good work, NickK, btw :). So of course I had to do two things: a) to apologize to E}I{ for prooving _me_ wrong (tststs, ehehe), and b) to drop a mail to Derek Liauw, the creator and copyright holder of the 2xSaI algorithm, asking him for permission to use his func in my (not GPLd yet) hw/accel plugins. And yeah, Derek happily allowed me to use the 2xSaI func (since he is enjoying epsxe and my plugins, too :)), and I have to admit it wasn't difficult to add to my source... I had to change it somewhat to handle my texture color depths and alpha values, and to avoid problems at the texture area borders, but that was all...

- So, a new option in the gpu config is available, called "Hi-Res textures (2xSaI)". You can activate it with all available texture color modes, and of course you can even combine it with filtering, smoothing, whatever. The option will improve the textures in many games, making small fonts more readable, and most textures will look sharper. It even will help the standard bilinear filtering, less 'blocky' look that way and not much black borders. On the other hand some rendering techniques (like multi-layered 2D backgrounds) will cause glitches (thin lines appear, for example, or small gaps between textures), and that is nothing I can fix! So mailing me issues with FF7/8/9 or games using a similar rendering style is useless and will get ignored (well, maybe I will flame a few mailers, depends on my mood :))... and if you don't believe me, feel free to code your own psx gpu plugin and add 2xSaI textures... good luck :)

And also be aware of the following: a) your gfx card has to be able to handle 512x512 textures. Otherwise you will get no textures at all. So, for example, no Hi-Res textures on V2/V3 cards and prolly some other older brands as well. b) Hi-Res 2xSaI textures need 4 times as much vram as the 'normal' textures. That means for example that your 32 MB gfx card can handle the same amount of 'hires' textures as an 8 (!!!) MB gfx card with 'normal' textures. And that's not very much, and prolly will cause slowdowns... users with 64 and 128 MB cards will not encounter much speed problems, though... runs great on my 64 MB GF3 with most games :) Finally some tips for using my Hi-Res texture option, if you are having speed problems: - use a lower display resolution, for example 640x480 in 16 bit color depth - use a lower texture quality mode, for example 4-4-4-4 or 5-5-5-1 textures - turn off the 'mask bit' emulation option, that saves some vram as well - don't use the 'screen smoothing' option, and absolutely turn off FSAA in your display properties. - I have seen strange autodetected vram size values in the DX6 plugin with my nVidia GF3 card (I am absolutely sure that I don't have over 80 MB vram, ehe). The exactly same func reports the correct size in the DX7 plugin, though. So maybe a generic advise is to set the 'vram size' value manually to the correct value in all plugins, just to be sure. On the other hand, maybe it will help if you set the 'vram size' option manually to an higher value (for example to '64 MB' even if your card only has 32 MB). Will depend on the game, your hardware and the phase of the moon, though ;)

Have fun!

- btw, I've decided to keep the D3D-DX6 plugin alive. The 1.63 DX7 changes did help a lotta cards (thanx to all users reporting their results), so the DX6 plugin isn't that necessary anymore, but I've nearly forgotten the poor WinNT 4 users, who can't use anything above DX6... thanx to DarkWatcher for reminding me :)

- Ah, and a final note: I've added an extra FAQ file with this release, covering many standard questions. Check it out if you are having problems.

"Du musst glauben, du musst wagen, denn die Goetter leih'n kein Pfand..."ah, bah, enuff text for this release, listen yourself: http://www.dhalia.de/musik/sounds/daten/sehnsucht_dhalia.mp3

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

23. June, 2002 Version 1.63

- The nicest change in 1.63 (imho): no more "short dmachain" game fix, no more "Ignore dmachain 0" game fix... the handling of bad dmachains is now done automatically without much speed loss. That means you can now play Tekken3, Tekken2, Syphoon Filter, Ghosts'n Goblins, Persona2, MetalSX and prolly some more games without any special options. Ehe, I really like that :)

- Another internal change: correct support for write vram wrappings. I've noticed missing textures in a soccer game (can't remember its name, but the players looked funny without heads), that one at least is fixed. - And some more internal adjustments: I've was able to reduce the garbage frames which can happen after/before a 24 bit mdec is displayed. You can see that with FF9, for example.

- Also some flickering issues (for example in FF7 after a battle, or in some Wild Arms1, BOF4 and Silent Hill splash screens) are corrected. The same code will also help drivers which are doing page flipping in fullscreen mode.

- Some additional splash screens/menus will get displayed with the highest Offscreen Drawing setting. Still I suggest to use the highest setting only if you are missing some gfx screens. Never use it with FF8/FF9 :)

- NTSC games can have a border at the top/the bottom of the display. No, 1.63 can't remove that borders (as a matter of fact the borders are right and needed), but 1.63 will now display the borders most times correctly with a black color instead of a fancy color. Thanx to Gary for some save states :)

- A new mode for the framebuffer texture option, called "gfx card buffer & software". Framebuffer textures are needed to get some special effects (swirls, motion blur) right, and they are harder to emulate in hw/accel gpu plugins. The new mode (which is working like in Lewpy's Glide plugin) will help users with slower gfx cards, still a lotta cpu power will be needed. For example the pure "gfx card buffer" hardware mode is much faster on my GF3 compared to the new mode, but on other systems the results may vary... try it yourself, and use the option which makes you happy. Compatibility note: sometimes the new "gfx card + soft" mode will display certain effects more correctly (for example blurring in ChronoCross, or the "enter battle" effects in Legend of Dragoons).

- I've removed the the "framebuffer read" and "framebuffer read on move" special game fixes, and combined them together with the old "Full vram primitives" option into a new main option called "Framebuffer access". That way you can control framebuffer effects more easily in the gpu in-game menu. Otherwise the new option works exactly like the old game fixes, use the framebuffer access only if it's needed (Xenogears, for example), and turn it off if it causes problems (FF9 will crash, for example)

- By removing the "framebuffer reads" and "dma chain" special game fixes I've now some free slots for new fixes, ehehe. I decided to add two fixes in that release: one for FF9 polygon mdecs (it seems that the 1.62 mask bit handling can cause slight problems, so you can now turn the special handling on/off with the new game fix), and the other game fix is only for the bad polygons in ChronoCross Fort Dragonia (thanx to Nave for a save state).

- Last but not least I've changed my texture handling in the DX7 D3D plugin. It should now work fine with cards which needed the DX6 plugin in the past. So please: if you used the DX6 plugin, try the new DX7 one, and mail me if it works correctly on your system. If I don't get negative feedback for a month or so, I will stop the DX6 plugin, since it isn't needed anymore :)

"The maidens of beauty and swains so forlorn that carelessly wander away from their home I am off by the moonlight and break of the morning I'll be found in the mountains of Dark Iniseoghain"- "Dark Iniseoghain" by Dhalia/traditional

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

29. May, 2002 Version 1.62

- Most fixes and improvements in this version were only possible because of nice feedback and save states from active psx emu lovers. Thanx to all of you :)

- Black areas in Bloody Roar 2 are fixed (well, that means you don't have to turn off Offscreen Drawing anymore to play that game).

- The radar in Ace Combat 3 is now visible. You will need the 'mask bit' option for it, though.

- In the Chrono Cross battle menu the small dots will blink again (I screwed that somewhen in version 1.5x). Since the dots are very small I'd never noticed the bug :)

- A new special game fix called "Ignore DMAchain '0'". The dmachain address checks I've introduced in 1.60 worked well with all of my games, but I got a big feedback from "Persona2" lovers (sadly I don't have that game), because it stopped to work with the new funcs. So V1.62 is doing the same checks as the versions before V1.60 (that means that Persona 2 will work without any special option), but if you want to get the "Ranma 1/2" menu screen right, you have to enable the new game fix.

- When I played (and finished) FF9 with ePSXe one year ago, I noticed that polygons which were drawn on top of mdecs looked upsidedown. I always thought that it's prolly a main emu bug (sending the polys in the wrong order to the gpu), but now I've investigated the issue more closely, and actually found a solution for it. Everything should look fine in V1.62, you simply have to enable the 'mask bit' option to correct the problem.

- I've improved my Offscreen Drawing detections, many annoying flickering effects (like in Rebel Assault 2, DW7, Jumping Flash) are fixed by it (and I hope that speed isn't going down much).

- Speaking of Jumping Flash: that game was always really slow in my plugins since it uses a (imho) stupid offscreen rendering technique with lotsa repeated textures (aka texture windows). V1.62 is now using my newest soft plugin functions (the same I've added to the P.E.Op.S. soft plugin V1.6), giving a nice speed up in that game :)

- Last but not least: some new eye candy (if you like special screen filtering effectst). "grahf" from the ngemu message boards suggested to try a new filtering mode,and first I didn't like the idea (because I usually see new problems arise with any filtering). But after I've looked what the suggested "Monitor dot matrix" mode is exactly doing (the Kawaks emu is offering such a mode, for example), I didn't find it very hard to add it to my existing scanline functions. So now you can enable it by turning on scanlines and setting the scanline blending to "-1". The best results you will get with 2D games, I think, but of course it's just a matter of taste :) Btw, I've checked the filter only with my GF3 card, hopefully other cards will not screw the texel alignment (otherwise the filter will look kinda distorted).

"Where do we go from here There must be something near Changing you, changing me forever"- "Never Satisfied" by Judas Priest

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

28. April, 2002 Version 1.61

- I didn't had a lot of time for emu coding in the last weeks, so V1.61 has just a few changes... nevertheless I think the new code is worth an update, so try it and give me some feedback. Speaking about feedback: _don't_ try to send me emails with attachments... I will not even see them. The latest email worms were very annoying, so I use a filter right now, deleting every mail with attached files. If you want to give me save states, pictures or whatever, please send me a pure text mail first, asking if I need the files, and I will reply how to proceed.

- The first change is the least important, imho, added on request of some users: while the gpus are running they will prevent the activation of screen savers. Seems to be needed when you are using USB pads and an activated screen saver, since the pad actions will not count as user input, and therefore the saver will kick in after a while. I am using a different approach as syo's code in the P.E.Op.S. soft gpu, we will see how it will work (I've checked it on my Win98 and WinXP systems, and it's ok here).

- Re-coded some of my C texture caching funcs in pure asm. That will squeeze out a few more frames per second, at least in games using lotsa textures. Mmm... funny... I needed most of the time for this new functions, but now I dunno what else to write about it :)

- The nicest feature in 1.61: I was able to remove the "Adjust extreme coords" special game fix, replacing it with a much better detection of weird running wild polygons (btw, big thanx to calb). The new detection is enabled by default, you can turn it off by activating the "Disable coord check" game fix if you are having troubles (missing polygons, for example). But I checked a lot of games, and the results were very good: no more big poly glitches in Metal Gear Solid, Deathtrap Dungeon, Colony Wars, Timecrisis, Rally Championship, Fighting Force 2, Lucky Luke, to name a few... Well, there are still a few games with problems (like the big polys in one level of Chrono Cross), but there has to be some work left for the next versions, eh? :)

"Spark in the nothingness Heat of creation Make the ice start to melt Life wake up in the void."- "Ginnungagap" by Therion

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

31. March, 2002 Version 1.60

- Yeah, the easter release :) It contains mainly small fixes, correcting all kind of gfx glitches with certain games (luckily no new config options were needed for the fixes) and speed will also be more or less the same. A small config bug in the ogl plugin has been repaired (a wrong text did show up when pushing the 'nice'/'fast' button in the gpu config), and this time the linux archive _really_ contains the right plugin version, thanx to everybody reporting that issues. Ok, let us have a look at the fixed glitches:

- Support for "textured lines" (that means 1 psx-pixel wide textured triangles). "Doom" will now look perfectly, and the water effect in one stage of "Sould Edge" is now fine as well. Thanx to Lewpy for infos and calb for the save states :) - Improved dmachain checking. That will make the start menu of "Ranma 1/2 Battle Renaissance" visible (thanx to tatunoko for the save state), but I've noticed that now Tekken2 will need the "short dma chain" special game fix (otherwise you will have to wait a long time until the game starts up). Ah, and no, Tekken2 is not playable right now (streched polys), but that's a confirmed main emu bug, the gpu plugin can't repair it.

- Interesting internal adjust of Texture Window coords. That's needed for some "Tales of Destiny 2" graphics, thanx to E}I{ for very helpful infos and save states :)

- Improved sprite texture coord wrapping. That will fix garbage glitches with "Tales of Destiny 2" as well, and the clouds in a special level of "Wild Arms" are now fine, too.

- Faster sign checks, that will prolly not give a noticable speed up in my hw/accel gpus, but it's looking nicer in my source code, ehe :) Thanx again to E}I{ for suggestions.

- The "moon" symbol in "Devilsummoner Soul Hackers" (wow... what a name...) is now displayed correctly, thanx to gunshinn for a save state :)

"It's just the same as imaginary snow in summertime - Never able to make winter come."- "Isn't it?" by Wild Silk

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

23. March, 2002 Version 1.59

- First of all: the FF7 battle swirls are now working (they should have been working in 1.58 already, but a last minute fix disabled them). You have to enable the FF7 special text border fix, use the highest Offscreen Drawing setting, enable the "gfx card" frame buffer textures and the "Framebuffer read on move" game fix is also needed (oh my). The performance of the effects will (as always) depend how good your card is supporting framebuffer accessing. But it's fine on my GF3 ;)

- The Lunar1 special game fix is now available in the hw/accel. plugins as well. That will repair the black screens when entering a house or a menu in the same way as in the P.E.Op.S. soft plugin. Ah, and talking about special game fixes: I've decided to combine the nVidia FSAA fix with the ATI subtract blending fix in the OGL plugin. Since both issues are bugs in the drivers, (hopefully) fixed somewhen with one of the next driver releases, I didn't want to waste too much of my (up to 32) possible game fixes ;)

- A few games were showing wrong MDEC colors due to some lines of code I've included for doing screen centering. None of my games had shown that glitch, so I can't be 100% sure that this issue is completely fixed, but there is hope ;)

- A new texture option, called "Faster palettized texture windows". Well, texture windows (mostly used in psx games for text box background gfx, or in some racing games) are having a separate cache in my hw/accel. plugins, and that one is working fine for most games... I have seen only one game (Ghost In A Shell) which is stressing the cache so much that the game crawled at 40-50 fps on my system (quite unusual). The only solution I've found for that game was using pal textures, causing a fine speedup (2 - 3 times faster). So, if your card can handle pal textures (like GeForce cards with newer drivers), you can safely enable the new option, otherwise (TNT cards for example) you cannot use it at all (a filled Smiley sign in my gpu menu will show you if the option is working).

- Biggest change: improved "texture garbage collection" option. When I introduced that option in 1.58, I just did an easy approach to reorder the internally used texture space, to check out if the function is working okay. Well, the new version does a much more complicated job to optimize the texture usage, we will see how that code will work on less powerful cpus/gfx cards (it's very fine on my Athlon 1.2/GF3 system). Still: the cleanup will only kick in, if it is really needed, most games will not activate it anyway. Games needing the garbage collection _may_ stall the game for a short time (while doing all the texture optimizations), depending on your system's power. "Schume nur mein wildes Herz, in des Zornes Wehen Bin aus leichtem Stoff gemacht, muss wie Luft vergehen Ohne Schiffer treibt mein Kahn, auf des Meeres Spiegel Niemals fesselt mich ein Band, riegelt mich ein Riegel Suchte meinesgleichen, fand nur Snder ohne Zgel"- "Lebensbeichte" by In Extremo --------------------------------------------------------------------------

16. February, 2002 Version 1.58

- Damn, since the release of 1.57 I couldn't stop gpu coding... so it took only two weeks for a new release this time. Well, enjoy :)

- To help gfx cards with slow texture uploading speed and/or a very limited vram size, I've coded additional functions which will optimize the texture usage even more. Of course that will mean a little bit more work for the cpu, but hey, somebody has to do the job... Ok, so, if you have encountered irritating slowdowns in your game (caused by the gpu, NOT by cdrom accessing ;), you should give the new "Smart texture garbage collection" option a try... even my GF3 does like it in some games (well... it doesn't matter much for me if a game runs with 100 or with 300 fps, but if it does help my system, it should help slower ones even more). Oh, and one more hint about the texture caching: some users reported a big speed up by selecting "64" Mbytes vram on their 8 MB cards...

- Hurray, hurray... one "special game fix" has been removed: The "no sprite transparency" one for the Oddworld games. Those formerly "special fixed" glitches are now confirmed main emu bugs, so the option will be useless with the next epsxe release anyway. And since that fix did cost a lotta additional testing in the soft funcs, I've decided to remove it as soon as possible... and that's now :)

- Hurray, hurrraaarrrggg: Oddworld fix is gone, and a new fix has taken its place instead (in the OGL plugin). nVidia is well-known for their good and fast OGL ICDs, but there is a stupid bug (at least) in the W9X 23.51 drivers: if you are using FSAA with OGL, the driver will reset the alpha testing state each frame, causing black areas and other glitches in my OGL plugin. Well, the 21.xx WinXP driver is doing FSAA fine, as far as I could see, but if you want to use FSAA in W9x you should enable the new special game fix... or pray to nVidia to release drivers without that bug.

- Improved psx vram moves, that will fix glitches with a few special effects in FF9 and BOF4 (seen in certain magic effects during battles). Mmm... and most times "full vram prims" and/or a certain framebuffer setting is needed to get such effects right.

- Wrapped sprites will work perfectly again (they were broken in 1.57), so the glitches in (for example) Tales of Destiny 2 are gone (thanx to expert464 for the save state).

- Oh my... some optimization I've done in version 1.20 (or so) of the OGL plugin caused missing tires in "Driver", screwed hair in "Blaze&Blade" and prolly it was responsible for some more screwed textured polys. That issue is fixed as well. - Improved the Offscreen-Drawing detections. Much cleaner now, and as far as I remember the FF8 "distant hill flickering" will be fixed by that... mmm... and the FF7 swirls should be visible with hw/accel. FB textures, using the highest OD settings.

- And finally: screen smoothing. This new option will blur the whole screen, so especially 2D games will look less pixelated. It will need a good gfx card, though (something in the Geforce class should do the job), and the higher the used resolution, the bigger the slowdown with screen smoothing. Activated smoothing will cost around 1.5 - 3 MByte vram (no big issue with my 64 MB GF3, ehehe), and your gfx card must be able to use textures bigger than 256x256 pixels (well, that means for example no smoothing with 3dfx V2/V3 cards). Anyway, if the option does work fast enuff on your system, and you like the smoothed look, use it... if I did everything right, there will be no emulation compatibility issues at all. Oh, a small hint: of course you can combine the old texture filtering with the new screen smoothing, the results are really nice most times. Oh, and another remark: yes, motion blur would be also possible. But, no, I will not include it in my gpu plugins. I will leave that effect to NickK's NextGL/Next3D plugins, his gpus are getting better and better with every release, so go and check them out :)

"Those are the pictures of what was of what is of what is to come

We are the people the rolling people the why people the waiting people the wanting people..."- "Altamont" by Aphrodite's Child

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

04. February, 2002 Version 1.57

- Let's start with the biggest change: I did a big cleanup in my texture caching code. Now you can't select between different caching modes anymore, the plugin will work with a slightly optimized "dynamic" caching method.

Still there is an option in the gpu plugin config window, which is controlling the behaviour of texture caching: "Gfx card vram size [MBytes]". Here you can select "Autodetection", which will work without problems on nVidia cards, or enter the size of your gfx card's ram manually (needed for example on 3dfx cards in OpenGL mode, but prolly it's safer with other vendors as well).

A wrong big value can cause heavy vram system memory swapping, you will notice that when the game speed is slowing down without a reason, and a much too small value can cause an heavier cpu usage and constant texture uploading, so it's up to you... :)

Well, some examples:

- with D3D, all cards should be reporting the correct vram size, so you can set it to "Auto" as long as you don't want to make some experiments ;) - with OGL, nVidia cards will report the correct vram size as well (at least they did the last time I've checked it =), so you can use "Auto", too - Other vendors may need some tweaking in OGL: Gfx cards with 64 MByte (or more) will always be fine, you can set the vram size to "64", enable FSAA or whatever, and be happy. With gfx cards less than 64 MBytes you should be more careful, try first to enter your real gfx card vram size (for example 16), and if you notice slowdowns you can try to lower the size (15, 14, 13...) to get better speed. Ah yes, and if you have an onboard gfx card you can try to set a much bigger value to get the best speed.

- OK, so the different caching modes are gone... no need to get sad, though. With just one mode left, I was able to improve my texture alignment further: now FSAA will work better, and some of the filtered textures will not look as blocky as before (yes, there are tile edges in the filtered modes, yes, I know, no, I can't do nothing about it, sorry). Still some adjustments have to be done with textured windows, ah, but that's for another day and release.

- Improved some dma chain checking, now certain games which were showing black screens before will be running without problems (for example The Mummy or T'ai Fu).

- Changed (again) my MMX palette code, finally it seems to be working without any problems. For example the battle menus in FF4 are ok, maybe even the red/yellow cards in Winning11 will be visible again? We will see :)

- A new special game fix has been done as well, this time it's a goodie for all Capcom 2D fighter fans: you can enlarge the screen area at the right side of the display, and see all the background gfx without any cut-off (well, glitches can happen, too, you are warned :)

- And some more small changes :)

"I've been searching everywhere Looking for the final freedom Where there are no boundaries When you never need a reason Well, it has been taking me some time 'Till I've got it what I've tried to find"- "Welcome to the other side" by RAGE

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

06. January, 2002 Version 1.56b

- OGL/D3D plugins: the fullscreen/window toggle blending fix screwed sometimes the transparency mode on startup. Therefore version 1.56b fixes the fix :)

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

05. January, 2002 Version 1.56

- OGL/D3D plugins: New special game fix: "Adjust extreme coords". It's the same fix I've included in the P.E.Op.S. soft gpu 1.3, it helps a few games showing weird polygons running wild across the screen. So, try to enable it if a game is having polygon troubles, but don't use it as default setting (because games which doesn't need that option might get screwed). And, no, it doesn't fix Tekken 2.

- OGL/D3D plugins: I've also included all new soft funcs (for Offscreen Drawing) which I've changed in the P.E.Op.S. soft gpu 1.3. Not a big deal, though. - OGL/D3D plugins: my texture caching on 15 bit psx textures had a small bug, it wasn't caching the transparency bit. Thanx to Matesic Darko for telling me about the problem.

- OGL/D3D plugins: smashed a sprite Offscreen Drawing bug which has been crept in with version 1.54. The Medievil 1 gravestone menu is now fine again.

- OGL/D3D plugins: repaired a small texture window sprite overlapping issue. The Guardian's Crusade in-game menu is correct now.

- OGL/D3D plugins: improved my MMX color lookup table code. Some color rotation effects (Vagrant Stories, Blaze&Blade water) are finally working perfectly.

- OGL/D3D plugins: sometimes blending was screwed after toggling between window and fullscreen mode. Thanx to JNS for kicking my ass until I've fixed that ;)

"On the day of the night things were always well But on the night of the light all night things fell"- "Mystical End" by Iced Earth

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

02. December, 2001 Version 1.55

- The SOFT gpu has gone Open Source and is not part of the archive anymore. You can find newer versions of the soft gpu (renamed to P.E.Op.S soft gpu) at: http://sourceforge.net/projects/peops

- OGL plugin: the "Framebuffer read" and "Framebuffer read on move" special game fixes were giving a yellowish display some times. That's fixed. Still my old advise: activate the FB options only if you really need them, some games (FF9 for example) will not work if the options are turned on.

- OGL/D3D plugins: repaired a small scissoring issue and coded a new special game fix... this time it's an option called "Lazy upload detection", and it can be used with Dragon Warrior 7, to repair the flickering effects with text boxes in that game. It's not a 100% fix, since the text boxes will not get semi-transparent if the fix is enabled, and the bkg graphics will not be animated anymore, but at least the flickering is gone... well, you can also turn off the fix and turn on "Full vram primitives", if you have a powerfull cpu, that will emulate the text boxes more accurate, but the bkg gfx will get ugly low-res... well, it's up to you :) I only had a save state, not the full game, so I can't tell you if there are more issues with DW7... but if the rest of the game is coded like the text boxes (using a third display buffer for uploads, bah), I am sure there will be more problems ;) Oh, and the text boxes are using the psx mask bit as well (sure... simple pseudo triple-buffering would be too easy ;) So if you don't see any text boxes at all, try to turn off the "mask bit" gpu option... that will help gfx cards which don't like my mask bit emulation.

- OGL/D3D plugins: tadaaaa... two additional filtering modes... most of you will know the problem with filtering pre-rendered background graphics (the gfx will have a tiled look if filtering is enabled). Well, my advise in the past: use "filtering without sprites", since most games are using sprites for the bkg scenes, and personally I think it's better to have a pixelated display than staring at annoying box edges. My new advise: use "filtering with smoothed sprites" :) Sprite smoothing will work fine with many games (yes, yes, including FF9), and I hope it will not cost too much speed on an average system. Of course it will not help games which aren't using sprites at all (for example Wild Arms), and it will produce glitches with other games (like Legend of Dragoons or FF7). Still it's a good choice for many sprite-based games and rpgs.

"Since we've reached the point of no return We pray for starlight, we wait for the moon The sky is empty Alone in the unknown We're getting nowhere"- "And then there was silence" by Blind Guardian

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

04. November, 2001 Version 1.54

- All plugins: finally I have added psx polyline support to the "WriteData" interface funcs. Polylines were only supported in dma chains before, and, to be honest, I haven't seen any game using them outside of dma chains. Well, Matesic Darko's great GPU Test Windows application is using polylines without dma chains, so I have used that one to check if all is working fine. Btw, you can get the GPU Test app at: http://mrdario.tripod.com in the "Tools" section. - OGL/D3D plugins: Xenogears... yup... well, that game is using a hard to emulate framebuffer texture/framebuffer move combination in cutscenes and transition screens, which only could emulated properly by using "Full Vram primitives" in my hw/accel. plugins before. FVP tends to need a lot of cpu power, so I've looked if I could do an option to let the gfx card do most of the work... and there it is: a new special game fix called "framebuffer read on move". Unfortunately reading the gfx card framebuffer is also slow with most nowadays gfx cards, so I dunno how it will perform on average systems. Speed is fine on my GF3 in OGL, and kinda slow in D3D. So, my advise: use the new option only in Xenogears, or if you want to try to remove similar glitches in other games. Btw, XG needs the new FBOM option with activated "gfx card" framebuffer textures and don't use the highest Offscreen drawing setting! Oh, and I removed the special game fix for Tomb Raider 3... that one only was needed in the old PSEmu Pro emu to repair some of the GTE bugs, but since all newer emus can play the game without the fix, I don't think that it is needed anymore.

- All plugins: the biggest change in 1.54: all software drawing funcs have been redone (lotta work), and the new soft gpu is now up to 20% faster than before. Therefore also the Offscreen drawing and FVP options of the hw/accel. gpus have gained more speed. Another nice thing with the new soft funcs: g-shaded quads are now rendered in the real psx way, check out the quad polygon in the first Sony BIOS screen (hi Galtor :) On the other hand there is a very small chance that little g-shaded textured quads get slightly distorted... during my tests I didn't notice anything bad, but if you encounter some new glitches, drop me a mail.

- OGL plugin: while adding the new soft funcs in the OGL plugin, I've noticed that the D3D plugins had a bigger security psx vram area, preventing nasty crashs. OK, now the OGL one has it, too.

- Announcement: 1.54 was the last release of "Pete's Soft GPU"! Why? Well, I have done all I wanted to do with the soft gpu plugin, and I think the time is right to go Open Source :)

So, in a few days the Windows & Linux sources of the soft gpu plugin will be released, but what does that mean exactly to the users of the soft plugin?

1.) the name of the plugin will change... not a big deal, I think, but I don't want to label a plugin with "Pete's whatever" when (hopefully) a lotta more people beside me are working on it. 2.) improvements in games I don't own myself... I can't investigate some issues if I don't have the game, but now the chances will be higher that another coder is able to fix the problem. 3.) more features I never cared about... maybe a smarter frame skipping? or a native FPSE interface? some special gfx modes? Dunno :) 4.) the plugin will not get bundled in my "gpupete" archive anymore. We will have to wait and see how often a new release of the OS soft gpu is happening...

And what does it mean to the psx emu/gpu plugin coders out there? There will be much informations in the source, for example the proper usage of the gpu interface, fps handling and, of course, the soft drawing funcs themselves. OK, so:

1.) the license will be GPL 2.) still I don't want to force any freeware coder to go Open Source himself, if he is using parts of the soft gpu source in his work. So, I will allow the usage of the soft gpu funcs in closed source projects, too, if a) the project is freeware b) credits are given c) any improvements in the open source funcs are reported back to the Open Source project.

I hope that way everybody will be happy :) And if the OS way is working well, chances are high that my hw/accel. plugins will go Open Source, too :)

"Pissing in a river, watching it rise Tattoo fingers shy away from me Voices voices mesmerize Voices voices beckoning sea Come come come come back come back Come back come back come back ... Should I pursue a path so twisted ? Should I crawl defeated and gifted ? Should I go the length of a river, (The royal, the throne, the cry me a river) What about it, what about it, what about it ? Oh, I'm pissing in a river."- "Pissing in a river" by Patti Smith

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

07. October, 2001 Version 1.53

- All plugins: the 1.52 fps limitation bug fix for special chipsets seems to work fine (thanx to all users reporting it), so I've added the fix also to the displayed fps rate, and to the 'Use PC fps calculation' option.

- All plugins: added a "copy settings to clipboard" button to the gpu config dialogs. A simple mouse click will now transfer your current gpu settings to the clipboard, you can paste them into bug reporting mails or forum messages. Unlike Lewpy's similar func I don't include your cpu speed, OS, etc... only the pure settings and the name of your gfx card.

- OGL/D3D plugins: again small adjustments in the screen upload detection, for example the GT1 main menu will be fine now, the Soul Reaver (demo) menu will get displayed and the Aeronauts (demo) language selection is shown. As always the advise: if you are missing some menus or screens, play with the Offscreen Drawing settings. If there is garbage in the screen border areas, play with the Offscreen Drawing settings. If you are feeling bored, play with the Offscreen Drawing settings ;) - All plugins: fixed a small scissor problem which could happen on very rare occasitions (if the game was using strange screen centering values). The text boxes in Star Ocean 2 will now pop up fine with the D3D/OGL plugins.

- All plugins: I've improved all triangle soft drawing funcs, you will get a small speed increase with the Soft gpu in games using lotsa triangles. Since the hw/accel. gpus are using the same funcs for offscreen drawing and full vram primitives, a small speed increase can happen with them, too. Thanx to Lewpy for suggestions :)

- OGL/D3D plugins: if you are using the "gfx card buffer" frame buffer textures option, you prolly will have noticed shaking screens effects in some games (for example sometimes in ChonoCross battle screens, in Alundra2 underwater levels/cutscenes, in Megaman Legend 2 water/desert stages, in some AITD4 effects... yawn). Well, what to say? It's fixed :)

"And what have started long ago Is heading towards the end There's no easy way out

There's blood on my hands But I am sure in the end I will prove I was right

Runes of a long forgotten time Ancient spells in endless rhymes Soon the other world appears

Roam to the ghostly river Rhine Leave the misty shades behind I can feel I'm getting near"- "Blood On My Hands" by Demons & Wizards

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

26. August, 2001 Version 1.52

- All plugins: I've added some code to list all available desktop resolutions of your gfx card. That way you have a bigger choice for the gpu fullscreen modes (and I don't have to add more and more resolutions in every gpu release ;)

- OGL plugin: changed the "InitFullScreen"func. I hope it will now work better with certain cards, and with the W2K OS. Please note: toggling between the window/fullscreen mode (ALT+ENTER) is still unstable, if your desktop color depth is not the same as the desired fullscreen mode.

- All plugins: Lewpy told me about a bug with high performance counters. Our plugins are using such counters to calculate the framerate and to do the fps limitation. The bug will show up only on certain chipsets under heavy PCI bus load, and it can cause weird speed behaviour with our gpu plugins. I've tried to make a workaround for that issue, let us see if it helps (no problems on my system, so it's hard to check by myself...). If you want to know what MS is saying about that bug, or check out if your chipset is known as buggy, look at: http://support.microsoft.com/support/kb/articles/Q274/3/23.ASP?LN=EN-US&SD=g

- All plugins: my new system (Athlon 1.2C, GF3) is very fast... that's fine, of course, but it also brought me some troubles: usually I play psx games at the 'auto-detected' speed (50 or 60 fps), and if some (boring) scene happens, or if I have to do some (uneventfull) walks in the game, I just turn off the fps limitation in the gpu menu. On my old system (P3-550, GF1) speed usually doubled, so I had a kind of 'fast forward' function, until I enabled the fps limit again. Well, on my new system the 'fast forward' tends to be a 'hyperspeed forward', making walking around nearly impossible... so I've now enhanced the old "limit on/off" switch in the gpu menu into "limit off", "limit manual setting" and "limit autodetect". that way I can toggle between "auto" and "manual" (I set the manual value to 120 fps), and now I am happy again ;)

- All plugins: if you are running a game at a "manual" limited framerate, you can change the manual value in the game using the gpu menu: set the menu arrow to the FL option, and press SHIFT + HOME or SHIFT + END. On each keypress the manual value will in/decrease by 1 FPS, so you can try to adjust the manual value within the game to a framerate which suits you.

- SOFT plugin: oh no... a glitch! In my 'oh-so-compatible' soft plugin! While checking out a few game demos I've noticed a wild shaking screen in the Pandemonium2 demo. After a little debugging I've pinpointed the problem to wrongly called psx vsync signals from ePSXe. So I've double-checked the demo with FPSE, and to my surprise the vsync calls were even worse (in ePSXe the vsync comes at a wrong time with that game, in FPSE the vsync comes at a wrong time AND far too often...) Ah, well, to get around the bug I made a 'special game fix' for P2. It's called "Lazy screen updates", and if you want you can try the option also with other games, they may become faster if it is activated. Of course it can also cause unwanted side-effects (missing parts of the screen, for example), so use it with care. Btw, in the hw/accel. gpus Pandemonium2 needs also an (already available) option, the "Swap front/back detection" special game fix. Btw, part 2: the psx vsync is very important to get the 'right' FPS limitation, so don't be surprised if some games are running at a wrong speed in FPSE... the only way to get around that problem (beside a fix in the main emu core, of course) is to set a manual FPS limit until the game 'feels' right (the new in-game "manual FPS limit adjust" as described above can help you with that).

- OGL plugin: and another special game fix... pfff... well, it's not really a game fix, it's more a 'bad OpenGL ICD' fix... in version 1.51 I've introduced a perfect "subtractive blending" mode, if the gfx card driver is reporting it can do it. Well, I should have guessed that some vendors will report they can do the feature, but in reality they just screw it (did I say S2000? no, I didn't ;) You can now force the gpu plugin to ignore the OGL extension for subtractive blending by the new game fix. - OGL plugin: "keep psx aspect ratio" option. In version 1.50 I did that option for the soft plugin, now it is available in the OGL plugin as well... it does a 'ratio correct' stretch in x/y, causing lotsa screen borders, of course. Use it, if you like it, or turn it off (like I do ;) I am not sure if I should code that option in the D3D gpus as well (it's really lot of work).

- OGL/D3D plugins: in december 2000 (version 1.42) I made the black scanlines option, promising that all requests for 25% or 50% scanlines will get ignored :) While looking for new ways to improve the image quality, I stumbled again over the scanline func, and played a bit with it... the result: you can now set the scanline brightness in a range between 0 and 255. 0 is like it worked before (black scanlines, dark display), higher values will make the scanlines brighter (blended over the image, not just simple lines in one color)... I suggest to try a value of 200 to get a nice smoothed display, of course it also depends of the used resolution and your personal taste :)

- OGL/D3D plugins: some small changes in compatibility: when you play FF7, using the special game fix for the text box borders, the battle hand cursor will also be fine now. Also I've tried to remove some screen garbage which showed up occasionally in some games (usually between splash screens), if your OD mode is 3 (enhanced) or smaller.

"It's not the end Not the kingdom come It is the journey that matters, the distant wanderer Call of the wild In me forever and ever and ever forever Wanderlust"- "The Wanderlust" by Nightwish --------------------------------------------------------------------------

06. July, 2001 Version 1.51

- All plugins: _Demo_ suggested to use a 59.94 fps NTSC timing (instead of the old 60 fps one), if auto- detected fps limitation is enabled. Well, done... (don't ask me if that will improve anything... most of my games are PAL ones anyway :)

- D3D plugins: I wanted to add a few more fullscreen modes to the D3D plugins in version 1.50, but somehow I've forgotten to add the 320x240 and 320x200 D3D modes, tsts. Oki, fixed.

- All plugins: it is now possible to redefine the gpu hotkeys in the gpu config windows (look for a small "..." button). - OGL/D3D: added some mmx asm to squeeze out a few more frames per second. The optimizations were done in my texture caching funcs, the speed increase will be in the range of 0 - 10 more fps (depends, as always, on the game and your pc specs). No mmx was added to the soft gpu (main reason: most time in the soft gpu is used up in the per-pixel blending funcs, and that ones are very mmx-unfriendly right now... well, I've checked out some other optimizations in the soft gpu, giving me around 2 additional fps, but the gpu dll size was doubled and the code was a really big mess, so I've dropped that again). - OGL plugin: the best is yet to come: 100% perfect subtractive blending! Well, one of the psx blending modes is hard to emulate in hw/accel. gpus, because that kind of blending was not supported on older pc gfx hardware. But lately I've found an OGL extension to get that mode right, and luckily my GeForce1 DDR card can do it without problems. Version 1.51 of the OGL plugin will check your card's opengl capabilities, and enable that special blending mode, if it is available. Prolly all GeForce cards can do it, I don't know if it is supported on other cards as well, though. The gpu ingame-menu will show a little 'moon' symbol, if the extension can be used. Of course the gpu plugin will fall back to the old blending func, if it's not possible to use it. Quite easy, no special option needed :) You will notice the new blending mostly with correctly faded menu backgrounds in FF9, or with darker shadows and lighting in CC. Oki, and now let me answer some new FAQs _before_ they have a chance to get FAQs ;) 1. Q: Is it possible to do the new mode in the DX6/DX7 D3D plugins? A: No 2. Q: Would it be possible in a DX8 D3D plugin? A: Yes 3. Q: Will you code a DX8 D3D plugin? A: No... at least not in the near future :) Ask Lewpy to do one... :):):)

- All plugins: there is _no_ new option for the wrong mdec colors with fpse 0.9! I did think alot about it, if I should do a 'special fpse game fix' or something like that, but in the end I've decided against it. Why? Well, the wrong colors are caused by fpse, not by the gpu plugins, and I think in terms of compatibility it was a bad decision by the fpse team. And if I would do a special fix, hey, maybe the fpse team would never correct the colors... and maybe the next emu team would decide to display the mdecs up-side-down, and I would have to add another bunch of useless convert funcs... nonono ;) And one fpse member already told me that they want to fix the mdec issue themselves, so hey, don't worry :)

"There was a man found hanging in a jail cell And they said it was suicide A man was found hanging in his jail cell And they told me it was suicide Now you can blame the social system But I still say it was his necktie"- "Necktie" by Michelle Shocked

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

24. May, 2001 Version 1.50

- D3D plugins: sometimes there were disturbing lines in unfiltered mdecs on Matrox cards. Fixed.

- OGL plugin: because of PSEmu Pro I always had to do a delayed gpu init (otherwise the screen would stay black in this emu). Well, I've noticed a problem (crash, boom, bang) with one demo because of that delay, so I do now some more 'init' checks.

- SOFT plugin: a new stretch option: "scale to window, keep aspect ratio". That one will keep the original psx screen proportions, of course you will get black screen borders, if the aspect ratio doesn't match your window size. That option is much harder to do on the OGL/D3D gpus (because many of my funcs are relying on a fully rendered window), but maybe I will do that in a later version... we will see :)

- OGL/D3D: a new special game fix for FF9: "G4 polygon cache". If it is activated, the yellow character selection rect in battle mode will be displayed. All cudos are going to Lewpy, who has developed that fix :) Btw, enable it ONLY with FF9. No other game will need it, and it can cause glitches! - OGL/D3D: a workaround for horizontal wrapping display positions. Now my XPloder demo cd is working, maybe it will help with some more 'black-screen-only' games, too.

- OGL/D3D: Thanx to Gabi, who did send me her original RRT4 game cd, I could investigate (and fix) some more glitches: * disabled screens are now handled more correct. That means: less garbage with some games (like the garbage in RRT4 before/after mdecs). * clipping areas with a width/height of 0 are now fine... It seems that sometimes I do too much checks ;) The disturbing bottom menu boxes in the RRT4 menus are gone. * Changed my line offset code a little bit. Result: less disturbing dots/lines in RRT4 (most times while driving below bridges).

- OGL/D3D: fixed a wrong clipping area which was caused by toggling between fullscreen/window mode. Because of that bug sometimes only a part of the screen got updated after switching to fullscreen mode.

- All plugins: I've changed the gpu config dialogs, so now there is a better description for most options. Don't get shocked when you are opening the config window for the first time :) In the D3D/Soft plugin you will also find some more fullscreen resolutions (added by user requests).

- All plugins: Well, if you have visited www.psxemu.com, you will already know about the new "save state pic" feature. Of course the main emu has to support it, and right now there is no released emu with that ability yet, but hey, we are prepared :) You can still check out that feature, though: when you hit the "INSERT" key, and no fps menu is displayed, you will see a nice pic with the gpu version number. If the fps menu is enabled, a description text of the selected option will be shown instead... kind of an online help :)

- OGL/D3D: I've hidden an easteregg... yup... a very slow one, though... try to find it... I will tell no more, all requests to reveal it will be ignored :) Oki, just one thing: somewhere I've placed an _obvious_ hint how to activate it...

"Master of the lightnings, rider on the storm, wearer of a crown of swords, spinner-out of fate. Who thinks he turns the Wheel of Time, may learn the truth too late. (From a fragmentary translation of _The Prophecies of the Dragon_, attributed to Lord Mangore Kiramin, Sword-bard of Aramaelle and Warder to Caraighan Maconar, into what was then called the vulgar tongue (circa 300 AB))" - "The Wheel of Time" by Robert Jordan

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

28. April, 2001 Version 1.49

- OGL/D3D: improved my screen clearing detection, so some garbage borders (like the ones in Legend of Mana) are now history. RIP :)

- D3D plugins: while doing the above mentioned improvement, I've noticed a wrong clipping on block fills in the D3D plugins. The OGL plugin was fine, though

- All plugins: Lewpy suggested to do some more coord checks like the ones needed for the silent hill maps... well, it's done, and it doesn't seem to hurt, so we give it a try, eh? :)

- OGL plugin: fixed a stupid bug which caused the gpu to crash after a race in GT2 when offscreen drawing was enabled. The D3D plugins only worked because of some strange kind of luck ;)

- OGL plugin: a wrong ZBuffer init caused troubles with some games, if the mask bit detection was enabled (for example: wrong shadows and missing texts in GT2). Conclusion: never forget to remove debugging code... tststs

- OGL/D3D: I've tried to get more game menus/splash screens to work. Currently the screen detection is a real mess... but always when I've started to recode the funcs, I've ended up with the same zillions checks. So I decided to leave the funcs in the current state, and just to add a few more or less clever lines of code if the "Offscreen Drawing" mode is set to "4: extended". The new code works not too bad in games like Spyro (intro screens), Spiderman demo (intro screens), Batman demo (special kind of mdec at the beginning of the demo)... still, the extended OD can also act too eager, producing additional garbage and/or flickering. My advice: use it only, if you are missing something important in your game. Oh, and btw: some changes in the OD code is causing wrong lines in the FF8 intro screens... Lewpy fixed the lines in his 1.32 glide plugin, well, I've fixed it in an earlier version of my gpus, too... now it's magically back, and honestly: I don't care :)

- OGL/D3D: a new 'special game fix' called 'Framebuffer read'. What's that? Well, some games are reading back the currently displayed frame to the psx main memory, changing it, and upload the changed frame data again to the gpu. Such effects could only emulated in the past by activating the (slow) "full vram primitives" option (FVP is drawing everything in the emulated gpu memory, so the "read back" is possible). The new 'framebuffer read' (FBR) option can be used as a FVP replacement in most games: it tries to detect, if the game is reading screen data, and if yes, it will convert the needed screen part of the OGL/D3D display into the psx format, giving that data to the emulated cpu. Advantage compared to FVP: it only has to jump in if the game is really trying a read back (my FVP has always to be activated to do its job right, causing a slowdown _all_ the time). Disadvantage compared to FVP: a) the FBR "read back detection" can guess wrong, causing either glitches or also unwanted slowdowns. b) the gfx card driver has to support the screen reading I am doing (it's not as complex as the "gfx card framebuffer textures" option, so I think most cards can do it). The interaction between FVP, FBR and FBT (framebuffer textures) is a bit tricky, so lemme try to explain the best combinations: 1. if you have a very fast cpu, you can enable FVP, set FBT to "emulated vram" and disable the new FBR. 2. if enabled FVP is too slow on your system, turn it off and use the new FBR option. FBT has to be set to "emulated vram" or sometimes "gfx card buffer". 3. Many games will run best, if you simply set the FBT to "gfx card buffer" and disable FVP/FBR. Maybe you will miss some (unimportant) bkg gfx or battle transitions, but that's all. And if you are looking for speed only, disable FVP/FBR and set FBT to "Black"... speeds up most transitions (they will be black, of course). I've checked the new combination #2 (using FBR) with a couple of games, and it worked fine on Spyro 1 (bkg gfx in the option menu), Tomb Raider TLR (bkg gfx while pausing), ChronoCross (bkg gfx while pausing/item menu), Star Ocean 2 (battle transition), Blaze&Blade (bkg gfx and transition), Legend of Mana (entering town transition). Prolly more games will also show up additional stuff which you have missed before if you haven't used FVP. Another thing: all framebuffer read effects will look 'low res'... if you have read the above text carefully, you can guess why. A final note on the new FBR option (wow, that description is getting far too long): DON'T USE IT WITH FF9!!! FF9 is also reading back data after a battle... and if the new FBR option is enabled, ePSXe will crash with an unkown opcode. Don't ask me why... maybe FF9 doesn't like what I am giving back (copy protection? bug in my code? mmm... have to do more investigations). Still: complains about problems in FF9 with activated FBR will go to my personal NULL device :)

"Little do I know - little do I care Little would it help if I knew and was aware. Aim beyond the stars, catch a glimpse of gold A planetary chart where the stories are untold. There's a piece of truth for everyone..."- "Lunar Sanctum" by Kamelot --------------------------------------------------------------------------

07. April, 2001 Version 1.48

- OGL plugin: fixed a small bug in the "filtering without sprites" modes. In some games (using textured windows) the sprite filtering was not turned off. The D3D plugins were doing it fine, though.

- OGL/D3D: improved the mask bit detection, should be now handled exactly like the SoftGPU. - All plugins: added code to get negative display positions to work. That bug could have caused crashings in the SoftGPU and black screens in the OGL/D3D ones. Of course not much games are using it (I've seen it just with "Tobal No.1")

- All plugins: I've tried to make mdecs less skippy if frame limitation and frame skipping are turned on at the same time. But if your cdrom is a bit slow reading psx cds, the skipping will be still there (well, frame skipping can cause all kinds of problems, so I don't recommend it anyway).

- All plugins: faster "MoveImage" func... yup... but I don't think that you will notice it much.

- All plugins: the Silent Hill maps will now be displayed. Maybe some splash screens/background gfx in other games will appear as well.

- All plugins: faster "Line offset" func. I like the new func, it's a very easy (but still accurate) approach. I had to do a lot of thinking until everything worked as planned, so I am kinda proud of it, ehehe ;)

- All plugins: you can now use the "HOME" key to step down the available option modes in the in-game gpu menu. It's like the "END" key, just in the other direction... of course it's only helpfull, if an option is offering more than two modes (like the filtering option, or the new offscreen drawing one).

- OGL/D3D: there are now 5 OD option modes: 0 (none), 1 (minimum), 2 (standard), 3 (enhanced), 4 (extended). A short overview: OD is used to detect drawings which are outside the front/backbuffer, doing such stuff in software (or by tweaking polygon coords). 0 (none): fastest mode, glitches in splash screens/game gfx can happen 1 (minimum): takes care of most splash screens 2 (standard): does an easy check, if software drawing/coord tweaking is needed 3 (enhanced): does a more complicated check for soft drawing/coords 4 (extended): does the "enhanced" check, and adds some additional buffer swaps (can cause flickering with some games) Usually the "standard" mode is enuff to get everything to work, with FF8 you should use the "enhanced" mode to get all character stats in battles.

"Hear my song. People won't you listen now? Sing along. You don't know what you're missing now. Any little song that you know Everything that's small has to grow. And it has to grow!"- "The Song Remains The Same" by Led Zeppelin

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

17. March, 2001 Version 1.47

- All plugins: a small bug krept in my 1.46 versions in the fps limit autodetection. If you did stop and continue a game, the auto detected limit value was lost, and the manual one was activated. That's fixed.

- All plugins: Improved the screen centering funcs... not much to say about it :)

- OGL/D3D: fixed the smeared background in Castlevania by doing a more lazy "clear on next swap" detection... Thanks to R. Belmont for giving me a chance to investigate the issue :)

- OGL plugin: removed the anti aliasing option... yup... most users didn't understand that the option did activate line a-a, not FSAA, causing big slowdowns with most gfx cards (yeah, I wrote in my ogl readme that the line a-a is NOT supported by most cards, but of course that didn't help much... there are always some 'wise' ppl knowing it better). Well, the a-a option is dead and buried... use FSAA, if your card is supporting it. To fill the missing space in the config window, I've added the old funny "Lines only" mode again, because I've got some nice mails asking for it... be happy :)

- All plugins: the biggest improvement... new mask bit detection. Lewpy's and my plugins already had a mask bit option in the previous versions... but "Silent Hill", one of the few games which is using mask bits, was still screwed... Well, we decided it's a main emu bug (ehehe), but now I've tried my luck again... and I think I've finally solved the riddle :) At least Silent Hill is now working fine, I don't know how many games are also using mask bits, though. Some hint: activating the option eats away valuable texture vram, so only turn it on, if you really need it.

- And now... I am off to play Gothic :)

"They made a living by growing Swampweed. Its smoke was highly praised, because it gave sweet dreams to all human beings..."- translated from the manual of "Gothic" by Piranha Bytes

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

25. February, 2001 Version 1.46

- SOFT plugin: the soft plugin supports now cards which are using a 5-5-5 16 bit desktop color. So, if you had troubles in the past (green/yellow lines or something like that), it should finally work without problems.

- All plugins: some games seem to have problems with the main emu vsync timing, causing strange speedups/ slowdowns even if the FPS is shown as 60/60 (or 50/50)... Well, now you can activate Lewpy's old FPS calculation again, which is based on the PC framerate, not the PSX one. It's a special game fix, mostly for some soccer games, I don't suggest to use it generally, though (it will cause a wrong MDEC timing, and sound can be out of sync). Please note: the PC fps rate is most times just half of the PSX one (30/30 or 25/25), so don't worry, if the fps display is showing less fps by activating the fix. - All plugins: yeah, it's possible to transfer image data in the dmachain... pfff... I always thought it's a main emu bug :) My plugins should now handle such transfers without problems... check out "Tombi" :) All credits and a big "thank you" to Kazzuya and especially Taka... really great job! I hope "Dragon Quest 7" will work fine for you :)

"Before anything further is written, it must be noted that the following section is included only as a matter of historical documentation. The use of magic has long been proven to be unreliable and the suspected cause of mental deterioration. The author takes no responsibility for anyone who may attempt to practice magic based upon the information contained herein."- taken from the manual of "Ultima 7" by Origin

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

09. February, 2001 Version 1.45

- SOFT plugin: a new option called "unstretched display". The display will be shown in the original psx resolution, centered into the plugin window.

- OGL/D3D: the old "Texture alignment" option has been removed... the plugin will now correct the texture alignment automatically, without any option. The new func works similar to the "Texture correction" option in Lewpy's Glide plugin :)

- OGL/D3D: new "special game fix" for Legend of Dragoon. That game needs an incredible high pixel accuracy, only my soft plugin can display it without blue pixel trash... Well, the new fix will turn the blue glitches into (much harder to see) black ones :)

- OGL/D3D: and another new special game fix, called "short DMAChain check". You can use it to repair the pause in Tekken3 after a fight, but you should disable that fix in other games. It works like Lewpy's "short dmachain" option.

- All plugins: biggest change in version 1.45: a new optimized dmachain handler... it was a lotta work, and there will be not much speed increase (if any), but I like the new function... and it will handle corrupt dma chains even better.

"Red sun rising in the sky Sleeping village, cockerels cry Soft breeze blowing in the trees Peace of mind, feel at ease"- "Sleeping Village", by Black Sabbath

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

21. January, 2001 Version 1.44

- SOFT plugin: fixed a small issue with the FF9 'pause' screen. It is working without problems in version 1.44

- All plugins: new ODDLINE bit handling. More games (like XMen) should be working (fingers crossed :)

- OGL/D3D: if you are using a filtering mode w/o sprites, the new version will not only ignore sprites, but also textured windows (most times used as background pattern in text boxes). Less glitches will happen in such text boxes... try it with FF9 :)

- OGL/D3D: you have noticed a small vertical line in the right area of MDEC movies? Well, that's fixed, too... Unfiltered MDECs should be fine now in OGL, nVidia cards will still show some small line with unfiltered MDECs in D3D, though (because of the stupid 'auto-blurring' nVidia is doing on stretched blits in D3D). - OGL/D3D: biggest improvement: a speed boost in games which are using textured windows as main texture type (like Spiderman). Enjoy :)

"In diz lant hat er gesprochen einen angeslichen tac. da diu witwe wirt gerochen und der weise klagen mac und der arme den gewalt der da wirt an ime gestalt. wol im dort, der hie vergalt!"- "Palstinalied" by Walter von der Vogelweide

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

06. January, 2001 Version 1.43

- SOFT plugin: fixed a small bug with wrapped sprites coords. MediEvil intro and Bust-A-Move are fine now.

- All plugins: if you are doing a screenshot (F8 key with most psx emus), there will be created an additional info text file in the sub-directory "snap". The info file contains all the current plugin configuration settings, so you don't need to write them down anymore, if you want to post/mail your settings.

- OGL/D3D: lotsa small fixes, should give you a better speed (in some games) and less garbage glitches... As always: I only can hope the new stuff don't screw your favourite game ;) - OGL/D3D: added three more menu items in the gpu menu: Dithering (DI), Special game fixes (GF) and Framebuffer textures (FB). The first two just toggles the option on/off, while FB is a new feature...

- OGL/D3D: Framebuffer textures, yeah... my personal nightmare ;) Some special effects (mostly before entering a new screen), or things like motion blurring, are hard to emulate using hw/acceleration. But, hey, nothing is impossible! :) Ok, there is a new option in the gpu config called "Framebuffer textures". Three settings are available: * "Emulated vram" : you can use this setting in combination with activated offscreen drawing and full vram primitives... it will show you most special effects/blurring, but of course you will need a very fast cpu (1 Ghz...) to get a reasonable speed. * "Black (fastest)" : that's a setting which turns the special effects black... it's the same as the special game fix "Black framebuffer texture" in version 1.42, you can use it if you don't care about the effects, or if the effects are slowing your game down. * "Gfx card buffer" : that's the new one... it will give you the effects in nice looking hi-res, with good speed... IF your gfx card/driver can handle it. Here is some technical info concerning the "Gfx card buffer": 1. if you are owning a GeForce, you are lucky :) Use at least the Detonator drivers 6.31, though, to get a good speed. 2. TNT cards... pfff... well, I did some tests on my girlfriends P2-400 with a TNT1... with 5.xx drivers the effects crawled... 6.xx was faster, but there were big glitches in the D3D plugins. 3. 3DFX cards... well, try it... my V2 can do it using the DX6 plugin... slow, but hey! At least the speed should be better than using full vram primitives ;) ATI, Matrox, whatever cards... dunno :) 4. Resolution/color depth : the higher the resolution/color depth, the slower the effects. Using OpenGL, resolutions up to 640x480 will take away 1 MB of your cards vram. Higher resolutions will cost you up to 4 MB vram! Using D3D, the effects will always take 256 KByte of vram, no matter what the window/fullscreen resolution, but speed will also go down on high resolutions. Well, you have to play with different window/fullscreen settings, if speed gets too slow. 5. Yeah, OGL is a bit slower using the "Gfx card buffer" option, but it will give you an even better image quality than the D3D solution. Keep in mind: if you are using scanlines and/or dithering, or the gpu menu is displayed, while a whirl/blur effect is happening, strange things can happen... it's fun to see the menu sucked into a whirl, though ;) 6. Known games working with "Gfx card buffer": Crash3, BOF4, FF9, MGS, Vagrant Stories, Wild Arms1 (extended OD needed)... some games (like Blaze&Blade), will not work, though...

- OGL/D3D: I've improved the "dynamic" caching mode, if a game is using procedural textures... Well, here is a small caching mode overview: * "Standard" : usually the slowest mode, causing a lotta texture uploads * "Heavy" : will store up to 10 palettes per texture... not a bad one for some games, at least faster than "Standard" * "Dynamic" : best mode for most games. It optimizes the used textures and stores as much palette stuff as possible in your gfx card vram. It even tweaks the textures for a better filtering/alignment... wow :) * "Palettized" : most times slower than the "Dynamic" mode, but some games are doing big blinking/color rotating effects, which are stressing the "dynamic" one... such games can run smoother in "palettized". TNT owners can't use it (neither in OGL nor in D3D), GeForce cards can use it with OGL, 3DFX cards with D3D... depends on the driver (maybe nVidia will fix the D3D bug with GeForce cards somewhen, fingers crossed).

"Ugly is bad And bad is wrong And wrong is sinful And sin leads to eternal damnation An' hot burning fire ... I'm so cute!"- "I'M SO CUTE" by Frank Zappa --------------------------------------------------------------------------

25. December, 2000 Version 1.42

- Merry christmas... dunno if that's a bug or a feature, though :)

- The Windows gpu plugins are now delivered in one zip archive... that way I have to write only one version info, giving me time to do more useful things :)

- Scanline option in all gpus... well, I've got many mails concerning scanlines, and I finally decided to satisfy your hearts desire ;) Not much to say about that option, turn it on, if you like it, turn it off otherwise. Scanlines will NOT give you more speed, but if you are lucky, it will not get slower, too. The soft gpu contains two different scanline modes, enable the second mode only, if you are getting a very blured display (nVidia cards mostly). Oh, btw, any mails begging for a 25% or 50% scanline option will be ignored :)

- OGL plugin: the snapshot function (F8 key) is fixed with mdecs (older versions didn't capture mdec frames).

- SOFT plugin: fixed a bug which caused flicker sprites on the left side of the screen (mainly with scrolling background graphics, thanx to GreenImp for tests). Also a small issue with the Analog/Mouse display in the soft gpu menu has been repaired.

- OGL/D3D: Small changes in the dynamic caching mode. I don't pull in coords of filtered textures in that caching mode anymore, giving you a less blocky display with filtering (NOT a perfect filtered display!). Still gaps/garbage can happen if you are enabling filtering (it seems that OGL is a little bit better with that, though).

- OGL/D3D: I've added a new "special game fix" called "Black framebuffer texture". If you activate the option, garbage in games like BOF4 (before entering a battle) or Vagrant Stories (motion blur) will disappear. That doesn't mean, that the special psx effect will be repaired and shown perfectly... if you really want to see such framebuffer tricks, you still have to use "extended offscreen drawing" and "full vram primitives"(very slow), and you have to deactivate the new "black framebuffer texture" option. Well, but the new option gives you a fast alternative to get rid off disturbing glitches without using the slow "full vram primitives", making certain games more playable :) - Ah, and like in Lewpy's 1.23 Glide plugin, there is a great new surprise hidden within all plugins... but you will have to wait, it's not up to me to tell you more about it :)

"Maybe all I need besides my pills and the surgery is a new metaphor for reality."- "DIS CON NEC TED" by Queensryche

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

-------------------------------------------------------------------------- - OLD OPENGL VERSION INFOS--------------------------------------------------------------------------

09. December, 2000 Version 1.41

- ALT-ENTER... toggle between window/fullscreen mode. Beware: there are small troubles with some gfx card drivers (at least with my GeForce and detonator 6.49 drivers), if you try to change from a 16 bit window (desktop) mode to a 32 bit fullscreen mode (or from a 32 bit window mode into a 16 bit fullscreen mode). No known problems if your desktop has the same color depth as your chosen fullscreen mode.

- I've changed the Offscre en Drawing/Frontbuffer rendering detection again. The new function will finally work fine with FF8 battlemenus/world map, if you select "Standard" offscreen drawing. Some small manual about Offscreen Drawing: * "no" OD will be the fastest mode, but some splash screens and special effects (like Crashs shadow in Crash3 or menus) will not appear. * "Standard" OD will show most splash screens, and most of the battle menus/special stuff * "Extended" OD is like the "Standard" setting, but it also forces the plugin to update the screen more often if the game is drawing into the psx frontbuffer area. That will show some stupid coded "pause" menus, for example. It can cause flickering displays, though. * "Extended" OD + "Full vram primitives". That one will finally show most special psx framebuffer effects (typically used for motion blur or those nifty level entry efftecs). Of course that way the gpu has to do twice the work (acting like a soft gpu and doing the hardware drawing), and you will need a fast cpu to use it.

- New rgb24 (mdec) upload detection, that one will be faster with some mdecs, and produce less garbage on mdec top/bottom (see the FF7 mdecs)

- Improved the "texture alignment" option. The new TA will give better results with "Warriors of Fate", for example. So, if you are seeing vertical garbage lines in your game, try enabling TA.

- I could kill some shift/and operations with each drawing primitive... it will not give you lotta more speed, but hey ;)

- Last but not least: a new way to handle polygon coordinates. It will fix games like Tony Hawk 1+2, Spiderman, Apocalypse, Driver 1+2 and so on :) Thanx go to Galtor & Calb from epsxe for their suggestions, tests and chats ("it's a GPU bug" - "no, it's a CPU bug" - "no, must be a GTE bug" - "Nope, gpu can fix it" - "aaarggg") Well, I've tested the new funcs with many games and demos and it seems to be pretty compatible, but still, if you are seeing big flashing polygons with 1.41 in your favourite game, try disabling the new funcs in the "special game fixes" option.

"And the tower bells chime, 'ding dong' they chime They're singing, 'Jesus died for somebody's sins but not mine.'"- "Gloria" by Van Morrison

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

23. November, 2000 Version 1.40

- Fixed an issue with ePSXe which was causing a crash if you stopped a game by hitting ESC and continued it again.

- Small speed improvement with unfiltered MDECs, also fixed a small bug with uploading screens, if a game is using the screen centering bits

- New info in the in-game menu: if the main emu is telling the gpu that the pad emulation is running in analog mode, a small 'A' will appear... no 'A' means digital pad mode

- Biggest change with the version 1.40 gpu core: New way to calculate the FPS. Previous versions were only calculating the really drawn frames, so games were running 'right' at different FPS speeds (mostly 50 or 25 FPS in PAL mode or 60/30 FPS in NTSC). Version 1.40 is just using the vsync signal for doing the calculations, so if a game is running at 50 (PAL) or 60 (NTSC) FPS, you have reached full speed... ah, very easy, isn't it? Well, on my P3 550/GeForce DDR system nearly all games are working fine, and the new FPS detection helps to limit even the MDEC speed propery, sono disturbing noise is happening while playing the XA sound anymore (fingers crossed ;) Of course there is also one drawback with the new functions: you can't compare the new FPS values with the ones of my previous versions or with the plugins of Lewpy, Segu or Kazz...

"If I could I'd slow the whole world down I'd bring it to it's knees I'd stop it spinning round But as it is I'm climbing up an endless wall

No time at all No time this time"- "No Time This Time", The Police

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

29. October, 2000 Version 1.39

- The new 1.39 core is my first try to emulate the screen centering bits. Usually this register values are used to fine adjust the game display on the TV screen, but sometimes games are using it to make big position offsets or to clip the display output. Well, I've tried to do a careful approach, because I didn't want to cause bigger black borders around the game screen, I hope I've been successful :) Yeah, Raiden 1, Raiden 2 and the Alundra2 movie sequences will work better now.

- A special new game fix for 'Speed Freaks' can be enabled in the 'game fix' config options.

- Found and removed a bug which caused flickering effects in 'Horned Owl'.

- Polylines are now supported in the offscreen drawing functions, I've noticed a demo using them. The same demo did a stupid way to update the screen, it's also fixed (sigh).

- Changed the BlockFill function a little bit, it 'feels' better now (I didn't see any differences in my games, though)

- Ah, yeah, I've also squashed a small bug in my offscreen drawing funcs, the drawing area wasn't always detected properly.

"Down by the seashore, where the waters foam white, Hang you head over; Hear the wind's flight. The east wind loves sunshine, And the west wind loves night. The north blows alone, dear, And I fear the light."- "The Order War", by L.E. Modesitt, Jr.

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

08. October, 2000 Version 1.38

- It's a small update this time, just killing some bugs I've detected while doing a new kind of psx gpu plugin :) The fixes are all clipping-related, so you will not get better speed, just less glitches with a few games (see for example Dead or Alive with version 1.37, urgh)

- The offscreen drawing funcs have been cleaned up, too. All errors I've found with the soft gpu are fixed in the OD stuff used by hardware accelerated plugins.

"What's the worry, what's the hurry, Do you hear me, do you fear me ? You've got the message, you read the story, You want the power, you need the glory. ... So you thought you had it made, Ain't it easy to be afraid, Feel the pressure, take the bait, Here it comes again."-"What's the hurry" by Marianne Faithfull

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

24. September, 2000 Version 1.37

- Some 'primitive position wrap' from the 1.36 core caused glitches with a few games , so I've changed that to a safer behavior.

- New 'special game fixes' option. Well, of course my goal is to to make a nice psx gpu emulation with as little glitches as possible, but some annoying stuff will always happen. If I find a way to 'do it right' I always include it without options in the plugins, but sometimes the only way seems to be to code some special workarounds. Those fixes will only work with certain games, all other games will get worse. Well, the FF7 menu border fix and the lighting fix (both gitches are caused by the main emu, imho) were already available in previous versions by hitting the 'INSERT' key. The new option gives you more control to activate the desired internal gpu patch. Ah, yes, and a new one, called 'No sprite transparency', eliminates the 'trails' in the Abe's games. You still can toggle the special fixes with the 'INSERT' key... but only the ones you have enabled in the 'special game fixes...' window.

- And finally some small repairs with 4 bit palettized sprites in the offscreen drawing funcs.

"And you, who want to know me, be aware that allof your searching and wanting will not help you at all.You have to know the mistery: if you don't find thetruth you are searching for within yourself, you willnever find it anywhere outside."- "The Spiral Dance. A Rebirth of the Ancient Religion of the Great Goddess." by Starhawk

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

17. September, 2000 Version 1.36

- For infos about the 1.36 core please read the 'version.txt' of the D3D DX7 plugin :)

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

03. September, 2000 Version 1.35

- Yup, I've skipped the 1.34 core from my SoftGPU and made a new one... so check out my SoftGPU version 1.35, too :)

- Something unique in my gpus right now: improved auto-detection of the game's FPS limit. My older versions did an easy check on the interlace bit, if set: 50/60 FPS, if not: 25/30 FPS (PAL/NTCS). That checking is easy, but also bad with many games. So I've done some research, and my new functions (examining the game's vsync usage) are working much better in most cases. So, for example, in Wild Arms (PAL) you will get 50 FPS in towns and 25 FPS in the battle screens... that's the way it should be. Well, I know, some ppl will not understand why they should do FPS limitation at all, but if you want to have correct game music, the timing is important. And, of course, in my age I can't handle Spyro at double speed ;)

- I've taken all my new SoftGPU funcs and added them in the OGL plugin... yup. I've also killed all of my old Offscreen- Drawing detection stuff and coded some new (hopefully better) routines. And I made a new option: full vram updates. All the changes (lotta work, boah) are related, I will try to explain it in simple words: the real psx gpu is able to draw polygons and sprites _everywhere_ in the vram. Well, a hw accelerated gpu plugin usually has to detect if the game is drawing into the next visible part of the vram and do that drawings with the 3D API (OGL, D3D, Glide) it is using. By doing that things will be faster and looking much better, but (because the primitives are not painted in the vram), some speci