

-------------------------------------------------------------------------- 
May, 2008    Version 1.18

- Pete added Nagisa's frame limit timings (done by Nagisa for SSSPSX).
  And the simpler SSSPSX frame limitation mode has been added as a gpu 
  config option. Advantage: SSSPSX will not show a 100% cpu load in
  this mode, but it's slightly less accurate.

- Pete added MxC's changes to the display filters (from the 'm9' filter 
  edition of the plugin).
  Please note that the HQ2X/HQ3X filters need a cpu with MMX extensions.
  Ah, and most of the filters are now available for Linux as well (the 
  'stretched HQ3x / Scale3x' Linux modes seem to be a bit unstable, though).

- Pete added "GPUsetframelimit" function, so the main emu can control
  the frame limitation.

- Pete added a new way to create the save state picture. This will fix
  crashes on Windows Vista when doing save states.

- Pete added a "special game fix" (called "Fake 'gpu busy' states") on
  request of the ePSXe team (calb and Galtor). This will prevent lockups
  in some games. The main emu can activate this fix automatically by a
  new "GPUsetfix" interface function.

- Pete added a "visual rumble" function to the Windows version of the 
  soft plugin on request of calb from the ePSXe team.
  The main emu can call it to shake the display whenever the PSX pad 
  vibration kicks in.


-------------------------------------------------------------------------- 
29. July, 2006    Version 1.17 for SSSPSX

- Nagisa fixed the problem 100% CPU rate. 

- Nagisa fixed vertical synchronous frequency.


-------------------------------------------------------------------------- 
12. June, 2005    Version 1.17

- MxC added HQ2X, HQ3X and Scale3X display filters to the Windows version.

The other changes were done by Pete:

- smf of the MAME team found a new capability of the PSX gpu: sprite Y 
  mirroring. I've added this to the P.E.Op.S. gpu, big thanx to smf
  for sharing this info (and for coding a small psx demo showing this
  feature)

- softm informed me on my messageboard that one of the transparency modes
  seems to be wrong in some games (Diablo, Legend of Mana, Castlevania).
  I've repaired that, now it will look fine.

- Sometimes small (wrong) texture distortions happened in the soft gpu.
  That's caused by internal precision issues, when the plugin is drawing
  quads using two triangles (needed to get the PSX g-shading right).
  I've made a special game fix (0x200), now users can decide if they want
  a correct g-shading (fix activated) or textures without distortions
  (fix deactivated).
  
- The frame limit value is now a floating point number, so you can
  set (for example) "50.1" as limit. Dunno why, but many users requested
  this... anyway, my advice: use the "auto-detect limit" option whenever 
  it's possible :)
   

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

13. March, 2004    Version 1.16

- Stefan Sperling improved the Linux fullscreen switching a little,
  to get around refresh frequency issues in some special cases.

- Pete fixed certain Skullmonkey issues (sprite coord y wrap is now
  working fine)

- Pete added a new game fix ("0x100 - Repeated flat tex triangles"),
  activate it if you want to play Dark Forces without gfx problems.

