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

23. October, 2002    Version 1.67

- All the small fixes I've added to the P.E.Op.S. soft plugin 1.9 are
  now included in my hw/accel plugins as well. A big 'thanx' goes 
  to Farfetch'd for his valuable infos :)
  
  Here a small list of game improvements:

  * Transparency issues in FF6 (semi-transparent people) are 
     solved
  * Madden doesn't need the 'old coord check' special game fix 
     anymore
  * Many 'big polygon' troubles are fixed (don't ask me for game 
     names, I only had save states for tests, but I am sure that the 
     users who gave me the saves will notice the differences :))
  * The ChronoCross Fort Dragonia scene will now work fine without
     any game fix (I've removed the old CC fix in this release). Prolly 
     also all other CC scenes with similar glitches are now fine, too.

- The 'nVidia FSAA' special game fix is now somewhat stronger, 
   hopefully it will help the games which showed black rects when 
   FSAA was activated.

- I was able to enhance my internal texture alignment: there are now 
  less glitches with texture windows when filtering is enabled, and, 
  more important, some small but stupid texture glitches are now fixed 
  as well (for example with Grandia texts, Jumping Flash status displays 
  and a few Wild Arms1 texture garbage happenings).
  
- Ok , that's all... it's getting harder and harder to make real 
  improvements, but I guess that's 'a good thing', eh? :)


"Un minuto come un ora come un giorno o forse piu'
  un minuto anche stasera per dimenticare
  un minuto
  un minuto per sempre..."
- "Un minuto per sempre" by Prozac+

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

12. September, 2002    Version 1.66

- The first improvement was actually the work of Lewpy and
  E}I{: finally texture window coords are (hopefully) emulated
  right. That kind of 'repeated texture areas' is often used as
  background pattern in text boxes, so for example the FF7 text
  box border glitch was caused by not 100% correctly handled
  TWs. 
  Well, now it seems to be fine, so FF7, RRT4, Gauntlet Legends 
  and Casper are repaired. There is still a "FF7 special game fix"
  in my hw/accel plugins though, it's not needed for the text borders
  anymore, but it will handle some issues with the offscreen battle
  hand cursor and the swirl effects.

- I've also repaired the FF8 'scanline effect' in the intro of that game
  Mmm... nothing more to say about it :)

- Also related to the FF8 intro: prolly you have noticed that the
  screens are very slow, even if you have a powerful system. The 
  same slowdowns can been found in the FF7 intro, and some other
  games as well (as far as I remember during a special 'wave' effect in 
  Persona2, and some transitions in Action Man or whatever it was
  called). 
  Reason for the slowdowns: the games are uploading hundreds
  of single lines of screen data each frame, what is a 'bad thing' with 
  modern gfx accelerator cards: the rendering pipelines on the cards
  stall hard by frequent texture upload/draw actions during one frame.
  In the D3D plugins the speed can be improved by selecting 'unfiltered
  framebuffer updates' (since then 'DX surfaces', not textures, will be 
  used for uploading screen data, causing less stalling), but in OpenGL 
  the speed was always slow, tststs.
  So I've tried certain things to improve the 'upload screen data' speed 
  in OGL, and to my surprise in the current nVidia Detonator drivers 
  the direct buffer draw commands have a very good speed (two years 
  ago the speed was very, very bad).
  So I've decided to add a 'special game fix' called 'Direct framebuffer
  updates' in the OGL plugin, which will improve the speed greatly on
  certain cards/drivers (like my GeForce3 with Detonator 30.82).
  You can easily check, if your card can handle the 'direct FB updates'
  at a good speed, by running a mdec (movie) with and without the
  game fix. If the fix is enabled and speed is the same (or even better),
  your card is doing fine. If speed is much slower, well, forget it :) 
  Oh, btw, activating the fix will cause more pixelated (unfiltered) mdecs.
  
- And some more FF stuff: I was able to fix the battle transitions and
  the transparency of certain battle effects (magic spells and such) 
  with FF6.

- By pure luck I found a small annoying bug, which caused heavy 
  dancing textures in some games, if texture filtering has been 
  activated. The issue happened since version 1.58, and is of 
  course repaired again in 1.66.
    
- Last and least (ehehe): I think I've seen a news post on 
  www.retrogames.com some months (or years? mmm) ago, announcing
  a funny display feature in an (non-psx) emulator: the emu had a special
  display effect, which distorted the screen in the same way as a very 
  old TV, causing a 'cushion' effect. Last week the idea popped up
  in my mind again (it's sometimes really funny how all that small brain 
  cells are working, isn't it?), and I had to sit down and code such an effect
  myself. Since it's just a fun mode, I don't expect that anyone will really
  use it for playing games, and so I've added it only to the Windows OpenGL 
  plugin. Speed will be the same as the 'screen smoothing' mode (btw, you 
  can't use the 'cushion' and the 'smoothing' mode together), so prolly you
  will need a more powerful system to enjoy it For the best laughes try it on
  a scrolling 2D rpg game :)
  Ah, and if someone knows which emu introduced such an effect for the
  first time, please send me a mail, I really want to know :)


"I hear a very gentle sound"
- "When the music's over" by The Doors

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

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. 
  
    
"Schäume 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 Sünder ohne Zügel"
- "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!"
- "Palästinalied" 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 all
of your searching and wanting will not help you at all.
You have to know the mistery: if you don't find the
truth you are searching for within yourself, you will
never 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 special gfx effects are not right with some games.
  My 'standard' OD is checking, if the psx is painting
  outside the visible area, and if that happens it will use the
  soft gpu funcs to update that part of the vram correctly.
  The 'Extended' OD does even a bit more: it detects if painting
  is going on in the actually displayed area of the vram (something
  I call frontbuffer drawing, some popular games are doing that
  for displaying battle screens) and adjust it to get it (nearly) right.
  And what's new 'full vram update' option? Well, if combined 
  with an OD mode, it will paint _any_ polygon in the psx vram, 
  keeping the vram content as fine as possible. That's an hell of
  a job to do (because the gpu has to act as a soft gpu AND
  to handle the 3D accelerator as well), so you will need a most
  powerful cpu to use it. But on the good side: you will get nearly 
  all funky effects (like whirling screens and motion blurrs) if you
  are using full vram updates and extended offscreen drawing.
  Hint: usually I am using 'extended' OD without 'full vram', but if a 
  game is flickering (yup, that can happen), I just use 'standard' 
  OD. Only a few games (like Vagrant Stories) will need 'full vram'
  to play without glitches.

- Some smaller changes were done to some psx state bits and 
  interlaced screen uploads. Oh yes, I also wanted to speed up
  MDECs, but I've learned (again), that the fastest way to paint
  2D screens with OGL is to use textures, so I removed the new
  (slower) code and did a new option instead: 'Unfiltered 
  framebuffer updates' will be a little bit faster with mdecs (not 
  using texture filtering).
  Oh well, and some older options like 'texture windows' simply 
  vanished (all those options are now fire proofed, no need to 
  turn them off).
  
- My version 1.35 D3D gpus (for all non-nVidia users) will be 
  ready in a couple of days, I hope (I just need some time,
  sigh).


"I think therefore I am, familar to most?
How long did we eat the seed planted by our host?
4 billion years between our ears,
still hatred brings as many tears.
Still we judge each other...
why when we're only looking for the same high?"
- "spOOL" by Queensryche

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

30. May, 2000   Version 1.33

- Attention: I've renamed the gpu to "Pete's OpenGL Driver"
  (gpuPeteOpenGL.dll), because that name fits better than
  the old "Pete's TNT Driver" one. 
  Reason A) It's not for TNT cards only (for example I use the 
  plugin with my GeForce)
  Reason B) It uses the OpenGL API... yup, surprise ;)
  Reason C) <insert any reason that satisfy yourself>
  But keep in mind that you have to reconfigure PSEmu Pro to
  use the new file, just copying will _not_ work this time
  (of course you could rename the file to "gpupetetnt.dll" again 
  and copy it over the old version, but hey :)  

- This is my first gpu version with sprite mirroring enabled.
  I thought that the standard psx gpu is not capable of
  sprite mirroring (and when I coded that feature I noticed 
  glitches with some games), but of course it was just a little
  bug in my code which caused the bad behavior. Well,
  one game using mirroring is the "GD010" shoot-em-up
  demo, that one plays fine now.

- I've rewritten the whole code for detecting screen uploads 
  (you know, for game titles and loading screens and such), I was not
  happy with my old code (it was not bad, but a real mess...).
  The new code is leaner and does its job even better (in my opinion),
  some screens will still be missing, but not many, I think (if you are enabling 
  offscreen-drawing, though). Because of the new functions it can
  happen that even "too much" will be displayed causing some garbage
  when the screen should be black.

- Last thingie: my email address has changed: if you have suggestions or
  problems or whatever, mail to: BlackDove@addcom.de


"An Aes Sedai never lies
but the truth she speaks
may not be the truth you think you hear"
- Saying concerning sisters of the White Tower, by Robert Jordan

"The Wizard's Fifth Rule: Mind what people do,
not only what they say, for deeds will betray a lie." 
- The Sword of Truth, by Terry Goodkind

"Honestly, I feel that we have a great
product in the market and that the vast
majority of users are happy with bleem!"
- Sean Kauppinen, Communications Director of bleem! Inc.

"Hehehe"
- Pete

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

