Sie sind auf Seite 1von 29

NOTE!

The entry at the top is the oldest, and the entry at the bottom is the new
est!
----------------------------------------------------------------------------------2010/04/16 - v0.715D-LM/v0.720 CB
=================================
-Release as a public close-beta build.
-Edited CDVDMAN to use a fixed iop_event_t structure for creating event flags. T
his is to reduce stack overflow incidents in sceCdInit().
2010/04/15 - v0.715C-LM
=======================
-Edit USBSTOR to use 4096-byte/8-sector reads instead of 2048-byte/4-sector read
s.
2010/04/14 - v0.715B-LM
=======================
-Removed the derelict "#ifdef DEBUG_TTY_FEEDBACK" define checks from MHookMon. T
his prevented it from working by excluding critical code from compile time.
-Corrected cdvdman_open() to return a file's handle's ID instead of the offset o
f the handle in the list (Which is always 4x it's ID).
-Edited USBSTOR to NOT read the FAT for consecutive cluster sector numbers (Bett
er performance). Backed up original version in USBSTOR_backup.
2010/05/05 - v0.721-LM
======================
CDVDMAN.IRX:
-Edited cdvdman_CdSearchFile() and cdvdman_CdReturnFileInfo() to use mem
cmp() and memcpy() instead of strncmp() and strncpy() respectively.
-Fixed a bug in cdvdman_CdReturnFileInfo() which caused it to return the
LSN of a file/folder whose name is 3 characters long and has the same 1st lette
r as the target file.
-Fixed cdvdman_open() and cdrom_open() to show the correct stored values
during debugging based on the opened file'd file descriptor (cdrom_open() used
to display the LSN and size of the file who's fd is 1/4 the correct file's).
-Edited cdrom_open() to display the opened file's LSN in hex humbers.
-Fixed sceCdPause() -> It caused CDVDMAN to crash because it cleared the
interrupt flag's S-command status bit, and it never got set again.
EE core:
-Replaced Load_SBV() with a direct call to sbv_patch_enable_lmb(), and a
lso removed the call to and dependency on sbv_patch_disable_prefix_check().
Main GUI:
-Removed the call to and dependency on sbv_patch_disable_prefix_check().
Debugging loader:
-Removed the call to and dependency on sbv_patch_disable_prefix_check().
USBHDFSD_lite.IRX:
-Added IOCTL(), and a IOCTL request that allows the returning of a file'
s starting LBA (Unused as of yet).
2010/05/12 - v0.722 CB
======================
CDVDMAN.IRX:
-Fixed sceCdStRead(). It would not read more than 16 sectors, even if mo
re were requested. Fixed this by removing the redundant CDVD_STREAM_NONBLOCK fla
g check (Causes the PS2 to exit sceCdStRead() at the end of it's 16-sector maxim

um read cycle before any more can be read).


-Fixed various functions to display LSNs as hexidecimal numbers during d
ebugging.
CDVDFSV.IRX:
-Fixed sceCdStread() to display it's arguments in a more generic form du
ring debugging - as some of the arguments fed to it occasionally did not match t
he displayed label depending on the function requested by the caller.
MHookMon.IRX:
-Added export hooks to SYSMEM's exports 6-10, but disabled the hooking (
And generation during compilation) of those functions (Causes IOP reset failures
).
2010/05/18 - v0.723 CB
======================
CDVDMAN.IRX:
-Edit the initilization system to only create and initilize the virtual
CD/DVD hardware on a *cold* driver boot. Only the data structures will be reset
on CDVDMAN initilizations.
2010/05/20 - v0.723A CB
=======================
CDVDMAN.IRX:
-Integrated the USB storage device driver into CDVDMAN.
EE core:
-Removed the kernel memory functions. Now PS2ESDL no longer uses kernel
memory (For compatibility with certain modchips).
-Cleaned up some old, unused code (A prototype "HDL mode 3 system").
2010/05/22 - v0.723A CB
=======================
EE core:
-Modified the IOPRP image patching system to add USBD, and cause the IOP
to load it before CDVDMAN.
-Combined the IOPRP image generation function with the IOPRP image patch
ing function.
2010/05/22 - v0.723B CB
=======================
CDVDMAN.IRX:
-Cleaned up the CDVDMAN integrated USBSTOR's code (Old sector reading bu
ffer).
GUI:
-Shifted certain parts of CDVDMAN's initilization code to the GUI.
EE core:
-Completed a prototype version of v0.723B.
2010/05/23 - v0.723C CB
=======================
EE core:
-Rigged a USB driver loading system closer to OPL's.... somehow the new
IOPRP modification system doesn't generate IOPRP images that the IOP likes.
-Fixed all bugs present in the prototype v0.723B
-Somehow now quite a few games don't work (Stack issue?).
2010/05/24 - v0.723D CB
=======================
CDVDMAN.IRX:

-Optimized the external device I/O functions.


GUI:
-Changed some debugging strings to make things less confusing.
EE core:
-Adjusted the memory address where the patched IOPRP image is stored at
(Changed it to 0x00083000).
Somehow some games crash when it's set to just directly above th
e kernel (0x00082000).
Perhaps they store some data there?
This fixes the last point of the previous changelog entry.
-Adjusted the load address for the EE core (Changed from 0x000C8000 to 0
x000C9000) due to the change above. This is to ensure that an IOPRP image with a
maximum size of 280KB can be stored there.
2010/05/26 - v0.723E CB
=======================
CDVDMAN:
-Cleaned up old, leftover data arrays.
-Added RPC 0x80000596.
-Improved the file I/O handler system. Now uses structures as file handl
es instead of a plain, unorganized array of 4 32-byt integers.
-As a result of the above, the file opening function, cdrom_open() no lo
nger has to expect cdvdman_open() to return the handle array offset divided by 4
as a valid handle ID.
2010/05/26 - v0.724 CB
=======================
CDVDMAN:
-Added the IOP_DT_FSEXT flag to the "cdrom" device structure. This fixed
games like ToHeart 2.
-Somehow... background image loading is now working again. Maybe it's th
at bug in the EE compiler causing this?
2010/05/29 - v0.724A CB
=======================
CDVDMAN:
-Removed the media loaded check for the cdrom0 device's DEVCTL function.
2010/05/29 - v0.725 CB
=======================
CDVDMAN:
-Added a prototype user-resizable sector caching system.
2010/05/30 - v0.725A CB
=======================
CDVDMAN:
-Added the control options to the GUI for the prototype user-resizable s
ector caching system.
-Added a valid LSN check in the asynchrnous thread. Some buggy (Or just
"smart") games like Nascar '09 try to read from invalid sectors.
GUI:
-Replaced the "lite" USBHDFSD with the full, original version (But with
the GETLBA IOCTL call). The "lite" version seemes to have caused too many proble
ms.
2010/06/03 - v0.726 CB