- Pete added arcade psx gpu compatibility

  OK, this feature will need some more explanations, so let me drop
  this silly "Pete did this and that" changelog text, to take a closer
  look what "arcade psx gpu" actually means :)

  Most psx emu fans will know that there are not only the psx consoles,
  but also psx-based arcade cabinets for certain games. Such cabinets 
  often have 'enhanced' psx gpus inside, which are supporting more 
  internal vram (2 MByte instead of the 1 MByte used in the standard 
  psx gpu), mainly used to store more texture informations.
  
  The ZiNc (formerly known as "impact") emu can run such psx arcade 
  games, using special Glide/OGL/D3D renderer plugins done by Lewpy 
  and me. As you can see, only hw/accel plugins were available, due to 
  the fact that we were too lazy to add all the needed extra functions in
  the Peops soft plugin ;)

  Well, in the last months smf did a fine job adding psx arcade games 
  into MAME (using his own psx gpu soft renderer functions for display),
  and he even found a way to run the old Tekken arcade games without 
  glitches. He kindly gave this infos to Lewpy and me, and while we were
  adding this stuff into our hw/accel ZiNc plugins, I also decided to
  finally upgrade the Peops soft plugin, to get a ZiNc soft renderer as 
  well.

  Yeah, and now it is done, for both Windows and Linux. It's still one 
  plugin file, if you want to use it with ZiNc, simply copy it into its main
  emu directory. If you only want to use the soft renderer in future, you can 
  rename the plugin to "renderer.znc" (Windows) or "librendererznc.so"
  (Linux). Otherwise you can also use the ZiNc "--renderer=..." command 
  line switch to tell the main emu to temporary use the soft renderer for the 
  next game.
  
  How to configure it? The hw/accel ZiNc renderers use .cfg text files 
  containing all  needed options (just like the Peops soft Linux version), so 
  there is no special config window in ZiNc. For the MSWindows version of 
  the Peops soft plugin I've decided to support both: .cfg text files and the 
  config settings stored in the Windows registry by the standard plugin 
  config window. So, if you start ZiNc with a command line option like 
  "--use-renderer-cfg-file=xxx.cfg", the settings of this file will be used (see 
  the  "gpuPeopsSoftX.cfg" file included in the full sources release for details). 
  If  you don't specify a .cfg file with ZiNc, the Peops soft plugin will use the 
  Windows registry settings instead. Of course that means that you first 
  have to start a psx emu like epsxe or pcsx, to configure the soft plugin 
  at least once. 

  Mmm, what else? Ah, yes... the Peops soft gpu is capable to run Tekken
  without glitches, but you will need a newer version of ZiNc, the current
  release will not work correctly. Also certain display issues (for example 
  big polygons with one character in SFEX2) are most likely caused by
  the main emu, and cannot get fixed by the gpu plugin, so don't blame me :)

  Anyway, have fun,
  Pete


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

01. August, 2003    Version 1.15

- Yokota updated his MinGW patches. They are now "less ugly",
  to quote him :)

- Pete fixed an issue with frame limitation if the "old skipping" 
  method was used - thanx to Ronald Andersson for reporting it.

- Pete added the new "Pad" display characters in the gpu in-game
  menu (used with ePSXe 1.6.0)

- Pete fixed the Skullmonkeys background layers, they are now
  perfectly visible - thanx to calb for the save state.


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

09. Juny, 2003    Version 1.14

- Avery Lee, the author of VirtualDub, detected a bug
  within the AVI recording funcs and kindly fixed the issue.
  It's now possible to load avi files created by the P.E.Op.S.
  soft gpu into VirtualDub without problems.

- Yokota created a patch to compile the plugin with MinGW. 
  You can find it in the "makes" directory, please also check 
  out the included readme file for details.

- linuzappz rewrote the Linux config/about dialogs, using Glade.
  The new dialogs are listing the available fullscreen modes,
  if XF86VM support is enabled.


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

07. January, 2003    Version 1.12

- linuzappz improved the linux ports further: he fixed the
  non-streched 2x modes for DGA2, added some more 
  error messages, if the DGA2 init fails, and optimized 
  all the Linux stretching funcs, for a little speed  up.
  
- All other changes were done by me (Pete), but before
  I explain them, I want to thank linuzappz for his never-
  ending support. He added improvements in nearly every
  release, I don't know how he finds the time beside his other
  emulation related projects :)

- Ok, first a small bugfix: the main menu of Legend of Legaia
  is now displayed again (I screwed that somewhen in version
  1.10 or 1.11).

- Important for all ChronoCross players: I have removed the
  internal status screen hack, and made a special game fix for it.
  That means that if you want to play CC with epsxe 1.5.2,
  you have to activate the new "odd/even bit" game fix, otherwise
  the game will lock up if you want to see the CC status screen.
  That also means that in the next epsxe version that fix will not
  needed anymore, due to an improved epsxe vsync handling :) 