01. May, 2000   Version 1.32

- I've done a lotta testing if the V1.31 dma handler could
  cause any troubles before I did the release... 
  and all looked fine. Well, some games I didn't check
  (there is a point in every man's/woman's life when
  he/she can't stand another fighting game), so I just
  did a short check on Tekken3... and of course that
  game was the reason for the 'emergency break'.
  Sigh... this version repairs things again with a better
  dma handling, so T3 _and_ the demos will work.

- Added some code for games/demos which are using
  the MoveImage command for erasing the framebuffer.
  The 'Space Lemmings' demo is working fine.

- Support for flat and smooth shaded 2-point lines in 
  offscreen drawing. It's needed in the 'Bad Funk Stripe'
  demo, but that demo is hard to emulate with a 3D API
  gpu, so it still doesn't work right. 
  Have to think about that issue first :)

"Long ago ran the sun on a folk who had a dream
 And the heart and the will and the power
 They moved earth; they carved stone; moulded hill and channeled stream
 That we, the Stones, might stand on the wide plains of Wiltshire."

Lyrics by Gwenllian Gwalch'gaeaf , "Stones"

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

30. April, 2000   Version 1.31

- Removed an 'emergency break' from the dma handler. 
  That one caused troubles with many psx demos. Thanx to 
  the pcsx crew for putting the demos on their page.
  Check out 'http://pcsx.emuforce.com/' for getting infos
  about this new promising psx emulator :)

"Ain't getting old, ain't getting younger though
 Just getting used to the lay of the land
 I ain't tongue-tied, just don't got nothin' to say
 ...
 Got people here down on their knees and prayin'
 Hawks and doves are circlin' in the rain
 Got rock and roll, got country music playin'
 If you hate us, you just don't know what you're sayin'"

 by Neil Young, "Hawks & Doves"

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

22. March, 2000   Version 1.30

- And again a small update. This version is emulating
  the PSX ability to mask out special polygons, so they
  will not be overdrawn by following primitives. Well, there
  exists just one game (Silent Hill) which is using that feature
  as far as I know, but I think it will not hurt to try the new
  'Enable mask bit detection' option in the gpu config dialog
  window with any game you own. Maybe some other
  games will be fixed by it, too, eh? If you find some other
  game which is using mask bits, let me know, just send a 
  mail to psswitch@online.de
  BTW, I don't have Silent Hill, so I couldn't do much tests,
  thanx to Lewpy for testing :) And yes, I know that Silent
  Hill still doesn't work perfectly with PSEmu, you don't have
  to report that issue ;)
  Just one more note: If you enable mask bits, the '3D glasses'
  option will also activated, that's simply because my mask
  bit emulation also is doing the ZBuffer trick.

"I know where the stars glow
 And the sky's unclouded
 Sweet the water runs my friends
 But Noldor
 Blood is on your hands
 Tears unnumbered
 You will shet and dwell in pain"
- Blind Guardian, Noldor

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

19. Feb, 2000   Version 1.29

- At the moment I don't do much changes on my PSEmu
  OpenGL plugin (I am busy with some other project) but
  I've added a small new option and I want to release that
  version even if it contains no big surprises.
  Ok, so what is new? Two more filtering options: you can 
  now configure filtering to leave sprites unsmoothed.
  That will look nice on some games: all 3D stuff will be
  smooth, while text and health bars will be looking sharp.
  Of course some games are having strange graphics with
  that mixed mode, but hey, that's the reason why options
  exist: turn em off if you like it, turn em off if you hate it.
  Small suggestion: use my PSSwitch configuration utiliy,
  so you can make different PSEmu settings for your different
  games :)
  Thanx to Q'tro for the idea to filter everything but sprites.
  Oh, one last word: the in-game menu toggles now between
  all five filtering modes in the following order: none, standard,
  extended, standard without sprites, extended without sprites.

"Encumbered forever by desire and ambition
 There's a hunger still unsatisfied
 Our weary eyes still stray to the horizon
 Though down this road we've been so may times"
- Pink Floyd

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

28. Jan, 2000   Version 1.28

- I've tried it again: out of order drawing to minimize texture
  and shading state changes. And again: no speed gained. Sigh.
  Maybe I have to play a bit more with that funcs, right now
  all the o-o-o-d stuff is disabled (there are still some small
  glitches and offscreen drawing isn't done in the new funcs yet, so
  I've decided they are not ready for public eyes :)
  But another option, related to o-o-o-d, can be activated in the
  gpu config dialog: support for 3D VR glasses. I don't have some
  for testing, so I can only hope it will work. Please note that most
  3D glasses are working with D3D only, but I think the Asus 
  glasses come with tweaked nVidia OpenGL drivers, so they
  should be working... try it and send me an email...

- While re-writing my gpu for o-o-o-d (nearly all gpu funcs had 
  to be changed, sigh) I've detected a small bug with smooth
  shaded polylines. That one is fixed.

- Optimized some of my asm texture uploading code. Faster that
  way.

- The GeForce is handling texture sow/tow coords slightly different
  than TNT or 3DFX cards. All caching types beside the dynamic
  mode produced small gaps between textures on some occasions 
  with the current GeForce Detonator drivers.
  Well, I didn't want to wait until nVidia is willing to fix that
  glitch (if ever...) and luckily I could finally tweak my texture 
  matrix so it should be fine with all cards.
  I've tested it on my GeForce and Voodoo2 card, I hope that TNT(2) 
  cards will be fine, too. If you have a TNT based card and you are 
  detecting some small thin lines with version 1.28, please send me a 
  mail... in that case I will do some config option, so everyone will
  be happy :)

"The elves and gnomes have to hide
 when the moon is showing its face
 and raging orcs will set their traps
 and all forests will burn
 they hate green trees
 and love the dark
 they don't understand
 that they're caught and left alone
 they feel the magic in the wind
 they just fear the old man's song"
- Blind Guardian

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

09. Jan, 2000   Version 1.27

- Optimized 'Dynamic caching'. It will be slightly faster 
  (less cache thrashing).

- Support for sprite wrapping. Very interesting psx ability.
  I've seen that just once in one game (yeah, again in BOF3, that
  game seems to use nearly _every_ feature of the psx gpu).
  Maybe some other games will also be repaired :)

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

28. Dec, 1999   Version 1.26

- Yeah, christmas time... and because I was such a nice guy the last
  year, Santa Claus brought me a GeForce256 DDR :)
  Well, compared to my old TNT1 it's slightly faster... hey, just 
  kidding, it's really fast... as a matter of fact I think it's the best 
  consumer OpenGL card right now.
  My PSEmu OGL plugin don't use the GeForce T&L features  (not much 
  transformation and lighting stuff are needed emulating the PSX gpu), 
  but goodies like very fast vram data uploading mean a lot.
  And don't worry if you have an older video card like the TNT1: I won't
  lean back and think 'hey, why should I work on optimizations anymore,
  the game runs just fine on my GeForce'. Of course I will try to
  to get even better speed in the future, hey, the main issue of this
  release _is_ about speed :)

- So, what's new? Generally just one new texture caching type... I call
  it 'Dynamic caching', and it was in my mind for some months now. It has 
  some benefits compared to the 'heavy cachig' mode:

  a) It will use your video cards vram to the fullest. It will try to
     detect how much free vram could be used for textures on game startup, 
     so all textures used will be vram resident... no more texture swapping!
  b) It will sort psx texture parts by their usage, so less texture state
     changes will occurr.
  c) Psx games using lotta palettes will work better because now _all_ 
     different palettized texture parts will be cached (if your card
     has enuff vram, of course). 'Heavy caching' just keeps up to 10
     different palettized copies of the same texture area, for example.
  d) Some 'security' border will be generated on every texture part. That
     means bilinear filtering will be looking slightly better, because I 
     don't have to pull the texture sow/tow coords as much as in the other
     texture caching modes. It also 'repairs' the problem I've seen with
     the detonator drivers uploading 1 texel wide texture parts.
  
  Hey, sounds good... but, as always in life there are some drawbacks
  (nothing is ever easy):

  a) Full vram usage for textures: if you like to play at high resolutions
     or you like to use 32 bit textures and/or 32 bit desktop resolution, be 
     aware that it will cost you valuable vram that can't be used for
     texture caching. And I hope that most OpenGL drivers tell me the truth
     about how many textures could be resident in vram... the 3dfx drivers 
     for my V2 (8 MB texture vram) are reporting enuff texture ram for 
     32 MByte, tststs. Well, if a driver is telling lies, most likely the game 
     will be getting slower as longer as you play it.
  b) Sorting: well, of course it takes more cpu time to do that. So some
     games (like Tekken3) will loose some frames compared to heavy caching.
  c) Palette caching: game depending... if just up to 10 different pals are 
     used on the same texture part, heavy caching will be working fine...
     else 'Dynamic' will be more efficient
  d) Security border: well, that one is taking also some cpu and uploading 
     time, of course.

  Conclusion: well, sometimes it runs fast like hell (try Spyro, for example), 
  sometimes it's slower (Tekken3) and sometimes it makes no difference
  at all (all other games, hehehe, just joking ;)
  And maybe I can speed the 'Dynamic' mode further up in the future, we will 
  see...