=======================
EESYNC:
-Added a scaled-down EESYNC module from PS2ESDL build 091019 (v0.5xx).
This is to reduce the amount of redundant code in memory. Some (All?) EE
SYNC modules allocate a portion of unused memory at startup.
EE_core:
-Replaced the function that patched EESYNC with the one from rom0: with
one that replaces EESYNC with the "scaled-down" version as above.
2010/06/06 - v0.726A CB
=======================
CDVDMAN:
-Fixed getstat(), dopen() and dread() functions. They didn't fill the fi
elds in the fio_stat_t structure.
-Optimized the integrated USB mass storage driver by making it use stati
c data arrays (Reduced size).
EE_core:
-Changed the "lite" USBD driver to the full, original version. This may
improve compatibility with games that also use the USB interface... (Provided th
at the USBD module in the PS2SDK is 100% compatible with SCE's!!)
2010/06/06 - v0.726B CB
=======================
CDVDMAN:
-Modified cdvdman_CdReturnFileInfo() to return the directory record flag
s of the opened file.
-The above was done, so that dread() can reflect to it's caller whether
the returned statistics belong to a file or directory.
EE_core:
-Changed the original USBD driver back to the "lite" version. It seems l
ike some games ceased working after swaping to the full version due to a lack of
memory.
2010/06/09 - v0.727 CB
=======================
CDVDMAN:
-Reduced the amount of error checking in the integrated USBSTOR module.
Usually, errors don't occur (If they do, the game will crash anyway).
EE_core:
-Fixed LoadExecPS2(). It didn't *really* follow SCE's standards.
GUI:
-Removed leftover potentially dangerous code that could cause crashes.
2010/06/09 - v0.727A CB
=======================
EE_core:
-Reverted to the "ideal" EE core system that was envisioned during the d
evelopment of PS2ESDL v0.5xx.
2010/06/11 - v0.728 CB/v0.730 CB
================================
CDVDMAN:
-Fixed the STANDBY N-command, as it had caused a similar crash as did th
e PAUSE N-command.
-Fixed the system that emulates the drive status returned by sceCdStatus

(). The drive status is now set to "SCECdStatPause" instead of "SCECdStatSpin" w


henever the system becomes idle (Fixes games that waits for the drive to become
ready through sceCdStatus()).
Little Busters! Converted Edition now works.
GUI:
Re-added the PS2ESDL format. It uses 4GB disc image slices, and stores t
he game cache size settings in it's configuration file.
2010/06/16 - v0.730R CB
=======================
-Tried to fix the LoadExecPS2() issue by making the EE core similar in structure
as OPL's. Failed. Scrapped.
2010/06/16 - v0.731 CB
======================
CDVDMAN:
-Reduced the amount of code in async_read().
-Removed the code in cdvdman_deinit(). Since everything is virtual, no f
ormal deinitilization is necessary. If the IOP was going to be reset, everything
will be wiped anyway.
2010/06/17 - v0.731 CB
======================
CDVDMAN:
-Fixed SceCdTrayReq(). It returned incorrect values for the tray status.
-Added a call to cdvdman_initcfg() in cdrom_init(). Some games attempt t
o send S-commands to the Mechacon before calling sceCdInit().
This fixed such games as the event flags will now be initilized
(Previously there were not initilized before sceCdInit() was called, and S-comma
nd calls will fail).
GUI:
-Fixed the version number. It was displaying "PS2ESDL v0.730".
2010/06/21 - v0.732 CB
======================
CDVDMAN:
-Adjusted the CDVDMAN configuration structure, to use a 32-bit variable
instead of a 8-bit for flags (Operating mode).
EE_core:
-Added a prototype configuration system, and a prototype HDLoader "mode
3" system.
-Created a hybrid IOPRP image patching function like the one used in PS2
ESDL v0.723A.
The current one was actually probably generating malformed IOPRP
images. It was a miracle that PS2ESDL still worked...
-Replaced the system that transfers the patched IOPRP image to IOP memor
y.
Previously, this function used the DMA controller. Now it just g
ets the EE to copy the image into the IOP memory (In kernel mode).
-Fixed the SifSetReg() syscall hook. Previously, the SifSetReg() block n
ever seemed to expire.
2010/06/22 - v0.733 CB
======================
CDVDMAN:
-Reduced the amount of redundant code (Optimized several functions).
-Removed/disabled cdvdman_termcall(). This was previously never used (Ne

ver called SetRebootTimeLibraryHandlingMode()).


-Fixed the reading of the file date.
-Fixed getStat();
CDVDFSV:
-Reduced the amount of redundant code (Optimized several functions).
-Removed checking of the CDVDMAN S-command flag. CDVDFSV will now leave
the checking of availability of the MECHACON to CDVDMAN.
2010/06/22 - v0.734 CB
======================
CDVDMAN:
-Overhauled the whole thing, reducing code...
CDVDFSV:
-Fixed the compatibility issue which the file search RPC function has wi
th older SCE libraries (They used a structure of a different size).
-Overhauled the whole thing, reducing code...
2010/06/23 - v0.734A CB
=======================
CDVDMAN:
-Shifted the signaling of the internal "interrupt" end event flag into t
he function that's invoked during an interrupt.
Some games experience crashes due to timming issues with the sce
CdSync() and their interrupt callback functions.
2010/06/28 - v0.734B CB
=======================
CDVDMAN:
-Built a prototype system that triggers a dummy DMA transfer on DMA chan
nel 3. This eliminates the need to wait 100us for the timer to expire (Previousl
y, a hardware timer was used to emulate the DMA channel 3 interrupt callback fun
ction).
EE_CORE:
-Added a FlushCache(0) call to after the patched IOPRP image gets writte
n to IOP memory. This was to fix the issue of the IOP/EE freezing.
2010/06/28 - v0.734C CB
=======================
CDVDMAN:
-Reduced the amount of code present by changing the N-command system to
a system that functions in a closer way to how a real SCE CDVDMAN would communic
ate with real CD/DVD hardware.
EESYNC:
-Removed the export table.
EE_CORE:
-Reverted to using the SIF DMA channel 2 to send the patched IOPRP image
to IOP memory.
Using the EE to write it directly to IOP memory was great, but this syst
em was too buggy (Frequently caused unpredictable crashes).
2010/06/30 - v0.735 CB
=======================
CDVDMAN:
-Integrated USBD into CDVDMAN, and reduced the redundant error-checking
code (It won't prevent the PS2 from crashing as the calling functions to the fun

ction with that piece of code don't handle errors well).


-Relocated the code that sets cdvdman_waf, cdvdman_waf2 and cdvdman_sync
err variables into the "real" interrupt handler.
EE_CORE:
-Due to the above, SBV patching (Except when debugging) and the loading
of USBD has been removed.
-Removed the prototype HDLoader Mode 3.
2010/07/06 - v0.735A CB
=======================
CDVDMAN:
-Fixed the issue of the existance of 3 different file search result stru
ctures, but not knowing which one to use.
-Created a system that will only emulate the CD/DVD hardware interrupt a
s needed.
-Relocated the code that sets cdvdman_waf, cdvdman_waf2 and cdvdman_sync
err variables into a function that can be called by both a real interrupt handle
r and the asynchrnous thread.
CDVDFSV:
-Fixed the issue of the existance of 3 different file search result stru
ctures, but not knowing which one to use.
2010/07/07 - v0.735R CB
=======================
EE_CORE:
-Changed the amount of space reserved by Install_Kernel_Hooks() for the
storage of $ra.
-Split LoadExecPS2()'s replacement function into 2 parts, to facilitate
a EE soft-reset.
-The above was done in a bid to fix the 2nd oldest bug that's still pres
ent... but failed.
2010/07/07 - v0.736 CB
=======================
CDVDMAN:
-Made the cdrom_open() and cdrom_read() functions redirect all file I/O
to a replacement, dummy IRX file for banned modules.
2010/07/07 - v0.736A CB
=======================
CDVDMAN:
-Toned down the system added in the previous build, and added a dummy ex
port table that exports "usbd"'s functions as dummy functions that return 0.
-Fixed the power-off callback system. Whether, or why this may affect ga
me compatibility is quite beyong me. :)
2010/07/09 - v0.736B CB
=======================
EE_CORE:
-Adjusted the address where IOPRP image modification should take place (
0x00082000 -> 0x00088000).
-Reduced the amount of redundant code.
2010/07/09 - v0.736C CB
=======================
CDVDMAN:
-Removed some functions that were only present in CDVDMAN modules that w
ill only be found in the BIOS.

-Streamlined several functions.


-Removed CDVDSTM's export table (It was blank anyway, and no modules wil
l ever link to it).
2010/07/14 - v0.736D CB
=======================
CDVDMAN:
-Deleted/commented out code that will probably only used by SCE modules.
2010/07/17 - v0.736R CB
=======================
CDVDMAN:
-Deleted/commented out code that will probably only used by SCE modules.
-Replaced links to exports that only return 1 with the dummy expory func
tion (Less redundant code).
-Temporary fix for games that *break* the standards set by SCE: Forcing
CDVDMAN to read sectors into it's internal buffer, before using memcpy() to send
the sectors to the required locations in IOP memory.
Those games that need this previously crash CDVDMAN when they sp
ecified memory addresses that were NOT aligned to 4-byte boundaries (Doing so on
a MIPS is almost suicide, depending on the hardware and software!!).
-Streamlined the streaming functions.
2010/07/17 - v0.736E CB
=======================
CDVDMAN:
-Permanent fix for games that *break* the standards set by SCE by specif
ying a output buffer that's not aligned to 4-byte boundaries.
2010/07/18 - v0.736F1 CB
========================
CDVDMAN:
-Special version that does not replace LoadExecPS2() with a custom handl
er. This one uses the original, SCE LoadExecPS2(). It also saves the patched IOP
RP image at 0x01700000 in EE memory */
-Re-added code that handles that odd "sce_dev5" signal that's sent to CD
VDMAN by some consoles.
2010/07/19 - v0.736F2 CB
========================
EE_CORE:
-Removed more redundant code.
-Edited the memory layout: 0x00097000 will be where the EE core will res
ide, and 0x000BD000 is where the IOPRP image will be patched at.
When debugging, the patched IOPRP image will reside at 0x0170000
0 instead.
2010/07/21 - v0.736F3 CB
========================
EE_CORE:
-Removed more redundant code.
-Edited the memory layout: 0x00098000 will be where the EE core will res
ide, and 0x000C0400 is where the IOPRP image will be patched at.
-The above fix was conducted to make PS2ESDL work with FAT PS2s with BIO
S version 160.
2010/07/21 - v0.736G CB
========================
CDVDMAN:
-Improved sceCdStRead(). Now it will copy sectors to the target buffers