- Another feature for the upcoming epsxe version has been 
  added: a cursor interface func. What's that for? well, the next 
  epsxe version will show it ;)

- The 'improved frame skipping' handling has been improved 
  further. Some issues has been fixed, and some more security 
  code has been added. For the users who still like the old (V1.10 
  and below) skipping method better (which only skipped every 
  second frame), I've added another special game fix, called "use 
  old frameskipping". 

- For the lovers of an 'enhanced display': I've added the Scale2x
  stretching method. That one makes 2D images sharper, without
  adding interpolations like the 2xSai/SuperEgale filters.
  The Scale2x stretching is GPL, copyrighted by Andrea Mazzoleni ,
  you can find more informations on: http://scale2x.sourceforge.net.
  The Scale2x stretching is again available in all MS-Windows screen 
  modes, as well as in the Linux X and DGA2 ports.

- The nicest new feature (imho) is dithering support. Prolly you 
  already have noticed that g-shaded polygons (often used in 3D 
  games) have rough color steps, which is looking a bit ugly.
  The real PSX can activate dithering, to make the colors smoother,
  of course the side-effect is that you will notice a small dot effect
  when dithering is activated.

  V1.12 will give you the choice, if the plugin should emulate the
  psx dithering as well. Three modes are available:

  * No dithering:  
     fastest mode, no dithering will get activated (that's like in the
     older plugin's versions)
  * Game depended: 
     g-shaded textures polygons will get dithered, if the game is turning
     on dithering.
  * Always:
     the plugin will dither all g-shaded polygons all the time, even if
     a game doesn't ask for it. That's usually the nicest looking, but
     also slowest, mode.

  I've added a new menu item to the gpu in-game menu as well, so
  you can change between the three dithering modes while playing
  a game. And a big thanx goes to Farfetch'd for his dithering  
  pattern.


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

03. December, 2002    Version 1.11

- linuzappz repaired the 2xSai modes for 15 bit color depths.

- Pete added an improved frame skipping for slow systems.
  For full details check out the 1.68 version notes of Pete's 
  hw/accel. gpu plugins, here's only a small summary:
  * The 1.10 screen flickering with frame skipping will not 
      happen anymore
  * Still: frame skipping will cause missing graphics in some 
     games
  * For best results turn on skipping _and_ limitation. Try
     to reach a steady 50 (PAL) or 59.94 (NTSC) frame rate.
  * For buggy motherboard chipsets: activate the new 'low-
     res fps timer' game fix. 


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

09. November, 2002    Version 1.10

- Farfetch'd suggested a change in the "y display position"
  code, so Pete changed it ;)
  Well, it's not 100% perfect yet (could be done better in the
  soft plugin), but since a 100% solution would need much
  code changes (and would cause maybe slower speed), I want 
  to check out this approach first.

- Pete added 2xSaI, Super2xSaI and SuperEagle display modes.
  Of course a big thanx goes to Derek Liauw for his free available 
  2xSaI source examples.
  The following new options are available (in all supported 
  15/16/32 bit desktop/fullscreen color modes):

  * 2xSaI stretching
  * 2xSaI unstretched
  * Super2xSaI stretching
  * Super2xSaI unstretched
  * SuperEagle stretching
  * SuperEagle unstretched

  The "unstretched" modes will always display the screen at twice 
  the original psx resolution, so if your gpu window is too small,
  parts of the display will get cropped (and if it's too big, a black 
  border will be drawn). The "stretched" modes will scale the image
  to the window size, so prolly they are the better choice for gaming,
  but be aware that some gfx cards will add an additional filtering
  with that (as long as you don't use the "system memory" option
  in Windows, which will be slower in most cards, though).
  Talking about speed: all the new modes will need a fast cpu! Nevertheless
  the "pure" 2xSaI mode will be the fastest, followed by the "SuperEagle" 
  mode, and the "Super2xSaI" mode will be the slowest option.
  Note that a 16 bit color desktop/fullscreen mode will give a speed up, so
  I strongly suggest to use it!
  About the image quality: that's a matter of taste :) Personally I prefer the
  Super2xSaI mode (and btw, that's what I am using in my hw/accel gpu
  plugins).
  Ah, and a note about the Linux ports: the standard X plugin (used by
  epsxe and pcsx) does offer the same 6 new modes, and I've added most 
  stuff to the special DGA sources as well, only the unstretched modes
  are not supported, as far as I remember (I can't test the DGA port here).
  And all new modes are _not_ supported by the special FPSE SDL 
  version, maybe lu_zero can add them in the future, we will see :)


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