- Back to my new baby, the GeForce... :) It's true, the GeForce supports
  palettized textures, even in OpenGL. So my 'Palettized texture mode' from
  version 1.23 really worked :) But because of the V2 hack I had to do 
  (uploading the palette data on every primitive) it was slow. I've
  changed that, so the V2 has now some troubles in that mode. But, to be
  honest: I don't care! 3dfx should fix their drivers, the OpenGL 
  specifications can be found at www.opengl.org ;)
  But it seems also nVidia has some troubles with pal textures: the 3.62
  drivers contain a bug, making pal textures useless. So, if you want
  to try em, you have to go for the 3.53 detonator version.
  But most time the 'pal texture' mode is slower than my new 'Dynamic' 
  mode on the GeForce, just a few games (like Blaze&Blade) will be smoother.

- Well, and some more 'GeForce inside' infos: be sure to use the 'Block
  transfer' buffer flipping mode in the GeForce OpenGL display properties.
  If you use 'page flip' or 'auto select', sometimes bad flickering can 
  occurr (and I've noticed no differences in speed, so I really suggest
  using the block transfer)!
  And another hint: if you enabling 'Anti-aliasing' in my GPU config, the
  GeForce falls back to software rendering (_very_ slow)... tststs

OK, that's all this time. I wish you luck trying the new mode whatever
card and game you are owning. Oh well, and if a game is slow, you can
do an easy quick test, if it's because of the gpu or the PSEmu core:
just activate frameskipping. If speed doesn't get significant better
(for example just 1 or 2 FPS), than it points to the core and no gpu
option will be able to fix it.

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

21. Nov, 1999   Version 1.25

- Tststs... my MS compiler screwed it... that's what you call 
  'optimizations', Bill? Well, the ChangeDisplaySettings() func worked 
  much faster in version 1.24... of course, because it didn't change
  any desktop settings at all.
  Yeah, I didn't notice that bug (I don't use the 'change desktop settings'
  option very often, and because I didn't touch a line of code in that
  function, I never thought to test it).
  Well, thanks to all who reported me that issue, it's fixed.

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

19. Nov, 1999   Version 1.24

- Where to start? Well, filtering is much better now... no more wrong
  blended stuff, and less alignment problems. You can choose between
  two filtering modes: Standard and Extended. Standard is slightly faster,
  but some small black borders can appear and sometimes text is hard to 
  read. Much better in Extended mode :) 
  You can toggle between all three modes in the in-game menu in the
  following order: no filtering, standard, extended.
 
- Fixed a small thingie that could cause even smaller glitches. 
  Noticed in BOFIII with a special monster type (some wizard guy)... 
  Oh well, you need good eyes to see the difference :) 
  Some good news: after one year playing BOFIII (I have to admit I did
  more coding than playing ;) I've finished the game using PSEmuPro :)

- Improved extended color check: previous versions missed some color 
  cycling effects (I've noticed wrong Blaze&Blade wave effects, and 
  a choppy BOFIII combat selection). Well, fixed....

- Baddie in version 1.23: the tennis game with the unspeakable name 
  (Anna Hsgfnxbhsb tennis) was screwed up... no player animations anymore. 
  Well, I've looked hard and detected that version 1.23 did it right and
  all previous versions just worked by accident :) Well, V1.24 does it
  even more right (right-ier? hehehe), so all is looking fine again (and
  it is even faster than before :)

- Offscreen drawing: now there is a 'Standard' and 'Extended' mode. If you
  activate 'Extended', you will see some additional stuff with some games 
  (mostly splash screens). Sometimes a slight flickering can occur with
  the extended mode... you can't have it all :( Like the filtering you
  can toggle between no OD, standard OD and extended OD using the in-game
  menu.

- Anti-aliasing option... mmm, it makes no difference on my TNT card and it
  is causing some glitches with my V2. Try it and tell me if it works...

- FF7... oh my... missing battle screens... well, first I want to say: if you
  really want to play FF7 (or FF8) on the pc, go and buy the pc version.
  I agree fully with Kazz, no game running on a psx emu can beat a proper
  pc version of the same game. Yeah, some nice games are psx-only (like 
  BOFIII, Wild Arms or Spyro) and I really like it to play them with PSEmu, 
  but if you have a choice... take the pc version, it's less frustrating.
  Mmmm... back to business... oh yes... FF7 battle screens are now working :)
  You have to activate the standard offscreen drawing to get them (flickering
  will occur using the extended OD).
  And activate my special 'PSEmu Core Fixer' mode by hitting the 'INSERT' key, 
  if you want to play FF7... magically all text window borders will look fine
  (and some flashing hand cursor in the battle menu will be fixed, too).

- Last issue: I've noticed that the Detonator drivers (both 2.08 and 3.53)
  sometimes have troubles to upload texture parts using width or height of
  1 texel (biggest surprise: the 3DFX OGL drivers do it right... tststs).
  So I've decided to do a small fix if you activate 'Texture Alignment': I 
  will always upload at least 2 texels, if it is turned on. That fix helps
  to display the 'Tarzan' demo right on TNT cards, for example.

Talking about Detonator drivers: I switched back to the 2.08 reference drivers
for my TNT card. Why? Well, because they are faster with OGL... I don't see
a reason to use newer drivers (3.53), if I get a better performance using the
old ones (2.08). But, of course, that's only true for my Elsa TNT card, you have
to try it by yourself...

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

16. Oct, 1999   Version 1.23

- Speed :) Well, I've done _many_ optimizations, so you will get 
  1..20 additional FPS with this version. Enjoy :)

- Palettized texture support is back! TNT/TNT2 cards don't support 
  that texture type, so I had to do the tests on my Voodoo2 card. 
  The newest 3DFX OpenGL drivers can do palettized textures with
  alpha values, but I have to upload the palette data with every
  primitive (oh well, 3DFX and OpenGL... two different worlds), 
  so this mode is not very fast by now. Main reason I wanted to do
  pal tex support: the new nVidia GeForce256 should support it :)

- I've changed the color of my in-game menu to black... why? Well,
  I love happy, friendly colors... and there is nothing better than
  a happy, friendly BLACK :)

Have fun!

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

17. Sept, 1999   Version 1.22

- I've noticed that the texture window mode wasn't turned off in
  the RC Stuntcopter demo causing a strange display. Fixed!

- Speedup in my texture cache management. Well, if you have a PII
  (or better) you won't notice the improvement, but on the other
  hand it couldn't hurt ;)

- A small bug caused transparent pixels in movies or menu screens in
  rare occasions. Fixed, so the menu of Aeronauts (demo) is fine now.
  The demo is still unplayable slow, of course...

- If you are using a 16 bit texture quality mode (4-4-4-4 or 5-5-5-1),
  and your OGL driver supports packed pixel formats, you will see
  a small speedup in MDECs or uploaded screens (well, 1-3 FPS).

- Improved tile offscreen drawing. Repairs some baddies I've seen in
  several demos.

- This version is using Lewpy's optimized func for reading/writing GPU 
  data. Seems to be stable at last :)

Mmm, this update did take nearly a month... why? Well, main reason is
that I am running out of baddies that I can fix :) Well, I know there
_are_ still things to do (yeah, FF7 battle menus, I know...) but I need
a game/demo showing the effect to fix it, because the remaining baddies
are mostly caused by weird PSX front buffer drawing stuff and I _really_
have to take a very close look what's going on.

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

18. August, 1999   Version 1.21

- A bug crept in with version 1.20 causing a hard crash with some games :(
  Yeah, lesson learned: optimizations are _not_ always good... maybe I
  should do no optimizations anymore ;)

- Small goodie: the old Gradius (1995/96) game now works. Turn on 'Offscreen
  drawing'...

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

14. August, 1999   Version 1.20

- Fixed a problem with Windows 2000. Now PSE (and my GPU) runs fine with W2K.
  Well, I've tested W2K RC1 with some beta nVidia W2K TNT drivers, speed is 
  same as Win98 on my PC. But I am not using the new MS-OS very often with 
  PSEmu because I have no W2K drivers for my sound card :(

- Changed my window mode drawing code... maybe it helps some non-nVidea
  OGL drivers...

- And even more non-nVidia compatibility: Now the 3DFX OGL beta2.1 can handle 
  the PSE devkit mode (no more crashs), maybe it helps some other non-nVidea 
  drivers as well (kinda deja-vu?)

- Not very important, but hey! I've removed all MFC stuff from this 
  version... so my file size increased... strange, he? Removing stuff
  means increasing file size... try to figure that out ;)

- Some loop optimizations... will not result in much speed increase, but... 
  such changes do never hurt :)

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

01. August, 1999   Version 1.19

- For all Voodoo users:
  I've got the newest Win98 reference drivers for my Voodoo2 card (well, they 
  are not really new, I haven't updated my V2 for awhile ;), but they come with 
  a new OpenGL ICD! After installing the drivers, copy the file '3DFXVGL.DLL' 
  into your PSE main directory (NOT into the plugin dir) and rename it to 
  'OPENGL32.DLL'.
  The ICD is not bad, of course slower than the TNT driver, but all in all...
  They now support the 'desktop changing' very nicely (no more problems 
  noticed). To get a better speed select 'Don't care' as Texture quality,
  the more compact modes (R4B4G4A4 or R5B5G5A1) should be faster, but it
  seems that those modes are not optimized with the new OGL driver... oh, well...
  To get a better quality you should enable 'Dithering' and it's better to
  disable 'Advanced blending' else things will be slow again...
  As a small gooddie I could track the reason why my GPU was crashing on PSE 
  exit with the 3DFX drivers (not a bad crash, but hey!) and I've found a way 
  around that :) Wasn't my fault, of course...