as when they are ready to be copied (Opposed to previously waiting for ALL secto
rs in the current bank of the ring buffer to be read).
2010/07/22 - v0.736G2 CB
========================
EE_core:
-Edited the memory layout: 0x00096000 will be where the EE core will res
ide, and 0x000BE200 is where the IOPRP image will be patched at.
This revert was done because the result obtained during tests wi
th the v0.736F2 build was incorrect (Forgot to add the line which adjusts where
the memory wipe by LoadExecPS2() will start from).
2010/07/23 - v0.736H CB
========================
EE_core:
-Reverted to a modified version of the old v0.735A loader. The newer one
s are just not efficient enough, especially those that use the original SCE Load
ExecPS2(). (Why does it seem like almost all SCE software are that badly optimiz
ed?).
CDVDMAN:
-CRITICAL!! *** Sometimes *** CDVDMAN will not return the LSN for some f
iles. Who knows why it still worked?
-Improved sceCdStRead(). Now it'll check the number of sectors ready to
be copied directly, instead of calling sceCdGetReadPos().
2010/07/25 - v0.736H2 CB
========================
CDVDMAN:
-sceCdStRead() now uses the old system which just calls sceCdSync(0) whe
n the ring buffer "warps around".
The "new" system which was supposingly better actually did not o
ffer any performance gain due to the way PS2ESDL's streaming functions were buil
t, but could possibly impact performance negatively by taking up valuable CPU ti
me.
2010/07/26 - v0.736H3 CB
========================
CDVDMAN:
-Fixed the code which attempts to fix non-ISO9660 compliant filenames sp
ecified by calling functions.
-Fixed the interrupt callback system.
2010/07/27 - v0.737 CB
========================
CDVDMAN:
-Reverted back to the CDVDMAN module from v0.736G2, and applied all crit
ical changes made after v0.736G2.
-Another attempt to make a better fix for games that attempt to search f
or/open files without specifying the ";1" suffix in the file's name.
EE_CORE:
-Switched back to using the DMAC to send the patched IOPRP image to the
IOP.
2010/08/01 - v0.737B CB
========================
CDVDMAN:
-Adapted CDVDMAN for the fixed PS2ESDL format.
-Re-written cdvdman_CdSearchFile() and cdvdman_CdReturnFileInfo() to use

structures instead.
GUI:
-Changed some debugging strings.
-Adapted the EE_CORE configurator for the fixed PS2ESDL format.
2010/08/02 - v0.737C CB
========================
CDVDMAN:
-Fixed cdvdman_CdReturnFileInfo(). It was previously not searching throu
gh the ISO9660 path table properly.
-Removed some redundant code which may probably never be called by any g
ame.
GUI:
-Change of how PS2ESDL's EE Core works: Now the GUI simply patches the P
S2's EE kernel to use the EE core instead of rom0:EELOAD.
-PS2ESDL configuration version validation is now working.
EE_CORE:
-To fit the above change, the main() function has been modified. The mem
ory wipe and EE peripheral reset have been removed (They will be done by the EE
kernel).
2010/08/03 - v0.737D CB
========================
CDVDMAN:
-Fixed the interrupt emulation system. Some games like Guitar Hero 3 cal
l asynchronous CDVDMAN functions within the interrupt callback, causing a race c
ondition. :(
2010/08/03 - v0.737E CB
========================
CDVDMAN:
-Re-written sceCdRead(), sceCdRead0(), sceCdRv() to be more "coordinated
" and have a reduced amount of redundant code.
-Modified cdvdman_CdSearchFile() for a reduction in redundant code.
2010/08/04 - v0.737F CB
========================
EE_CORE:
-Added a new, prototype "HDLoader Mode 3" compliant syscall unhooker.
-Added an add-on module to enhance the output of IOPTRAP, to make debugg
ing easier.
-MHookMon has been temporarily withdrawn from debugging use.
2010/08/04 - v0.737G CB
========================
EE_CORE:
-Added a fix for that really annoying LoadExecPS2() bug. Yay! :)
CDVDMAN:
-Added a call to DelDrv() to accomodate the above fix.
-Removed some redundant links to DMACMAN.
-Removed sceCdStSeek() (The actual one). Export sceCdStSeekF() in it's p
lace instead.
2010/08/05 - v0.737H CB
========================
EE_CORE:

-Merged the error trapping components of IOPTRAP into ERRORTRAP.