12. October, 2002    Version 1.9

- linuzappz moved the Linux config and about windows into
  a separate application. This will prevent troubles with main emus/
  frontends usig a different GTK version, just copy the 
  cfgPeopsSoft application in the emu's cfg directory.

- Pete added a new 'debug mode' option to the Window's plugin, 
  which will enable certain debug modes in the future (so it's mainly
  interesting for developers). Currently only one debug feature is 
  available: you can configure a key to toggle between the 'normal'
  display and a full vram view (showing the complete 1024x512 psx
  gpu vram). Please note: not all cards will be able to do it.
  
- Nearly one year ago the first version of the P.E.Op.S. soft plugin
  has been released as Open Source. All kind of stuff has been
  added and fixed during this year, and I would like to thank all the 
  coders who helped me to make it bigger and better, and of course
  all the users giving support and bug reports :)
  Now another nice thing happened: good ole Farfetch'd, a well-known
  fellow emu coder, decided to share his knowledge about the psx
  gpu with the P.E.Op.S. Open Source project. He provided me with a
  lotta detail infos, things which are usually hard to find out, since 
  not much games are using every weird psx gpu ability.
  So over a dozen small changes were done because of the new 
  informations, increasing the compatibility of the plugin, and actually
  some of them even fixed certain issues :)
  Enjoy the release, and be prepared for another year of plugin updates,
  ehehe :)


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

06. September, 2002    Version 1.8

- linuzappz added a FPS display to the Linux DGA2 port
  of the plugin