- I've noticed that the new Voodoo OGL drivers doesn't work with my 'Paletted 
  textures' mode anymore. Nobody did report that his Matrox/ATI/S3/... card
  could use that mode so I decided to do a major cleanup: there are no
  selectable texture modes at all in this version of my GPU. Should be less 
  confusing and it _really_ makes coding this GPU a bit easier :)
  When you go to the config dialog, you will see a new 'Extended color
  check' option... that's the replacement for the old 'SubTextureUpdate (best)'.
  If you disable it, you will get the old 'SubTextureUpdate (good)'. Yup, 
  two modes survived the cleanup...

- New option: 'Texture priorities'. What's that? Don't know... hehe, just kidding :)
  Mmm, easy explanation (hope so): OpenGL drivers are trying to establish
  a working set of textures in your cards VRAM. When the option is activated
  the GPU will help them to decide which textures are more important than others.
  Well, best to use this option with the 'Heavy caching' option, it will 
  _really_ help... Without 'Heavy caching' the texture prios should be more
  or less useless, at least on video cards with 16 MByte VRam, it can even make 
  things worse because of more internal calculations. If you have a card with
  less Ram, you can give it it try, of course...
  But (yeah, repeating myself, just to be sure), best thing to do: 
  check 'Heavy caching' and 'Texture prio' in union... 

- Not very important, nevertheless fixed: if you are using the PSE devkit mode,
  you can leave a game with ESC and re-enter it by hitting the 'Run' button 
  again. Some users seem to use that to change cheat codes while playing. 
  Mmmm, if you are using the fullscreen mode it can happen that the screen 
  stays black (at least with the nVidia drivers). Just quit and enter again 
  until the display is fine.
  
--------------------------------------------------------------------------

23. July, 1999   Version 1.18

- Even more special handlers for FrontBuffer drawing... small help for OpenGL
  drivers which can't do drawing to the front buffers (normally such drawing
  is really stupid, even on the PSX... got it, PSX game developers?).
  Thanks to SEGU for the hints :) But, sorry, it doesn't help with FF7 battle 
  menus yet, I really need the game to fix that :(
  And don't forget to activate 'OffScreen drawing'... 

- Small changes to my polyline function. Now the text in the S.C.A.R.S demo
  will be OK, but the polyline code still doesn't 'feel' right... oh my,
  at least I haven't noticed any bad side-effects.

- Corrected tile offscreen drawing: try Anna Kournikova's Smash Court Tennis...
  the demo version works fine :)

- Fixed: the Tekken 3 flashing polygon bug. All the honor goes to Lewpy, he
  found a way to get around that problem. Hail to the King (or God save the
  Queen, or something like that... ;)

- The internal pixel format color depth now depends on your selection in
  the GPU config. In the previous versions the 'Color Depth' option
  (16 or 32 Bit) was only used for the 'Change desktop settings', to switch
  the desktop in the wanted color mode. Now the GPU tries to set the selected 
  color depth even if you don't want (or simply can't) change the desktop. 
  Maybe that one will help some OpenGL drivers for more speed/compatibility/quality,
  but it makes no difference for nVidia TNT drivers.

Oh, well, if you have a TNT/TNT2 card, try nVidias new reference drivers 2.0.8. 
Working fine here :)

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

19. June, 1999   Version 1.17

- more speed: I could use a little trick in my SubTexture update modes,
  so some games will be faster. Gran Turismo now jumps from 12 FPS to
  20-25 FPS :)

- faster and more compatible: complete rewrite of my on-screen detection... 
  causes a speed-up even if Offscreen-Drawing is enabled and more thingies 
  will be displayed.
  If you were seeing some missing stuff in your game (hehehe, it's hard to 
  see if something's missing ;), try to turn on offscreen-drawing. 
  If that option is enabled I try some nasty FrontBuffer rendering... 
  if your OGL driver can handle this correctly! (no problems with 
  the nVidia 1.88 drivers and the new Q3 OGL drivers for voodoo cards,
  no chance with the 3DFX OGL beta 2.1)
  So the menu from Soul Reaver is now displayed and I've noticed some splash
  screens appearing. It doesn't help with the battlemenu in FF7, though :(
  
- Some hidden gooddie... my Tomb Raider 3 demo plays fine, but some stuff 
  is too black, so you can't see Lara's face or the inventory. I've found a 
  way around that (no other GPU I've tested can handle TR3). What do you have
  to do if you want to take a look at Lara?  Hit the <INSERT> key... yup :)
  Hit it again when you can't stand Laras face anymore ;)
  Well, it is a special fix, I don't know if there is a general PSX rule for
  it, but turning on that hidden option can cause wrong looking polygons 
  within other games. So you have to do it manually... if something is
  looking wrong it is _your_ fault ;)
  Well, and I don't know if the full game is running with PSEMU...

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

12. June, 1999   Version 1.16

- nVidia released the new detonator drivers (version 1.88)! They give an
  overall speed improvement with my GPU on TNT cards (sometimes up to 10 FPS) 
  and are including new OpenGL extensions.
  So I could improve my blending func :)
  If you look into the GPU config dialog you'll notice that 'Slow blending'
  has changed its name into 'Advanced blending' again. That's because the
  new nVidia OGL drivers (and the newest ATI drivers, so I've been told) can
  do PSX-like blending in one pass. As a result turning on this option will
  not cause such a big slowdown anymore, and things will look nicer
  (no more wrong double-blended, intersecting stuff).
  The GPU will auto-detect if the OpenGL extension is available in your OGL
  driver and use it with activated 'Advanced blending'. You can see if it
  works, in the GPU menu a small shining sun should appear... 
  No sun, no fun... 'Slow blending' instead... :(
  Oh, well, try 'Spyro' with the new blending...
  For easy testing: my GPU in-game menu now also has the option 'AB', so you
  can turn it on/off and look if this game is looking better...

- Complete re-write of my texture window funcs. Includes stretching for
  non-power-2 texture windows, I don't think TWs could be done better
  with OpenGL. The new funcs repairs most of the wrong looking stuff with
  Ridge Race Type 4 (I hope some things with FF7 will be repaired, too. 
  Hey, Per, send me a mail about it :)

- Done, but not included in 'official' release... very special debugging
  funcs that (hopefully) will reveal still missing stuff in my GPU. Testing
  the various games/demos will take some time, but I have really high hopes
  to find the last oddities... wish me luck...

Some notes to my 'Heavy caching' option: 'Heavy' means 'Heavy'... so if your
video card has less than 16MByte RAM, it will be most of the time a 'Heavy 
swapping memory slowing things terrible down' option... you are warned...


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

05. June   Version 1.15

- Window mode: If you want to play and type your homework at the same 
  time ;) The window size can only be changed in the GPU config, it's
  more stable that way. Window size can be from 100x100 up to 
  16384x16384...

- Improved (hope so) polyline funcs. Should cure some baddies, at least
  Wild Arms will run much better!

- At last I've found a way around those flashing black rects I've seen
  in the Tekken3 demo fighting against Lei. I call it my 'fuzzy adjustment'.
  Well, that's done internally, so there is no need for any config option :)

- And here it comes... speed... a new GPU option for the SubTexture update modes...
  I've got Blaze&Blade yesterday and it runs fine with PSEmu. 
  But... my GPU could only run it with 6 FPS on my TNT card :( 
  B&B works fine on my V2 (Lewpys GPU) with >20 FPS, so it isn't the PSE core... 
  kinda challenge... I've looked _very_ hard what's going on and found out
  (again) that it's very bad for PSX emulation if you have a card without
  paletted texture support. But then I stopped crying and typed until my
  fingers bled ;) I've created a whole new set of caching funcs, available
  for the SubTexture update modes, you can activate them in the GPU config,
  the option is called 'Heavy caching'. Why 'Heavy'? Because it will need
  some system resources... 16MB additional system Ram and _really_ more 
  texture memory as without this cache. So if your machine hasn't the
  requirements, turn the option off :(

  What will you gain? Depends on the game... sometimes nothing, sometimes
  you may even loose some speed, but sometimes... the black dove flies...

  Here some FPS (PAL demos/games):
  Blaze & Blade:		6  -> 25 FPS
  Treasures of the Deep:	9  -> 20 FPS
  G-Darius:			20 -> 40 FPS
  Spyro:			25 -> 30 FPS

  Nice, isn't it? 

Last hint for Blaze & Blade players: You can also try the 'RGBA texture' mode!
B&B is one of the few games which will run very fast with it (30 FPS). We all
can be glad that I've tested this mode _after_ I've written the 'Heavy caching'
option else it wouldn't exist ;)

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

30. May, 1999   Version 1.14

- Added more (higher) screen resolutions. Highest resolution I can run on 
  my TNT card is 1600x1200 with 16 Bit colors. Note: don't use a higher
  resolution if your monitor doesn't stand it...
  Also wanted to do a Window mode, but it did freeze occasionally with my 
  card, so it's disabled until I'll find a safer and better way (I hope it
  is not a bug in the nVidia TNT drivers).

- Also changed (again) the 'Change Desktop settings' option, maybe it will
  work better with non-TNT cards... I'll keep on trying... 

- If you are wondering if your card is running OpenGL in Software only 
  (without any hardware acceleration), hit the <DEL> key to display my
  GPU menu. If there is a sad smiley (I wonder if you can call that one
  smiley at all...) at the end of the menu line, you can be sure it IS 
  the Microsoft OpenGL Software mode... bad luck. Try to get the newest 
  OpenGL drivers for your video card and install them properly, else things 
  will be very slow.

- Added two buttons in my GPU config dialog to choose quickly a 'nice', good
  looking setting or a 'fast' one. The buttons will help all the newbies
  which were a bit lost with all the settings the GPU is offering. So you
  don't have to send me mails, asking for the 'best' settings for your
  hardware ;) Of course you still should try turning on/off different options,
  if it's fast/nice for me it doesn't have to be the same for you... 
  
- The usual internal optimizations, things can only get faster with them :)