CDVDMAN:
-Fixed sceCdRead*() and CDVDMAN's file I/O functions.
Some games will cause a freeze if they attempt to read a file, a
nd read sectors simultaneously.
-Reduced the amount of redundant code again.
CDVDFSV:
-Replaced the RPC server dispatcher for RPC 0x80000596 with a function t
hat only returns NULL.
The original function wasn't a proper replacement anyway.
2010/08/06 - v0.737I CB
========================
CDVDMAN:
-Fixed cdvdman_CdSearchFile(). It now does a compatison between the targ
et file entry and the current file directory record/path table entry using the l
ength of the specified file entry's name.
EE_CORE:
-Removed some redundant code, and shifted the invoking of sbv_patch_enab
le_lmb() to directly after the IOP reset with the patched IOPRP image.
2010/08/06 - v0.737J CB
========================
CDVDMAN:
-Fixed cdvdman_CdSearchFile() and cdvdman_CdReturnFileInfo(). I had misr
ead the ISO9660 specification - apparently there are easier, more bug-free ways
to do certain tasks...
-Added some parts of a prototype PSS video skipping system.
2010/08/08 - v0.740 CB
========================
GUI:
-Added a customised background-loader. The loader will check the bitmap'
s width and height, and exit with an error if the bitmap is too large.
-Added another delay when SELECT has been pressed.
-Added the ability to configure CDVDMAN to use CD/DVD and/or DNAS key(s)
that was/were input by the user.
-PS2ESDL format v1.10.
-Fixed hotplugging support.
CDVDMAN:
-Added the ability to use CD/DVD and/or DNAS key(s) that was/were input
by the user.
2010/08/10 - v0.741 CB
========================
CDVDMAN:
-Cleaned up unused code...
-Fixed sceCdBreak(). It doesn't really work when the system is reading d
ata into IOP memory (A really huge, consecutive chunk) because the virtual CD/DV
D hardware can't be interrupted... and breaks CDVDMAN's systems instead.
CDVDFSV:
-Cleaned up unused code...
EE_CORE:
-Removed the SIF IOP reset packet checks for a packet size of 0x70 (Is t
here even such a situation when a IOP reset packet has such a size?).

2010/08/12 - v0.742 CB
========================
CDVDMAN:
-Fixed DNAS support.
2010/08/13 - v0.743 CB
========================
CDVDMAN:
-Fixed sceCdReadChain() by changing the system it used (It previously ha
d defunct code left over from the old N-command system used in pre-0.734B builds
).
-Added a prototype modified module loading blocking system.
-Added more code to prevent errors/crashes when searching for files, but
specified a non-ISO9660 compliant filename.
2010/08/14 - v0.743A CB
========================
CDVDMAN:
-Set all dummy modules to return 2 (REMOVABLE_RESIDENT_END) instead.
-Cleaned up the list of modules to prevent loading.
EE_CORE:
-Fixed the intermittent problems with printf() calls from the EE.
2010/08/16 - v0.743B CB
========================
CDVDMAN:
-Set all dummy modules to return 2 (REMOVABLE_RESIDENT_END) instead.
-Modified the dummy module to handle module unloading properly.
-Fixed cdvdman_getstat().
CDVDFSV:
-Added a check for MODLOAD's version.
-Returns 2 (REMOVABLE_RESIDENT) if MODLOAD's version is 1.04 or newer.
2010/08/16 - v0.743C CB
========================
CDVDMAN:
-Added a system that handles unaligned buffers in EE memory.
2010/08/17 - v0.743D CB
========================
CDVDMAN:
-Fixed the system that handles unaligned buffers in EE memory.
EE_CORE:
-Some tweaks to the syscall hooks, to prevent possible crashes caused by
assembler optimization.
2010/08/18 - v0.743E CB
========================
CDVDMAN:
-Further optimization...
-Finally KILLED that EXTREMELY IRRITATING issue with unaligned EE memory
buffers.
CDVDFSV:
-Added the part of the statement in cdvdfsv_readee() that stores the res

ult from sceCdApplyNCmd().


Previously, cdvdfsv_readee() may not return the correct value (S
ince it didn't have code to do that at all) that reflects thr true status of it'
s operations.
2010/08/18 - v0.743F CB
========================
CDVDMAN:
-Fixed the return value of getstat().
-Fixed getstat(). It did not set the cdvdman_read_ef flag if the search
for the file failed (This causes any other device function calls to fail).
-Added a compatibility mode: Force Synchronization. Some games have limi
ted read retries, and freeze due to the USB device's transfer rate being too low
.
GUI:
-Added a compatibility mode: Force Synchronization. Some games have limi
ted read retries, and freeze due to the USB device's transfer rate being too low
.
2010/08/19 - v0.744 CB
========================
CDVDFSV:
-Changed the method of determining MODLOAD's version to a lighter one.
-Removed redundant structure/variable/array alignment.
EE_core:
-Re-write of the syscall hooks to become more efficient.
2010/08/20 - v0.744 CB
========================
GUI:
-Made the GUI more "professional" looking. :)
EE_core:
-Added a prototype ELF patch handling and application system.
-Fixed the syscall unhooking system.
2010/08/21 - v0.744 CB
========================
CDVDMAN:
-Fixed the value returned by sceCdGetReadPos().
-Fixed the problem which occurs when a game calls sceCdBreak(), and then
calls sceCdRead() later on.
GUI:
-Bug fixes for the patch application system.
-Added the function to load a background from mc0 or mc1.
EE_core:
-Bug fixes for the patch application system.
2010/08/22 - v0.744 CB
========================
CDVDMAN:
-Reduction in code that will probably never ever be executed by any game
.
-Shifted the registeration of USBD's exports into USBD itself.
-Seperated USBD's exports into it's own export table file.
-Re-fixed the value returned by sceCdGetReadPos(). The copy of CDVDMAN w

as accidentally reverted to a earlier copy. This fix should be better than the o
ne yesterday...
GUI:
-Fixed loading of a background from a memory card (It used to try to loa
d a background, before initilizing the GS).
2010/08/23 - v0.744 CB
========================
CDVDMAN:
-Reduction in code that will probably never ever be executed by any game
.
-Shifted the registeration of USBD's exports into USBD itself.
-Seperated USBD's exports into it's own export table file.
-Re-fixed the value returned by sceCdGetReadPos(). The copy of CDVDMAN w
as accidentally reverted to a earlier copy. This fix should be better than the o
ne yesterday...
GUI:
-Changed the filename, and the place where PS2ESDL will look for a patch
file to load.
-Added PNG support, replacing the traditional bitmap background loading
systems.
2010/08/24 - v0.744 CB
========================
CDVDMAN:
-Reduced the number of literations of "cdrom" in CDVDMAN by 1. ;d
EE_CORE:
-Special, prototype version. It's very small, small enough to fit within
the exact space taken up by rom0:EELOAD when loaded into it's place.
2010/08/24 - v0.744-LM CB
======================-==
EE_CORE:
-Finally beaten "Sonic Unleashed". :)
-New EE core again... but a very small one.
2010/08/25 - v0.744 CB
========================
*** The "LM" EE core became the core used for mainstream builds. ***
CDVDMAN:
-Fixed cdvdman_CdReturnFileInfo() to handle dopen() requests for the roo
t directory of the disc.
-Increased the maximum of open file handles to 24 from 8.
CDVDFSV:
-Fix: Returns the value of sceCdBreak(). Previously, the part of the cod
e that returns the value returned by sceCdBreak() was missing.
2010/08/25 - v0.744 CB
========================
CDVDMAN:
-Fixed cdvdman_CdSearchFile(). It would occasionally use the LSN of anot
her file/folder with a name that's partially similar to the file/directory being
searched for. Horrible, old bug. :<
GUI:

-Minor, cosmetic fix to the GUI: There was an extra space before the wor
ds "UP/DOWN".
2010/09/02 - v0.744 CB
========================
CDVDMAN:
-Reduction in code size.
-Changed the file handle management system. This new one doesn't have a
fixed number of allocatable handles.
-Added 1 line to fix GOW2: f->mode=O_RDONLY.
GUI:
-Suspended the loading of a background from MC. It seems to crash someth
ing (Magicgate authentication fails) on the IOP when the MC can't be accessed. :
(
-Upgraded the scrolling bar (Now it doesn't scroll when there are few ga
mes to list).
EE_CORE:
-Cleaned up some code.
Global:
-Removed MHookMon, starting from this build. It has been deemed as unnec
essary to monitor the results of IOP memory allocation, since IOP memory usually
never runs out anymore with modern PS2ESDL builds.
2010/09/06 - v0.744 CB
========================
CDVDMAN:
-Fixed cdvdman_CdSearchFile(). The part of it that searches directory re
cords is actually a remaint of the original prototype system (Why is it still th
ere?!). Replaced it with the new, final version.
-Some CPU performance-related tweaks (In sceCdStRead(); Replaced a modul
o division operation with a bitwise operation)).
GUI:
-Shifted the exiting of the SifRPC services into launchGame() for a redu
ction in redundant code.
2010/09/07 - v0.744 CB
========================
EE_CORE:
-Fixed some possible stack calculation errors.
2010/09/13 - v0.745 CB
========================
EE_CORE:
-Changed the patch management system.
-Shifted Install_Kernel_Hooks() into main.c.
GUI:
-Removed the loop when calling SifIopReset(). Sony doesn't even do it, a
nd it doesn't seem like a reset request can ever fail to be sent anyway.
-Changed the patch management system.
-Cleaned up redundant/leftover code from older builds.
-Re-enabled background loading from the place where PS2ESDL was launched
from.
-Re-added background-loading from the MC (Now fixed).
-Added a call to padPortClose() in LaunchGame().