- Lewpy and E}I{ fixed the texture window problem which
  caused the bad FF7 text box borders, distortions in RRT4, 
  small glitches in Gauntlet Legends and a not fully displayed
  loading screen in Casper. Therefore the FF7 special game
  fix has been removed in 1.8! 

- Pete added a delayed odd/even toggle to correct the FF8 
  intro scanlines

- Pete changed the mask bit handling for sprites. Now the 
  Alone In The Dark 4 cut scenes get displayed, and FF6
  battle screen effects are fine

- Pete added a "Sprite 1" command count (don't know if
  such a command exists on the real psx, but Darko's
  GPU test application needs it)

- Pete fixed a small issue with the "screen disable" state,
  which was hiding some splash screens in previous
  versions


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

02. August, 2002    Version 1.7

- linuzappz fixed a small issue with the Linux 'About' dialog

- Lewpy added a clean way to avoid troubles with the "Disable screen-
  savers" option in Win95/WinNT

- Lewpy  replaced the old line drawing stuff (which used simply
  thin quads) with nicer and faster native line functions

- Pete added an internal fix for FF9 mask bit issues (a few texts in
  animated mdecs were missing)

- Pete improved the dma write/read wrapping. Should be fine now.

- Pete removed the dmachain special game fixes with a good
  working 'bad dmachain' auto-detection. 

- Pete changed major parts in the dmachain handler. Games like
  'Monkey Hero' are working now without problems.


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

29. May, 2002    Version 1.6

- linuzappz added a fast forward frame skipping. That will give
  a big speed boost on slow systems as well. I (Pete) have 
  added a selectable hotkey for enabling/disabling this skipping
  mode in Windows, and you can also use the gpu menu to activate
  it (in both the Windows and the Linux version). Please note:
  some games (like FF9) will really hate any kind of frame skipping,
  you will have to turn it off in that games.

- All other stuff in this release by Pete:

  * Fixed the "mdec polygons" in FF9
  * Added new coordinate checks, that will remove most weird
    polygon glitches (like the lights in MGS)
  * Extra code for fixing texture distortions on g-shaded rects
  * Redone all texture window functions, that will give a big
    speed boost in certain games (for example Jumping Flash)
  * Fixed the mask bit emulation for non-textured primitives 
    (Bloody Roar 2, Ace Combat 3)
  * Adjusted some other rendering stuff, Doom should rune fine
    now
  * A new special game fix for getting the Ranma 1/2 menus right
    (most likely caused by a corrupt dma chain)


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

15. March, 2002    Version 1.5

- lu_zero was working on the SDL support (FPSE version only),
  he added optional SDL direct blit/direct stretch funcs to get
  more speed.
  He also made some Linux Makefile changes, to make compiling of
  all the different versions easier (well, some configure script
  will follow soon, I think ;) If you want/need to compile the Linux version
  yourself, just include the wanted mk file in the main Makefile (for 
  example "mk.x11" for the epsxe/pcsx version or "mk.fpse" for the 
  fpse/sdl version) and run a "make clean all" (or a "make clean release", 
  if you want to have a smaller stripped file).
 
- linuzappz added fullscreen DGA2 support for the Linux version. That
  will give a 30% speed increase in the fullscreen drawing, if your XServer
  supports the DGA2 mode (linuappz had to update his XServer to version
  4.2.0 to get it to work, and my aging 4.0.3 crashes hard with DGA2).
  To activate DGA2, you have to edit the mk.x11 files (in the "makes" directory),
  and set the switch "XF86DGA2" to "TRUE".

- Pete removed the "no sprite transparency" and "black poly" special
  game fixes (both were fixing some main emu bugs, but they are
  not longer needed), and added two new ones instead.. ;)
  1. a fix to increase the display size for Capcom 2D fighting games
      (without the fix the right side of the display will be missing some pixels)
  2. a Lunar1 fix. That one will kinda fix all the black screens in Lunar1
      (also a main emu bug... well, the game seems to play ok with that
      fix, an unwanted 'flashing' will appear when entering a house, but
      that's bearable, I think)
  Beside that special fixes Pete also squashed some real bugs, so 
  for example "The Mummy" and "T'ai Fu" will work now in the soft
  plugin, and some more additional memory checks will make a few 
  magical effects in FF9 and BOF4 appear.

- A few more additions (like the Linux xshm support from Vedran Rodic)
  are not included in 1.5 (lack of time for testing, sorry), but hey,
  there will be always a 1.6... and I know that some die-hard Lunar1 fans
  couldn't wait anymore :)


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

12. January, 2002    Version 1.4

- lu_zero and linuzappz were working on the Linux config
  windows, now the dialogs should work fine in
  FPSE-Linux, and in pcsx-Linux as well.

- Pete fixed a BAD bug in the linux version, which caused
  garbage screens in certain games (for example Grandia or 
  Star Ocean2), if stretching was enabled.

- Pete also removed unneeded screen clearing, if a game was 
  doing horizontal centering. That will speed up the windows
  version, and fixes screen flickering in the Linux version.

- Syo enhanced the Windows version by adding a "Wait for 
  vsync" option (including an hotkey to toggle vsync 
  waiting on/off during game play). Also the plugin now lists
  the fullscreen resolutions with supported refresh rates
  (if that info is available), so you can select a different 
  monitor refresh rate for fullscreen modes.

- Small cosmetics: Syo added "Transparent fps menu" option
  in the Windows version, and lu_zero took care about the
  caption texts in the Linux versions.

- Darko Matesic improved his recording funcs (Windows version).
  Now there are two types of compression (16bit & 24bit), and
  a WinFPSE 24bit MDEC support.