Next: 
Well, my optimizations are not finished yet, it's very tiresome to try to speed
up a func, doing benchmarks and searching new bugs or strange effects with my
testing games. So the next versions will not be released as fast as the previous
ones :(
But there is also some good news: nVidia wants to include new OpenGL extensions
in their next driver release (the newest ATI ICD's already have them...), so 
I hope I can speed up my blending modes in one of the next versions of the GPU. 
I can't wait to get the new nVidia reference drivers :)

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

??. May, 1999   Version 1.13

Missing that version in your wonderful GPU collection? Hehehe...
There's no (officially released) Version 1.13.
No, I aint superstitious, but I am always skipping that number in my
progs (kind of tradition), if you want to sell software to make a living
you have to be sensitive about the feelings of your customers :) 

My OpenGL GPU does a heavy flickering in all of your games?
Here's a note I posted to some messageboards just in case you've missed it:

>If you are seeing rapid flickering within all of your PSX games using
>a TNT card with the nVidia Detonator drivers, be sure to check the following:
>
>If in your Windows registry the following key is set:
>
>\\HKEY_LOCAL_MACHINE\Software\NVIDIA Corporation\RIVA TNT\NV4Tweak\PowerUser=1
>
>you will be able to change more settings in the Windows display properties.
>
>Look for a tab named "OpenGL" in your TNT display properties.
>
>There will be an option called "Enable buffer flipping for full screen applications".
>You have to TURN IT OFF. That's the default setting and that's the way things will
>be working fine without any flashing...


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

20. May, 1999   Version 1.12

- Biggest change: improved Bilinear Filtering. 
  Sometimes only a few words are needed to set your mind on the right track...
  Thanks to Lewpy, always nice talking to you on IRC :)
  Yeah, now it's done: BF without those annoying black lines. Don't hesitate
  to try this feature, some racing, fighting or jump'n'run games will
  be looking really nice :)
  But keep in mind: the PSX doesn't support BF :( so all a GPU can do is
  trying to minimize the side effects which creep in with filtering. If you
  are seeing _new_ glitches while using BF, bad luck...
  Known BF effects with some games: 
  * gaps between textures, or textures seem not to fit smoothly together
  * some blending modes are too bright
  * blurr effects
  * unreadable texts
  Maybe I do some BF fine tuning in the future, but for now... just go on and 
  try it, many games will look great :) 

- For all users who were reporting some "blinking" displays: I've changed
  my screen clearing code a bit, maybe it will work better with your games.
  That blinking stuff is hard to fix, because I haven't found a 
  game/demo showing that effect. And I can only hope the new changes don't
  make things worse in other games :(

- Another chapter of the book "1001 stupid things PSX game developers can do":
  using Gouraud shaded primitives without wanting to shade at all.
  It was detected with the 'Asterix' demo (causing wild flickering colors)
  and it's fixed with this version.
 
- Ooops, the next one was from the book "1001 stupid things GPU coders can do" ;)
  Just 'forgotten' to set some color infos with Gouraud shaded lines. Now those
  important health bars within some games (Tomb Raider II demo) will look right.

- Improved screen uploading after disabled PSX displays (thanks to Lewpy), so
  more startup/loading/title screens will be shown

- Slightly speeding up some funcs. As always it depends how a game is coded...
  Well, I spent much time testing if out-of-order drawing using Z-buffering could
  speed things up with OpenGL. Sad but true: speed wasn't really higher and I didn't
  even try to implement correct blendings :( 
  Waste of time for the GPU, increased experience for my person :)

Next version: There are still some glitches I am hunting, biggest problem seems to 
be that killing one means often to create two new ones in other games :(
Still to be done: speeding up the offscreen drawing funcs. Strange, every time I am
looking on that part of my code I find something more important to do ;)
But you can always turn OD off for better speed...

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

13. May, 1999 Version 1.11

- Added frame skipping. You can turn it on in the configuration dialog
  or in the in-game menu (FS). If speed is falling below the FPS limit
  a frame will be skipped. So the FPS limit value will be used by both, the 
  FPS limitation and the frame skipping option. 
  The GPU will just skip one frame in a row, so you will get twice the 
  speed max. More skipping would really be looking ugly...
  You can also try to turn on both, Frame skipping and Frame limitiation,
  skipping will speed things up while limitation tries to smooth things.

- More speed even without FS :) if you are using SubTexture update modes
  (best with TNT cards). Done by some optimizations and a smarter 
  Texture invalidation func. That one will give best results with games
  which are using frequently data to vram uploading for animations 
  (mostly 2D games).
  
Well, got some new demos yesterday, so perhaps I can increase compatibility
with the next version. Wait and see...
But what I want to do most is to speed up things further, so I will try
to do some more complicated stuff. Maybe it kicks the GPU to a higher level,
maybe it's just a waste of time... Either way it will be a lot of work :(

On the heights, all paths are paved with daggers.
- Old Seanchan saying (R.J.)

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

07. May, 1999 Version 1.10

- Got 'Wild Arms' (thanks to Rene), so I could improve Texture Windows, 
  window borders will be displayed correctly now.

- Do you use 'SubTexture (good color table)' as texture mode and some 
  glitches or wrong color cycling occurs in your game? 
  Try the new 'SubTexture (best color table)' mode. Oh, well, this mode 
  has to make more color table checks and (depending on the game) more 
  texture uploading, so don't expect it to be faster...
  I've tried to speed up my 'SubTexture' cache a bit, but I think in most
  games you don't see any difference.

- Fixed small prob with switching dithering (DI) in the in-game menu

- New way to set the original desktop resolution when leaving PSE (the 
  old one caused problems on some cards). Don't know, if it will help...

- Func for drawing rects and fading screens didn't work well in 
  Version 1.9 :( so I've changed it back to normal...

- drawing a box beneath the in-game menu for fixing unreadable FPS results
  with some games.

Next on my to-do list:

Frame skipping... seems to be the most wanted option... don't know why ;)

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

01. May, 1999 Version 1.9

A whole lotta changes...let's start with the minor ones:

- Fixed bug that causes a GPU crash in very special cases (I've never
  heard of a PSX TextureMode No 3, seems some games are coded a bit sloppy)

- Improved 'Texture alignment' option. That's for all Breath of Fire III fans.

- Added caching of texture windows. Will speed up certain games, still 
  not perfect :(

- Added more Offscreen Drawing functions. Hope that more missing stuff will
  show up. Nevertheless most of the funcs are done 'blind folded', meaning
  I couldn't test it because I haven't found a game using them. Also 
  'Offscreen drawing' will be a bit slower yet, I will try to speed it up
  with one of the next versions. If your game doesn't need OD, turn it off.

- Now the more important things: added better frame rate display and a small
  option switching menu. It will work with all OpenGL drivers (even with
  3DFX OpenGL) and no more flickering at all. But... small loss of speed
  while it is dislayed, so turn it off if you don't need it.
  How it works: Hit <DEL> and the Framerate und the menu will appear. It
  looks like: 'FPS XXXX.X   FL< OD  AM  TA  FI  DI  TW  *' 

  What does it all mean? Here's the legend:

  FPS XXXX.X: frames per second, higher means better :)
  FL : Frame rate limiter
  OD : Offscreen drawing
  AM : Alpha multipass
  TA : Texture alignment
  FI : Filtering
  DI : Dithering
  TW : Texture window
  *  : Smiley (read next section)
  <  : Arrow for selecting

  Below every option there is a small box, if the box is filled the option 
  is active, empty box means inactive. 
  You can move a small arrow with the <PAGE UP> or <PAGE DOWN> keys to an
  option you want to toggle. 
  Just hit the <END> key to switch the selected option on or off. Changes will
  be done immediatly, you can see how the framerate is affected if an option
  is on or off.
  If you have found a setting that suits your game just hide the menu by 
  pressing <DEL> again. Nice, eh? 
  I don't store changed options permanently, you have to do that still in the
  main configuration dialog.

- But what's that smiley in the menu? When is it shown and why? That's related
  to the second major change within this release: Texture quality, a new
  option in the config dialog, and if you have a non-3DFX card I think you 
  should check it... You can choose the following texture qualities in all
  non-paletted Texture modes : 'don't care', 'R4 G4 B4 A4', 'R5 G5 B5 A1'
  and 'R8 G8 B8 A8'.

  * 'don't care' is how the previous versions of my GPU were working, so 
    selecting it means no gain and no loss... just to be sure
  * 'R4 G4 B4 A4': Every color info has 4 bits, so texture colors are not as
    fine, but... if you are having a newer video card (TNT), I can use a
    special trick causing less memory transfer to the video card which speeds  
    things up :) If your card can do that special trick, I will show that
    smiley mentioned above. So if you see it, be happy :)
    But don't expect to much... we are talking about 2-5 FPS, depending how 
    a game is coded.
  * 'R5 G5 B5 A1': texture colors are getting better, but the 'Alpha Multipass'
    mode can't be done with just one alpha bit. Many games don't need AM
    (Spyro, Tekken) so you can select this mode for better colors. This mode
    is as fast as R4G4B4A4, because (depending on your card) I can do the
    special trick again, the smiley will tell you if it works.
  * 'R8 G8 B8 A8': Best colors your PC can offer, at the cost of speed. If game
    speed is OK within that mode on your PC, use it! No smiley will appear, 
    though.
  
  Why did I mention 3DFX cards above? Because the 3DFX OpenGL (Beta2.1) ignores
  all quality requests, you will ever get 'R4G4B4A4' and I can't do my special
  smiley trick with them (if you want to see the smiley with 3DFX, change to the 
  'paletted texture' mode, I've rewarded that OpenGL extension, too). Or go and
  use Lewpy's GPU, than the smiley will be your own face...
  Maybe some cards can change the texture quality but doesn't allow my smiley
  trick (no smiley shown in frame rate display), bad luck, no speed gained.
  But all TNT cards should have the ability and I believe the newer ATIs and maybe
  the newer Matrox cards can also handle it.
  Last tip for TNT users: don't select 'don't care' quality, go for 'R4...' at 
  least. Texture colors are the same in both quality modes, but speed is
  higher with smiley. If you have 'Spyro' or 'Tekken3' disable OD and AM and 
  select 'R5...' quality for best speed.

So far so good (so what?)

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

25. April, 1999 'last but not least' ;) Version 1.8