2010/09/14 - v0.745A CB
========================
EE_CORE:
-Upgraded the ELF patch management system again. This one is confirmed t
o work.
-Armored Core 9 Breaker is now fixed with the prototype PPI file that wa
s generated along with this build.
GUI:
-Upgraded the ELF patch management system again. This one is confirmed t
o work.
-Armored Core 9 Breaker is now fixed with the prototype PPI file that wa
s generated along with this build.
2010/09/15 - v0.745B CB
========================
CDVDMAN:
-Removed it's IRX tag temporarily. "Ratchet & Clank: Up Your Arsenal" se
ems to be trying to locate this module...
-Fixed for games that call CDVDMAN functions without calling sceCdInit()
first.
-Fixed the status of the CD/DVD hardware that's returned before sceCdIni
t() is called.
CDVDFSV:
-Removed it's IRX tag temporarily. "Ratchet & Clank: Up Your Arsenal" se
ems to be trying to locate this module...
2010/09/18 - v0.746 CB
========================
CDVDMAN:
-Cleaned up the debug text in the USB drivers that always get generated
into the final ELF file.
-Added back the IRX tag. Letting go of "Ratchet & Clank: Up Your Arsenal
" since it's a die-hard game that kills HDLoader.
CDVDFSV:
-Added back the IRX tag. Letting go of "Ratchet & Clank: Up Your Arsenal
" since it's a die-hard game that kills HDLoader.
2010/09/20 - v0.746A CB
========================
CDVDMAN:
-Adjusted what the FORCESYN option did. Now sceCdStatus() calls sceCdSyn
c() too. Fixes Final Fantasy XII. This move was made, because the previous metho
d to call sceCdSync() at functions like sceCdGetDiskReady() impacted the video p
layback performance of some games negatively.
-Removed 1 EE DMA transfer synchronization step in sceCdStread(). The DM
AC can transfer data faster than the USB can transfer data (The DMA transfer wil
l complete before the USB device can overwrite that data).
CDVDFSV:
-Added the code than handles thread piority adjustment.
2010/09/21 - v0.746B CB
========================
CDVDMAN:
-Fixed cdvdman_CdReturnFileInfo() yet again. When will all the bugs ther
e cease to exist? :(
It still occasionally returns the LSN of another file of a short

er, but similar name (Grr....).


-Fixed open(). It didn't return the actual number of bytes read (But the
number of bytes requested to be read).
2010/09/22 - v0.746B CB
========================
CDVDMAN:
-Fixed DVD9 emulation (It made some disc images appear as DVD9 discs whe
n they were really just DVD5 disc images).
2010/09/24 - v0.746C CB
========================
CDVDMAN:
-Fixed DVD9 emulation (Layer 1 was inaccessable).
GUI:
-Fixed DVD9 emulation (Layer 1 was inaccessable).
2010/09/26 - v0.746D CB
========================
CDVDMAN:
-Fixed DVD9 emulation (Layer 1 was inaccessable).
-Fixed all related functions to file searching for DVD9 support.
GUI:
-Fixed DVD9 emulation (Layer 1 was inaccessable).
2010/09/29 - v0.747 CB
========================
CDVDMAN:
-Prototype support for 4096-byte/non-512-byte sector sized disks.
-Cleanup of old, commented-out code.
-Removed that unnecessary call to DelayThread cdvdman_send_scmd(), since
a call to sceCdReadClock() would also be affected by that call to DelayThread()
.
Some games call sceCdReadClock() excessively... and that call to
DelayThread() can really slow things down.
-Added back the loop around the call to cdvdman_send_scmd() in sceCdAppl
yScmd().
I don't think that it's wise to sacrifice stability.
GUI:
-Improved DVD9 format DVD disc image detection.
Some game installers (Namely USButil 2.00) install games onto di
sc image slices that seem to be able to hold more sectors than the stated number
of sectors in the 1st layer (PS2ESDL will then think that it's a DVD9 format di
sc image).
-Fixed LaunchGame(), as it no longer worked with loader.c (Blind/automat
ic game launcher that's used for development).
EE_CORE:
-Added back the code to load a KPRINTF redirection module (But the modul
e isn't working).
2010/10/01 - v0.747A CB
========================
GUI:
-Added code to automatically recalculate the actual number of sectors in
the disc (For those disc images with data stored on sectors that are outside th
e ISO9660 filesystem).

2010/10/05 - v0.747B CB
========================
EE_CORE:
-Prototype system that switches the stacked used before the sequence whe
re PS2ESDL resets the IOP with a modified IOP image.
2010/10/06 - v0.748 CB
========================
GUI:
-Some fixes to configure_cdvdman() to allow the blind/automatic game lau
ncher that's used for development to work properly once again.
CDVDMAN:
-A prototype directory record set caching system was added. dread() is b
roken.
2010/10/07 - v0.748 CB
========================
CDVDMAN:
-The caching system was improved on, and dread() is *supposedly* fixed.
2010/10/10 - v0.747C CB
========================
CDVDMAN:
-Fixed sceCdGetReadPos() to return values realtime. Games like "Castle S
hikigami 2" rely on it.
2010/10/11 - v0.747C CB
========================
GUI:
-Fixed a bug in the recalculation of the actual number of sectors in the
disc image, for disc images that have more sectors than what's recorded in thei
r ISO9660 filesystem.
-Fixed the number of games that can be displayed on the list at any one
time (There was a blank row).
-Combined all of the delay induction code segments into 1 single functio
n that accepts a delay duration in milliseconds.
CDVDMAN:
-Fixed the reading of data into unaligned buffers in IOP memory.
-Changed some of those functions that are only called once in the entire
module into "inline" functions.
CDVDFSV:
-Changed some of those functions that are only called once in the entire
module into "inline" functions.
UDPTTY:
-Added code to redirect KPRINTF debug messages.
2010/10/13 (2010/10/15) - v0.749 CB/v0.750 CB
==============================================
GUI:
-Some fixes to the GUI to make it look and feel more professional.
GLOBAL:
-Corrections were made to the names of certain imported compiler header
files, and filenames in the makefiles.
This is to allow PS2ESDL to be compiled without errors on Unix-c

ompatible systems.
2010/10/28 - v0.751 CB
==============================================
EE_CORE:
-Cleaned up some code.
-Attempted to fix Marvel vs Capcom 2.
GUI:
-Some of the game title sorting functions were written (But incomplete).
-Some optimizations to the function calls around the IOP reset was done
(Perform some data structure initialization on the EE while the IOP resets).
2010/10/28 (2010/10/29) - v0.751A CB
==============================================
EE_CORE:
-IOPRP image patching and generation has been shifted into the IOP (A mo
dule containing the necessary routines to perform this operation will be loaded)
.
2010/10/30 - v0.751B CB
========================
EE_CORE:
-The triggering of the IOP reset with the patched/generated IOPRP image
that contains PS2ESDL's CDVDMAN and CDVDFSV modules has been shifted into the IO
P.
2010/10/30 - v0.751C CB
========================
EE_CORE:
-Reverted back to using a modified version of the v0.751's EE core, but
it uses the kernel memory at 0x80030000 to store the patched/generated IOPRP ima
ge, before transferring it to a buffer in IOP memory after the IOP is reset.
-This version allows Marvel vs Capcom 2 to work, but I suppose that thos
e Thunder Pro II users are as good as being sacrificed now. XD
-Some size optimizations were made.
-Removed KPRTTY, which was a IOP module that was leftover from older bui
lds.
2010/10/31 - v0.752 CB/v0.752A CB
=================================
GUI:
-Added support for the displaying of Japanese characters with the rom0:K
ROM FONTX2 file.
-v0.752A only: The colour used for "Bolding" of the font is black instea
d.
2010/11/04 - v0.753 CB
=======================
CDVDMAN:
-Fixed cdvdman_CdSearchFile() to support dopen() once again (I broke it
while trying to create workarounds for buggy games when building v0.74x).
2010/11/14 - v0.753A CB/v0.800 OB
=================================
GUI:
-Increased the delay between button presses by a little.
Global:
-First version of the v0.800 lineup.

-A new, prototype version of the PS2ESDL game format is now used (v1.20)
.
2010/12/11 - v0.801 OB
======================
GUI:
-Now accepts user input as compatibility mode and cache size overrides w
hen the PS2ESDL game format is used.
EE_CORE:
-A new compatibility mode (DELAYED_READ_PATCH) was added.
-The patching system was optimized.
-The patching mode was modified for better backward compatibility in the
future. The old patching system might exhibit undefined behaviour if it encount
ers a patch unknown to it.
-Calls to SyncDCache() were added for data transfers to IOP memory for i
mproved stability.
2010/12/14 - v0.801 OB
======================
GUI:
-Finalized the new patching system.
EE_CORE:
-Finalized the new patching system.
CDVDMAN:
-Fixed sceCdDiskReady().
2010/12/18 - v0.802 OB
======================
GUI:
-New game list polling system (Uses SIFCMD).
Global:
-Modified USBD (For the GUI and CDVDMAN) to make it compatible with my c
ase. :S
2010/12/21 - v0.803 OB
======================
CDVDFSV [Version 4.20]:
-Added support for S-commands #36 and #38.
CDVDMAN [Version 4.50]:
-Fixed the stack corruption issue in cdvdman_open() for games that cause
it like SOCOM II. :X
-sceCdStInit(), sceCdStStart(), and sceCdStRead() were fixed to make the
streaming mechanism working for games that specify odd bankmax and bufmax value
s (E.g. the value of bufmax can't be divided equally by the value of bankmax).
-sceCdStRead() had old, unused code removed.
-The sceCdGetError() line in sceCdStRead() was shifted to near the end o
f it, as that would be probably where SCE would have got the last error code too
.
Global:
-Modified USBD to make compatibility with my case better again. :S
EE_CORE:
GUI:
-Modified the source files to not include POWEROFF.irx, PS2DEV9.irx and
UDPTTY.irx (And ERRORTRAP.irx for the EE core) when compiling a release build.
2010/12/22 - v0.803A OB
=======================
CDVDMAN:
-Fixed sceCdStRead().

2010/12/22 - v0.803B OB
=======================
CDVDMAN:
-New USBD driver.
Global:
-New USB driver.
2010/12/26 - v0.804 OB
======================
CDVDMAN:
-Stripped out code that will probably never be used.
-Halfed the number of whatever that's supported by the integrated USBD m
odule.
-Changed the thread piorities of the integrated USBD module from 0x1E an
d 0x24 to 0x02 and 0x03 respectively.
>>>This fixes Ultraman Fighting Evolution 3 (And probably Crash
Bandicoot: The Wrath of Cortex too).
EE_CORE:
-Added support for VMC (WIP).
Global:
-Adding VMC support.
GUI:
-24 sector cache mode added.
2010/12/27 - v0.805 OB
======================
EE_CORE:
-Patching system modified to support a built-in patch type that can be u
sed to fix games like SFAA.
GUI:
-The patch loading system was modified to stop scanning for patches once
one match was found.
2010/12/29 - v0.806 OB
======================
GUI:
-Prototype VMC support added (Probably broken; The console freezes when
attempting to save data).
EE_CORE:
-SFAA fix implemented.
2011/01/02 - v0.807 OB
======================
GUI:
-Added some code to wipe the area from 0x00082000-0x00100000 (This fixes
games that uses some memory at 0x00820000).
Global:
-VMC support has been withdrawn (It couldn't be fixed).
CDVDMAN:
-Unused code/redundant checks were removed from the integrated USBSTOR m
odule.
2011/01/18 - v0.808 OB
======================
GUI:
-Added an options screen.
-Added loadable configuration file support.
-Fixed support for non-512-byte sector disks.

USBHDFSD:
-Fixed support for non-512-byte sector disks.
CDVDMAN:
-sceCdStRead() fixed. It caused corruption.
2011/01/25 - v0.808 OB
======================
GUI:
-Re-written to support a file fragmentation check, and for efficiency.
USBHDFSD:
-Prototype file fragmentation check added.
2011/01/28 - v0.808 OB
======================
CDVDFSV:
-Fixed sceCdReadIOPm() for the EE. It returned the number of sectors rea
d instead of just 1, and it didn't call sceCdSync().
The EE expected the RPC function to call sceCdSync().
CDVDMAN:
-Reverted back to the creation and destruction of semaphores for the int
egrated USBSTOR driver.
Some games didn't like the continued usage of a single, non-disp
osable semaphore.
GUI:
-Fixed the configuration menu.
-Organized the code, and split off some of the data structure declaratio
ns into other header files.
2011/01/28 - v0.808A OB
=======================
GUI:
-Fixed the configuration menu (Some options couldn't be saved).
-Added an option to disable the game files fragmentation check.
-Fixed the issue with an internal game title buffer being too small.
Global:
-Fixed the patch file for SFAA and VDSC.
EE_CORE:
-Patching system fixed for SFAA and VDSC, and for scanning through memor
y (It won't scan beyond the first match it finds).
CDVDMAN:
-Added a precautionary layer number check.
2011/01/29 - v0.808B OB
=======================
GUI:
-Added a new video mode: 720x480P.
-Removed the option for disabling video interlace.
-Modified the configuration/options screen so that the configuration fil
e won't be closed and loaded everytime the user leaves that screen.
-Changed the way a selector menu was displayed on the options screen.
2011/02/01 - v0.809 OB
=======================
GUI:
-Re-designed the way the video mode setting is loaded.
-Re-designed the way the configuration file is loaded (It'll only be loa
ded at startup from the CWD).
-Added functionality to override the video mode.
-New options were added: "Disable video mode override" and "Select butto
n".

-Cleaned up some redundant configuration code.


2011/02/02 - v0.809A OB
=======================
GUI:
-A fix for PAL consoles was made (As their "natural" video height is 512
, NTSC mode doesn't work properly as 448 is NOT a multiple of 256).
-Some old, leftover code was cleaned up.
2011/02/02 - v0.810 OB
=======================
GUI:
-Fixed a small bug with the handling of multiple USB devices.
-Changed the maximum size of the background image to 640x448.
2011/02/24 - v0.811 OB
=======================
CDVDMAN v4.54:
-Removed some leftover fields from the configuration structure.
CDVDFSV v4.22:
-Removed some leftover code that will never be used.
GUI:
-Added a check to prevent PS2ESDL from freezing if a game's files cannot
be accessed.
-Removed the call to SetVCommonHandler() since PS2ESDL no longer uses ke
rnel memory.
-Optimized the GUI a little by setting some structures to static, and by
setting some functions to being inline and static.
-Fixed the drive table management system. Now PS2ESDL should refresh the
game lists if 2 devices were plugged in (With only one having a valid game list
), and one was removed.
-Modified the configuration screen to reset the screen position correcti
on settings whenever the screen display mode is changed.
Global:
-Removed the old MCEMU files.
2011/03/17 - v0.811A OB
=======================
GUI:
-Cleaned up some old code.
CDVDMAN:
-Added some preventive code to prevent data from being read from sectors
that are beyond the end of each disc image slice.
2011/03/26 - v0.812 OB
=======================
GUI:
-Re-written the GUI to make the addition of new means of loading games e
asy (Improved scalability).
-Skinning support added.
-Started writting ISO9660 disc image support.
2011/04/12 - v0.813 OB
=======================
CDVDMAN:
-Modifications were made in sector_io.c to almost all functions in that
file, for performance enhancements.
-Modified read_sector() to involve some 64-bit calculations to prevent o
verflows from occurring.

GUI:
-Completed a prototype ISO9660 disc image support system.
-Modified calculate_str_crc32() in an attempt to kill the bug where PS2E
SDL is unable to access USBExtreme games that have a title of exactly 32 charact
ers in length.
Global:
-Some IOCTL codes in USBHDFSD were changed to look professional.
-Revamped the PS2ESDL format (v1.22). Changes:
*CD-key and reserved fields removed.
*CRC32 checksum field added.
2011/04/19 - v0.814 OB
=======================
CDVDMAN:
-Removed the "-O0" flag from the makefile. It reduced performance by dis
abling compiler optimization.
-Added a prototype workaround/fix for Ironman (Modified sceCdTrayReq()).
GUI:
-Attempted to fix the transparency/colour problem with the GUI again.
2011/04/23 - v0.815 OB
=======================
CDVDMAN:
-Confirmed and finalized the fix to sceCdTrayReq(). There is indeed a pr
oblem with the SCE sceCdTryReq() function: It will return the tray status as 1 a
t the first call, and only return the correct status at the 2nd call. @_@
GUI:
-Fixed the CRC32 calculation function for USBExtreme games. Now games th
at have 32-character titles should load.
-Implemented basic cursor acceleration. The timming/delay system still n
eeds to be improved on, as polling the pad status currently isn't fast enough, r
esulting in "ghost" pad presses.
-Fixed the problem with structure alignement, so PS2ESDL format v1.22 ga
mes will be displayed properly.
LOADER:
-Upgraded it to work with the rest of PS2ESDL properly (It still used ob
solete initialization function prototypes).
2011/04/23 - v0.815A OB
=======================
GUI:
-Modified the system used to poll the pad states (See the TODO remark fo
r the previous log entry).
It is also now non-blocking, so I suppose that it's better for t
he PS2 and should pose less problems for future upgrading...
-Now users can warp the cursor to the bottom or top of the game list fro
m the top or bottom of the list respectively (E.g. if the currently selected gam
e entry is the first entry and the user presses UP, warp around to the last game
entry).
2011/04/29 - v0.816 OB
=======================
GUI:
-Cleaned up old multi-device support code.
-Modified the entire GUI to use malloc() to allocate memory to store pat
hs, instead of relying on arrays of fixed sizes.
-Added more checks and warning screens, to safeguard against potential f
ailures caused by user errors. :D

-Fixed the scrolling system, as pressing UP when the first entry of the
list was highlighted might cause a crash/garbled graphics when the displayed lis
t was short.
-Added a secret combo code to exit PS2ESDL: SELECT+R1. :p
-Changed most char * arguments to const char *. This is to make future c
ode modification clearer.
-Enlarged the message box, since most warning and error messages were ex
ceeding the length of the message box.
-Adjusted the position of the game list.
-Fixed a bug related to the generation of the path to the ISO9660 disc i
mage.
Global:
-Recompiled most modules with either the -O3 or -Os optimization level s
etting, depending on how the modules were to be used.
Except for USBD and USBHSDFSD (I can't compile them as I don't h
ave the PS2SDK sources). :(
-The Makefiles were edited for better cross-platform compatibility, and
to reduce the redundancy of files.
CDVDMAN:
-Undid a old debug test at sceCdCallback().
-Optimized cdrom_read().
2011/04/30 - v0.817 OB
=======================
GUI:
-Added calls to waitPad1Clear() to some error messages, so that accident
al launching of games cannot happen.
-Bundled with the Rugby League 2: World Cup Edition fix (In patches.ppi)
.
2011/05/03 - v0.817 OB
=======================
CDVDMAN:
-Modified sceCdSync() to treat mode 11 as mode 1. Fixes games like Otome
wa Boku ni Koishiteru that used to suffer from stuttering audio.
-Renamed cdvdmanc.c and cdvdmanf.c to cdvdman_main.c and cdvdman_interna
l.c respectively.
CDVDFSV:
-Renamed cdvdmanc.c and cdvdmanf.c to cdvdman_main.c and cdvdman_interna
l.c respectively.
GUI:
-Modified the pad polling code so that the game launching buttons and th
e game format selector buttons won't be usable without a single valid game list
loaded.
This is to prevent any potential problems from arising.
-Fixed a problem that might occur while debugging: Messages about no ski
ns beign loaded were once spammed.
2011/06/03 - v0.818 OB
=======================
GUI:
-Added prototype plugin support.
2011/06/04 - v0.818 OB
=======================
GUI:

-Added prototype plugin support.


-Fixed plugin and internal driver loading.
-Added a game title sorting option.
2011/06/08 - v0.818A OB
=======================
GUI:
-Fixed a bug that might cause the PS2 to crash in SwapDisplayedGameList(
) if CurrentListIndexNumber was SYSTEM_INVALID.
The bug where the "No device found" message appears when only IS
O9660 disc images were present is fixed as a result.
-Started working on skin configuration support.
-Re-added a list type indicator.
2011/06/11 - v0.818B OB
=======================
GUI:
-Fixed a bug that caused the CDVDMAN modules of plugins to not be config
ured.
-Completed the iLink extension. Tested, and is working.
-Plugin loading support has been fixed. Tested, and is working.
-Skin configuration support has been worked on again today.
-Skins are now seperated into 2 parts: The game list area and the legend
.
2011/06/11 - v0.818C OB
=======================
GUI:
-Skins are now one-piece again.
2011/06/12 - v0.818D OB
=======================
GUI:
-Skin parameter file loading system is now fixed, functional and working
.
-More parameters are now accepted to allow more flexible skin tailoring.
-SkinParaBuild utility (Skin parameter building utility) is now working.
2011/06/20 - v0.819 OB
=======================
Global:
-The loader used for testing was overhauled and upgraded to work with th
e newer PS2ESDL system.
It can only be used to debug games with a USB device that only h
as one FAT12/FAT16/FAT32 partition.
-CWD calculation code has been replaced with a system that dynamically a
llocates a string with just enough space for the CWD.
|->PS2ESDL frees this buffer before executing the game's ELF!!
GUI:
-Graphics mode setting system was overhauled. No more garbled graphics s
hould be seen beyond the edges of the visible screen.
-Fixed a bug that manifests in a few places and resulted in some user op
tions not being handled properly (Notably the "Disable video mode override" opti
on).
-Fixed a bug which might have resulted in USBExtreme games not loading (
Or just not loading properly).
The game list ID for USBExtreme games was accidentally set to SY
STEM_PS2ESDL.
-The bug that resulted in the game list blanking out has been vanquished
. :D:D:D:D:D

The bug was a really hard to spot one: It was cloaked, hidden fr
om sight.... and was a result of some important code not being run due to the fl
ow of command in the main GUI loop.
|->Code for recalculating old_list_bottom_ID was shifted to nea
r the end of the loop, so that it'll be run immediately after the user pressed b
uttons.
2011/06/20 - v0.819A/v0.820 OB
==============================
iLink extension:
-(GUI) SIF command #13 is sent when all connections are terminated (Othe
rwise, it might not even be sent).
GUI:
-Graphics mode setting system overhauled yet again.
Now changing the video mode will not cause graphics corruption,
with the exception of the 480P mode due to a lack of VRAM.
480P mode will have a resolution of 640x480 instead of 720x480,
as there will be insufficient VRAM left for PS2ESDL.
-Screen alignment function fixed and the red box was realigned.
CDVDMAN:
-Fixed a horrible miscalculation of mine.
The fix to sceCdSync()in 2011/05/03 was a mistake. It should be
mode 17 (0x11) instead of mode 11. @_@
2011/06/22 - v0.821 OB
======================
GUI:
-The screen will now be automatically re-centered when the 480P mode is
used.
-The bug that causes the ISO9660 disc image game list to blank out has b
een KILLED for real.
2012/02/24 - v0.823 OB
======================
GUI:
-The screen will now be automatically re-centered when the 480P mode is
used. (Fixed)
-Fixed many logic errors that could impede stability.
-PS2LOGO will now be launched, so that the player's play history will ge
t updated and hence the "towers" on the Sony Playstation 2 screen will grow and
multiply as they should.
-Fixed graphics mode switching. No more garbled graphics.
-Corrected the RGBA values used with loaded PNG images. The reason why I
could never get the alpha values right was because of a bug in the PNG loading
function in gsToolkit. It didn't invert the alpha values.
-Due to the above, the alpha test (Which was really too aggressive) is n
o longer needed and was removed.
-Replaced my old quicksort algorithm with a call to the C qsort() functi
on.
CDVDMAN:
-Fixed one bug related to calling AllocSysMemory() and FreeSysMemory() w
ithout suspending interrupts in cdvdman.c (According to my understanding of the
Sony technical documentation, AllocSysMemory() and FreeSysMemory() are critical
sections and need to be run with interrupts disabled).
EE core:
-Changed the EE core to one that doesn't rely on the IOP memory allocati
on hack. The new core uses rom0:UDNL's ability to load IRX modules from a list o

f IOPRP images.
2012/02/29 - v0.823A OB
=======================
iLink extension:
-New rewritten version with DMA support ported over (v0.98H).
EE core:
-Re-added the first IOP reset in an attempt to re-gain compatibility wit
h certain buggy titles like SNK vs Capcom 2.
GUI:
-PS2LOGO can now be (optionally) launched. This will only work if the ga
me's logo section (first 16 sectors) is decrypted. Currently not doable with any
versions of PS2DCDMP.
-GSM has been integrated. Games are now forced to run at 480P video mode
.
TODO: Make this feature toggleable.
-The redundant SourceDevice field in the configuration structure has bee
n shifted into the SkinDisplayData structure.
CDVDMAN:
-Fixed many, many bugs related to calling AllocSysMemory() and FreeSysMe
mory() without suspending interrupts (According to my understanding of the Sony
technical documentation, AllocSysMemory() and FreeSysMemory() are critical secti
ons and need to be run with interrupts disabled).
-CRITICAL: Fixed support for disks of sector sizes >2048 bytes. The call
to AllocSysMemory() in sectorIO.c was faulty as the first and second parameters
were swapped around.
2014/04/11 - v0.823R OB
=======================
EE core:
-Changed the EE core again with a new design that is more compatible. Ol
d plugins are now unsupported.
-This new EE core uses a customized UDNL module that shuts off all DMA c
hannels before the final phase of the IOP reset, to avoid memory corruption by i
nterfaces like USB.
GUI:
-Removed GSM.
CDVDMAN:
-Removed the Sony debugging modules from the banned modules list as DECI
2.IRX doesn't exist as a standalone IRX and I don't know what SNMON.IRX is.
-Changed where the temporary buffer for disks with sectors larger than 2
048 bytes is created, for better performance.
2014/04/12 - v0.824 OB
======================
-A merger of all changes from v0.821 to v0.824.
2014/05/17 - v0.825 OB
======================
GUI:
-Added the play history updating functionality from FMCB.
-Refactored some code.
CDVDMAN:
-Fixed sceCdGetReadPos(), which was returning the number of sectors read

instead of the read offset in bytes.


EE core:
-Readded the EESYNC module to prevent DNAS games from wiping memory afte
r every IOP reset.
Overall:
-Recompiled with the latest PS2SDK, partly for compatibility with the Pl
ayStation 3.

Das könnte Ihnen auch gefallen