- Pete added Linux fullscreen video mode switching in the non-SDL
  version. Unlike the MesaGL plugin the libXxf86vm is linked
  statically, hopefully that will give less troubles on
  some systems. If you want to disable the xf86vm support, you
  can edit the Makefile, and compile a version without 
  video mode switching support.


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

16. November, 2001    Version 1.3

- lu_zero added the native Windows FPSE interface (thanx to
  xobro for additional help). Now you can use the Windows plugin 
  in FPSE without the PSEmu interface wrapper.
  As a small goodie I (Pete) have added support for right colors
  in FPSE mdec movies, if the FPSE interface is used.

- Also done by lu_zero: real fullscreen support in the FPSE SDL
  linux version.

- A new coder is syo (syo68k@geocities.co.jp). He has added
  two options in the Windows plugin: "use system memory"
  and "stop screen saver". Let's hear what syo has to say about
  the new options:

   -> added "Use system memory"

     When a stretch is carried out, the filter by the video card stops
     applying, if this check is turned ON.

     However, when the memory speed of a system is slow, it leads to the
     sharp fall of speed. In almost all cases, the speed of a system memory
     is very slower than the memory of a video card.

     In the following environment, about 50% of speed fall was checked.

     CPU            AMD AthlonMP 1200MHz@1400MHz  (system bus speed 133MHz)
     MotherBoard    ASUSTeK A7V266 (VIA KT266)
     VideoCard      ATi RADEON DDR 32MB  Clock 166MHz
     Memory         DDR-SDRAM 256MB CL=2.5  1T Command
     OS             WindowsXP Professional
     Stretch        320x240 to 640x480

   -> added "Stop screen saver"
     If a check is turned ON, operation in a screen saver and
     power-saving mode will be stopped.

     However, it does not operate in WindowsNT4 and Windows 95.
     Since the version check has not been carried out,
     if this check is confirmed, it will crash by WindowsNT4 and Windows 95.

  Syo also repaired a small thing in the Windows gpu config window... I never 
  had problems with the old code, but hey, the new one doesn't hurt either :)

- linuzappz added a nice About... and Configure... window in the linux plugins.
  The configure window will change the .cfg file, the file can now be placed 
  into the home directory, the main emu directory or a "/cfg" sub directory 
  (search for the file will happen in reverse order ;).

- Oh well, and I've added some changes, too:

  1.) support for psx 15 bit texture window primitives... never seen them in
       games, but Darko and his gputest app forced me to include it ;)

  2.) a small fix for Grandia... now the screen will be centered better, causing
       that annoying flickering line on the right side of the display to disappear :)

  3.) fixed a small but nasty bug with the mask bit in Poly4F primitives.
       Now the MGS message display will be fine again.

  4.) a new special game fix called "Adjust extreme coords". That will help
       games like Nascar racing, Syphon Filter 2 and a few MGS light effects.
       Maybe some more games are affected, you can try the new option  
       with all games showing wild polygons all over the screen.
       Well, imho that's a bug of the main emus, but as long as the gpu can
       repair it, who cares? ;)


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

11. November, 2001    Version 1.2

- Avi recording funcs by Darko Matesic (Windows version only). 
  You can start/stop the recording using a configurable hotkey. The 
  movie files will be stored into the \Demo sub-directory.

- Nasm support by linuzappz. That's important for the Linux version,
  the same asm code can finally be used in the Windows and Linux
  plugin (and hopefully a small speedup will show up in the Linux
  version).

- SDL support and FPSE layer (just for the FPSE ports)  by lu_zero.
  Now we can have many more portable version. 
  The makefile has to be fixed again =/
  The FPSE layer for Win32 isn't ready

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

04. November, 2001    Version 1.1

- First release of the P.E.Op.S soft gpu plugin, same funcs
  and features as Pete's soft gpu version 1.54
  Check out https://sourceforge.net/projects/peops/ for future 
  releases.


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