- The gooddie of version 1.7 (see below) was messing up my framerate 
  limitation... fixed! I swear, I will do more testing before the next
  release!
- But, no pain no gain, now I've found a way to display the FPS rate
  without loosing much speed... it's flickering alot, but who cares?
  It's readable... Just press <DEL> to show it and <DEL> again to hide it!
  Oh... and it will not work with 3DFX OpenGL... :(

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

25. April, 1999 (again) Version 1.7

- Ooops, forgotten to remove some debug code in 'SubTexture update' modes
  with version 1.6, sorry... fixed now
- A small gooddie: found a save way to show up some of the missing startup
  screens of some games (Spyro, BOFIII), hey, even Lewpy's GPU doesn't
  display Spyro's startup screen (yet).

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

25. April, 1999  Version 1.6
Added:
- Alpha MultiPass option. My personal nightmare... I knew the PSX 
  ability to draw opaque texture areas within transparent blended texture 
  parts when I started to code this GPU, but I couldn't find a way to do
  it with OpenGL without losing a lot of speed. Until now... :)
  If you have seen transparent looking stuff in your games where it was
  supposed to be solid (for example: Apples in Crash III, status display in
  MediEvil, some objects in BOF III), turn Alpha MultiPass on, all will
  be fine. OK, maybe you'll loose some speed, but it could be much worse.
  Your OpenGL driver has to support Alpha bits to do it right, but I've 
  seen no problems with TNT or 3DFX OpenGL drivers. If you see black
  rectangles around objects, bad luck, you have to turn off this option.
- Some loop optimizations done... not much speed gained, I fear, but hey!
  (I am hoping no new bugs crept in)
- Fixed bug in the 'SubTexture update (good color table)' mode, now 
  it should be nearly as good looking as the "RGBA Texture" mode. Most of
  the reported glitches in that mode should be vanished :)
  Also fixed a bug in the 'paletted texture' modes.
- Screenshots. Press <F8> and a nice looking bitmap will be generated in
  the 'Snap' sub-directory of PSEmu Pro. Please: don't mail me any unwanted
  screenshots if you are seeing some glitches in your games, first ask if
  I want to take a look at the bitmaps. But feel free to mail them to the 
  compatibility page :)

What I am doing next:
- Caching of textured windows. Speeds up games like Ridge Racer 4 and 
  Deathtrap Dungeon. To be honest: I wanted to include that within version
  1.6 but I have seen unwanted effects, so I disabled it again by now.
  If I have the choice to do something right or to do it fast I will ever
  take the 'right' way (as far as I can see what is 'right'), sorry...
- some research on clearing the screen (flickering) and maybe a new 
  texture handling mode (I have some ideas, we'll see).

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

19. April, 1999  Version 1.5

Added:
- Fix for nasty non-shaded textures bug: no more color flickering with 
  Ridge Racer 4 and LBA (reported by panos). 
- Slight improvement of texture colors

I hope that some more flickering will stop because of this fix...

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

18. April, 1999  Version 1.4

Added:
- Real Textured Windows support. Tested with BOFIII, Ridge Racer 4 (demo),
  Deathtrap Dungeon (demo), Treasure Of The Deep (demo). Works fine as
  far as I can see, so turn the config option "Textured Windows" on :)
- Off-Screen Drawing (Lewpy TM). It 'repairs' some wrong looking stuff.
  If you don't see any graphical mistakes (but who doesn't?), disable this
  option for a bit more speed.
- Some internal bug fixes

Things to come:
- Cleaning up the GPU source (as always), find more speed (as always),
  searching for bugs (oh yeah)

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

11. April, 1999  Version 1.3

Added:
- Some transparent areas were displayed black. Should be fixed.
- Fixed cache in "SubTexture update" modes. That bug caused wrong colored
  textures in certain games.
- Added some inline assembler functions to speed things up (but I believe
  the cache fix mentioned above will consume most of the speed gained). 
- Most important: improved the standard blending mode. If you were using
  "Advanced blending" to get right looking blendings, you wont need it any
  more (in most games), turn it off!
  I have renamed the "Advanced blending" option into "Slow blending", it is
  still there if you want to use it (some texture colors could be a bit 
  brighter), but that option slows down the GPU heavily.

What's next:
- Offscreen drawing. Lewpy explained me what that feature is doing in his GPU,
  and I am hoping to include it in my next version. If you are still seeing 
  wrong colored textures with version 1.3 in your game, stay tuned, that 
  option will repair things. It's a lot of work, please be patient.

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

7. April, 1999   Version 1.2

Added:

- RGB24 frame uploading, most MDECs should work
- fix for clearing screen
- enhanced clipping tests, could speed things up in certain games
- fix for color function, so Tekken3 displays shouldn't be black anymore
- automatic filtering on screen uploading, looks fine
- handling of "PSX Display disabled" mode

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

5. April, 1999   Version 1.1

Added:

- desktop resolution & color depth can be changed within the GPU
- "Advanced blending", better but slower alpha blending (and still not 
  100% right)
- Framerate limiter
- Frame uploading, so intros and MDEC will appear (there are still
  some modes I am not supporting, sorry)
- fixed offset & clipping function, should be OK now

To be done:
- ... (oh my)

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

1. April, 1999   Version 1.0

To be done:

- real textured windows support
- MDEC (but because PSE doesn't support it right, its not on high prio)
- Alpha blending modes are not 100% correct... some of them are just some
  fast hacks... hope I could fix that in the next release
- as always... find more speed... but I want also to include a frame rate
  limiter for games that are running to fast...
- maybe some hotkeys, there are none at the moment, so please leave your 
  keyboard at peace...
- Change desktop resolution & color depth as configured in the GPU config
- and surely a lot more not mentioned here...

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

-------------------------------------------------------------------------- 
- OLD D3D DX7 VERSION INFOS
-------------------------------------------------------------------------- 

09. December, 2000    Version 1.41

- Support for the gpu snapshot function... if the
  main emu is supporting making snapshots, you 
  usually can press the "F8" key, and a bitmap in
  the emus "SNAP" directory will be done
  (some big sized 24 bit RGB bitmap :)
  It will not work with the first release of ePSXe!

The following list is taken from the OpenGL readme,
you can skip that, if you have read it already :)

- 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 Offscreen 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.


"I'm singing this note 'cause it fits in well
 With the chords I'm playing
 I can't pretend there's any meaning here
 Or in the things I'm saying"
- "Gettin' In Tune" - The Who

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

23. November, 2000    Version 1.40

- You can change the brightness (gamma value) in 
  fullscreen modes, using the scrollbar in the 'Select
  device' window.
  Full credits are going to David Walters, he even did send 
  me his D3D code, because he wanted the gamma control 
  so badly :)

- New info sign in the gpu in-game menu: 'A'... stands
  for 'Anarchy', eh, 'Analog pad mode', yup...
  That's an information given by the main emu core,
  of course, the gpu plugin doesn't care about the pad
  emulation :)

- Small optimization with unfiltered MDECs, that one is giving
  you a few more frames per second in 16 bit color modes.
  Also fixed a small bug with unfiltered MDECs, which could
  cause garbage rows on the bottom of the screen.
  
- Tweaked the texture coords a little bit, the results are now
  nearly as fine as the OpenGL plugin, less pixel flickering  
  will happen in some games.

- Talking about FPS: the FPS calculation is done completely
  different with the 1.40 versions, if you are having 50 FPS
  (PAL) or 60 FPS (NTSC) now, the game is running at
  full speed. Of course you can't compare the FPS results
  with my previous plugins anymore, or the ones done by 
  Lewpy, Segu or Kazz. 
  But now the frame limitation will be much better with some
  games and mdecs :)


"There are of course many problems connected with life, of 
 which some of the most popular are
 'Why are people born?' 
 'Why do they die?' 
 'Why do they spend so much of the intervening time 
  wearing digital watches?'"
- "The Hitchhikers Guide To The Galaxy" by Douglas Adams

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

29. October, 2000    Version 1.39

- Well, all the new features of the OpenGL plugin
  can also be found in the D3D ones (screen centering,
  'Speed Freak' fix, 'Horned Owl' fix, offscreen drawing
  polylines and drawing area).

- I've also did a small trick to avoid problems with
  fullscreen modes in the same resolution as the
  desktop.

- Thanx to anyone reporting that the 'Frame skipping'
  option wasn't stored in the registry. Now it will
  be saved, of course.

- A new fullscreen mode (400x300) has been added,
  because of a nice request. Well, I don't use it, but
  maybe users with less powerful gfx cards want to
  give that mode a try.
  
- Ah, yeah, I've installed my old 3DFX V2 card again
  to do some checks... well, using the latest V2 drivers
  I've found that the V2 doesn't need the 'fullscreen
  flipping' mode anymore... so I suggest to all users
  to deactivate that option in my gpu config, without
  it the game compatibility will be improved.


"Never shall darkness nor light prevail, for one must
 balance the other; yet many of light will seek to
 banish darkness, and a multitude shall seek to cloak
 the light; but the balance will destroy all who seek 
 the full ends of darkness and light."
-"The Death Of Chaos", by L.E. Modesitt, Jr.


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

08. October, 2000   Version 1.38

- And again, same as the OpenGL port... kind of
  'maintenance' update.

- Well, and I am in a 'faithfull' mood today :)


"Shall I see tonight sister, bathed in magic greet
 Shall we meet on the hilltop where the two roads meet.
 We will form the circle, hold our hands and chant,
 Let the great one know what it is we want.

 Danger is great joy, dark is bright as fire,
 Happy is our family, lonely is the ward."
- "Witches' Song" by Marianne Faithfull

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

24. September, 2000   Version 1.37

- Same as the OpenGL plugin: fixed a position wrap glitch,
  improved offscreen drawing with 4 bit palettized sprites,
  and my new option 'special game fixes'.
  Look at the OpenGL 'version.txt' for further details.

- Oh yeah, and some good news for all 3dfx V2 users:
  you can use my D3D plugins again (I screwed the support
  with V1.35)... 
  Just enable the 'Fullscreen blitting' option in the 'Select 
  device' window. Well, using the blitting _could_ cause 
  flickering with some games, so only enable it if my
  gpu will not work without.
  Thanx to Fredrik Staaf for doing the V2 tests (and check
  out <http://enchained.rajraj.nu> if you like some honest
  guitar tunes :)
 

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

17. September, 2000   Version 1.36

- For infos about the 1.36 core please look at the 'version.txt'
  of the D3D DX6 plugin :):)

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

11. September, 2000   Version 1.35 

- Mmm... should I do some copy, cut and paste from the
  OpenGL readme? Basically all new features from the opengl plugin 
  V1.35 are now available in the d3d ones, too.
  The new features include: improved auto-detection of the game's FPS
  limit, new Offscreen drawing funcs and the full vram update option.
  For more details check out the OpenGL version text 1.35

- The configuration dialog is now a little bit easier to use,
  I've removed some (now always activated) options. Some difference
  compared to the OpenGL port: the 'unfiltered framebuffer' option
  will give you a bigger speed gain in d3d as in opengl, because
  I can access the buffer in a more direct way with DirectX... though,
  it can happen that not all cards are able to use the new 'unfiltered'
  option. I've tested it on nVidia and 3dfx cards, Matrox and ATI 
  cards should also work, but if you are having troubles, simply
  turn this option off.

- as always: if this dx7 plugin doesn't work, try the dx6 plugin :)

"The line it is drawn
The curse it is cast
The slow one now
Will later be fast
As the present now
Will later be past
The order is
Rapidly fadin'.
And the first one now
Will later be last
For the times they are a-changin'"
- "The times they are a-changin'" - Bob Dylan


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

12. June, 2000   Version 1.33

- Yup, finally I've decided to do a D3D psx gpu as well. 
  Please read also the included 'readme' file, even if you
  are familar with my opengl plugin, the readme contains 
  important infos about the plugin configuration.
  
- Well, the version number is 1.33, even if it's the first release.
  That's because this plugin is at the same level as my opengl 1.33
  plugin, which means: all 'basic' functions are the same, even the
  texture caching and all other options are doing the same job as
  the opengl version (well, there are some differences, see below).
  Using this plugin, you can easily check out how good (or bad)
  your gfx card opengl drivers are working: I've tried to replace the
  OpenGL calls with the D3D ones as close as possible, so both
  plugins should run at nearly the same speed... if the d3d version
  is much faster, flame your card vendor for the bad opengl support,
  if the opengl version is much faster, do the same about the d3d
  support :)
  
- I have tested the plugin on my GeForce and Voodoo3 card.
  Generally I can say: 
  a) D3D is slightly slower on nVidia cards than OpenGL
  b) D3D is a lotta faster on 3dfx cards compared to their OpenGL stuff
  Of course I am hoping that D3D will also help all ATI, Matrox,
  S3 and Intel gfx card users... mail your experiences with this
  plugin to: BlackDove@addcom.de
  Oh, and yes: more vram will help... you should have at least an
  8 MB card... I don't think that less vram will work.

- You need DirectX 7. Without it the plugin will not be listed in the
  emu plugin selection dialog. 

- Differences between the OpenGL and D3D plugin:
  * With D3D you can select the gfx device if you have more than one 
    gfx card installed. That's not possible with OpenGL.
  * I have removed some options from the d3d plugin: Wireframes, 
    anti-aliasing and the 3d glasses option are not available
    with d3d. All three options are not important, though.
    Modern cards let you enable anti-aliasing within the d3d display
    properties, and the 3d glasses support will be automatically
    enabled with the "Enable Mask bit detection' option.
  * The 'extended' offscreen drawing is working different. I couldn't
    find a way to do it exactly as with opengl, so I coded an 
    alternative... 'extended' OD is trying to display those nasty
    frontbuffer stuff a game coder can do with a real psx, it's 
    sometimes used for in-game menus. Well, the d3d version
    will not work as fine as the ogl one, but it's better than
    nothing.
  * Something I really like with D3D: when you select 5-5-5-1 textures, 
    there will be no black areas when you enable the "Alpha multipass 
    (opaque stuff)" option. That's because I can use color keys
    with D3D (hi Rasky :) for doing transparency effects.
    So the best choice for 3dfx cards (up to v3) is the "5-5-5-1" 
    texture mode, because such cards can't do 32 bit (8-8-8-8) textures.
  * The	'extended' filtering modes are just working perfectly with
    the 'Dynamic' caching mode. See also the readme file.
  * I have noticed flickering splashscreens sometimes using d3d... maybe 
    that's a vsync issue (I have disabled vsync in my display 
    properties). Have to do more checks to be sure, though.
  * The 'palettized texure' mode is just a hack, it will not work fine.
    Well, I am still waiting for nVidia GeForce D3D drivers which can do
    pal textures, so I can do better tests what's wrong with my code
    (there are some flickering texture effects on my v3 with pal textures).
  * There are three "Advanced blending" settings with D3D. Some cards
    can't do that modulation in hardware (3dfx), you will get no
    textures when you select "Hardware" blending with them. You can
    activate the (slower) "Software" blending, though. Or turn it off,
    of course ;)


"I been writing a song
 We all been singing along
 It's like a wild schizophrenia
 wondering where we belong!
 Sling it all out the window
 Start all over again..."
- Psychomodo, Steve Harley and the Cockney Rebels

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

-------------------------------------------------------------------------- 
- OLD D3D DX6 VERSION INFOS
-------------------------------------------------------------------------- 

09. December, 2000    Version 1.41

- I think you know where you can find the release notes :)

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

23. November, 2000    Version 1.40

- Please check out the DX7 plugin release notes for 
  version details... pfff... tell me, why am I still doing this 
  version.txt file? Tststs
  
-------------------------------------------------------------------------- 

29. October, 2000    Version 1.39

- Please check out the DX7 plugin release notes for 
  version details.

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

08. October, 2000   Version 1.38

- Yeah, no notes here (check out the other plugins readme files
  for infos), just more quotes to test your faith ;)


"Well, I know that you're tired of living this way,
 We've been trying to get high without having to pay. 
 The walls are all empty, it's not a permanent state,
 Just let me tell you that it's not too late.
 You're a brain drain, you go on and on like a blood stain."
- "Brain Drain" by Marianne Faithfull

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

24. September, 2000   Version 1.37

Oki, just a small copy and paste from the dx7 plugin (mmm,
I think I am getting to the point where I have to pack all
gpu plugins together, so I have to do just one readme) :

- Same as the OpenGL plugin: fixed a position wrap glitch,
  improved offscreen drawing with 4 bit palettized sprites,
  and my new option 'special game fixes'.
  Look at the OpenGL 'version.txt' for further details.

- Oh yeah, and some good news for all 3dfx V2 users:
  you can use my D3D plugins again (I screwed the support
  with V1.35)... 
  Just enable the 'Fullscreen blitting' option in the 'Select 
  device' window. Well, using the blitting _could_ cause 
  flickering with some games, so only enable it if my
  gpu will not work without.
  Thanx to Fredrik Staaf for doing the V2 tests (and check
  out <http://enchained.rajraj.nu> if you like some honest
  guitar tunes :)
 
-------------------------------------------------------------------------- 

17. September, 2000   Version 1.36

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

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

11. September, 2000   Version 1.35

- oh my, not another version file containing the same notes
  as the opengl and dx7 plugin ;) Check this files out for
  infos...

- for all user which already have got a private version 1.35 dx6 
  plugin... use it. 
  For versions sake I've crippled this public release a little
  bit, so it is exactly behaving like the 1.35 opengl/soft/dx7 
  plugins. There will be a version 1.36 of all plugins in awhile,
  of course :)

'There must be some way out of here', said the joker to the thief
'There's too much confusion, I can't get no relief.
Businessmen, they drink my wine, plowmen dig my earth,
None of them along the line know what any of it is worth.'
'No reason to get excited', the thief, he kindly spoke,
'There are many here among us who feel that life is but a joke.
But you and I, we've been trough that, and this is not our fate,
So let us not talk falsely now, the hour is getting late.'
- "All along the watchtower", Bob Dylan

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

19. July, 2000   Version 1.33

- This version is a special port of my d3d (dx7) plugin... it uses 
  the dx6 d3d interface and has a slightly different texture handling.
  If you don't have any problems with the dx7 plugin, you don't need
  this one. But some none-nVidia/3dfx gfx cards (like the Matrox
  g200/g400 ones) will work better with this dll, so try it if
  you are having troubles.

- No readme file this time. Just look into the d3d dx7 readme file
  for further informations how to configure and use this plugin.

- Well, this version is still using my 1.33 core... but the 1.34 core 
  is on its way :) The next gpu plugin release is not far away, I 
  think and it's no OpenGL, DX7 D3D or DX6 D3D gpu... and no GLide 
  one, too :P


"Well, I hit the rowdy road and many kinds I met there,
many stories told me of the way to get there, ooh.
So on and on I go, the seconds tick the time out,
there's so much left to know, and I am on the road to find out, ooh.
Well, in the end I'll know, but on the way I wonder
Through descending snow, and through the frost and thunder
I listen to the wind come howl, telling me I have to hurry.
I listen to the robin's song saying not to worry, ooh.
So on and on I go, the seconds tick the time out..."
Cat Stevens - On The Road To Find Out

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

-------------------------------------------------------------------------- 
- OLD SOFT GPU VERSION INFOS
-------------------------------------------------------------------------- 

09. December, 2000    Version 1.41

- ALT-ENTER... toggle between window/fullscreen mode
  (see the D3D version.txt)

- New way to handle polygon coordinates.
  It will fix games like Tony Hawk 1+2, Spiderman, Apocalypse,
  Driver 1+2 and so on :)  
  (see the D3D version.txt)

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

23. November, 2000    Version 1.40

- Gamma (brightness) control in fullscreen modes
  (see the D3D version.txt)

- Analog pad display
  (see the D3D version.txt)

- New way to do FPS calculation/limitation/skipping
  (see the D3D version.txt)


Cool quote... see D3D version.txt... ah, no... :)

"A Discordian is Prohibited of Believing What he Reads."
- "Principia Discordia", Fifth Commandment of the Pentabarf

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

29. October, 2000    Version 1.39

- The screen positioning is emulated like
  in the hw accelerated plugins.

- Fullscreen issues are solved like in the D3D
  plugins, the 'frame skipping' option will
  also be stored now. The special 'Speed Freak'
  fix is not available, because the soft gpu already
  works fine with that game :)

- Tests on my V2 with the latest 3dfx drivers
  were successful :)

- Bug fix for sprites wrapping the texture coords
  (well, I've supported such wraps a long time on
  my hw accelerated plugins, I've just forgotten
  to code that with the soft gpu, too)


"Justen took a large chunk of the warm bread.
 ' I suppose I should try to find out what else is
 happening in the world. Not that I expect things
 to have changed very much.'
 'They never do,' said Murina. 'But enjoy the bread.
 Warm bread is better than cold gossip.'"
- "The Order War", by L.E. Modesitt, Jr.

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

08. October, 2000  Version 1.38

- Fixed a clipping bug with poly4 primitives, causing
  black areas with Crash3. 

- And a big improvement: no annoying "FRONTBUFFER"
  activities anymore... all the games which are using
  stupid frontbuffer tricks should be working without 
  troubles, the 'Delayed fontbuffer update' option 
  has therefore vanished from the gpu config
  window :)
  Well, the FPS display behavior changed a little bit
  by doing the necessary fixes... I hope the fps limit
  option is not too much screwed by it (I was fighting
  hard to get it working again). Activating "Frame 
  skipping" can (and will) cause bad effects, though.

- Started to improve the "Horizontal/Vertical Display range"
  command. It's not perfect right now (such commands are
  usually used to center the screen on your tv set), but
  the loading screen of Alundra2 is much nicer now :)


"As soon as you're born they make you feel small
   By giving you no time instead of it all
   Till the pain is so big you feel nothing at all.
   A working class hero is something to be,
   A working class hero is something to be.

   They hurt you at home and they hit you at school,
   They hate you if you're clever and they despise a fool
   Till you're so fucking crazy you can't follow their rules.
   A working class hero is something to be,
   A working class hero is something to be."
- "Working Class Hero" by Marianne Faithfull

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

24. September, 2000   Version 1.37

- Yeah, the SoftGPU contains the new 'special game
  fixes' option, too. Check out the OpenGL version.txt for
  details.

- A small bug with 4 bit palettized sprites caused disturbing 
  effects (most times with 2D scrolling games). You can all
  say a big 'thank you' to GreenImp for doing nice reports :)

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

17. September, 2000   Version 1.36

- For infos about the 1.36 core please read the 'version.txt'
  of the OpenGL plugin :):):):)... naaa... joking :)
  
  My holidays are over, so today is a big plugin release...
  The new gpu core contains a lotta fixes for several
  games... some intro screens are now working better, certain 
  games will not crash if something stupid is happening with 
  the dma chain, some primitive position-wrappings are handled
  right. Mmm... I just can hope I screwed none of the already
  perfectly working games with this new core ;)

- All of the gpus are having a few new dll interface functions,
  for getting higher speed at data reading/writing. If
  you are coding a psx emu and want some details about the new
  funcs, just sent me a mail :)

- Ah, yes, I've also applied the latest cpu patch on my MSVC6
  before compiling the plugin dlls.
  Let us pray... :)


"I was spending my time in the doldrums
I was caught in the cauldron of hate
I felt persecuted and paralysed
I thought that everything else would just wait

While you are wasting your time on your enemies
Engulfed in a fever of spite
Beyond your tunnel vision reality fades
Like shadows into the night

To martyr yourself to caution
Is not going to help at all
Because there'll be no safety in numbers
When the Right One walks out of the door

Can you see your days blighted by darkness?
Is it true you beat your fists on the floor?
Stuck in a world of isolation
While the ivy grows over the door

So I open my door to my enemies
And I ask could we wipe the slate clean
But they tell me to please go fuck myself
You know you just can't win"
- "LOST FOR WORDS" by Pink Floyd
  

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

03. September, 2000   Version 1.35
 
- Added the new auto-detect FPS limitation functions, should 
  be working better. See my OpenGL plugin for details.

- Fixed a issue with the fullscreen modes if the main psx emu
  is having menus, window borders, etc. There was no problem
  with PSEmu Pro, though.

- Some psx gpu register bits are handled more exact (I think)

- Workaround for a strange bug in my dma function causing a crash.
  Mmm... I am still thinking its a bug in the main emu ;)

"Some people fly...
and some of us worry 
of touching the sun with wings.
I know, if I try I'll get where I'm going
keeping my eyes on the sky."
- "Some people fly" by Queensryche

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

06. August, 2000   Version 1.34
 
- Yup, a psx SoftGPU. Yup, version 1.34.
  It's designed to be very compatible with the real psx gpu
  (hope so at least)... 
  Well, the Kazz SoftGPU is somewhat faster than this one, 
  but on the good side this gpu has all the psx features 
  which the Kazz gpu doesn't support (like texture windows,
  polylines, sprite mirroring, mask bits and all the Offscreen
  and Frontbuffer drawings).
  So you will see every splash screen, stupid coded battlemenus
  and everything else what is hard to emulated with nowadays
  3D APIs like OpenGL or D3D.

- Why version 1.34? Because the next versions of my 
  accelerated gpu plugins (currently version 1.33) will
  use some parts of this SoftGPU to get better compatibilty
  and even more speed. Yeah... stay tuned :)

- Please also take some time and look at the readme file.
  All the plugin options and the in-game plugin menu are
  explained in this readme.

- Special thanx to Lewpy for ideas, support, tests and
  anything else... the world is waiting for the next version
  of your Glide plugin :)


"The Road goes ever on and on
 Down from the door where it began.
 Now far ahead the Road has gone,
 And I must follow, if I can.
 Pursuing it with weary feet,
 Until it joins some larger way,
 Where many paths and errands meet.
 And wither then? I cannot say."
- JRR Tolkien, hobbit rhyming
