October 9th 2007

*  XBOX 360 enabled alternative FW for the Samsung SH-D163A drive - V1.00 *

A year has past, and the time has come for a small maintenance release. While the V0.80 release has performed rather well, there's always room 
for improvements, even though most of them are well hidden and probably won't be noticed by most people. 

Changes/fixes in this release..
- Major cleanup of code - the SH-D162C and SH-D163A now share the same code. This has been a painful job to do, but will make future updates so 
  much easier to handle. 
- The firmware is now based on the official SB01 firmware as opposed to SB00 for earlier releases.
- Fixed a potential problem with the way that the RPC patching was done.
- The laser head is now parked in a known and safe position following SS extraction. This should fix the clicking noise, that some people 
  experienced from time to time.
- RPC settings stored in flash mem of the drive is now reset. This is not important for the patched firmware, but will leave the RPC settings as 
  they came from the factory, if someone, for some strange reason, should decide to go back to a non patched firmware.  
- The feature list has been expanded to hold seperate feature entries for XBOX and XBOX360
- Fixed a bug that caused flashing of the drive to fail under some conditions (read "updating from V0.80.." below) 

This is what you get..
- Full challenge/response functionality. 
- Two types of unlock for XBOX 360 game discs. One for making xtreme style images and one for making wxripper style images. 
  Both types of iso can be made using isobuster. Ripping using wxripper isn't supported for the time being 
- A 'lock' function that will cancel any enabled unlock state. This can be very useful for custom applications.
- 'Error skipping' which basically speeds up the error handling of the drive. A complete wxripper style image (including video)
  can be obtained in 15-16 minutes, when error skipping is enabled. Getting through the critical area of LBA 19408-20479 will take
  you more than 20 minutes alone, if error skipping is disabled :(
- A much more streamlined command interface which is good news if you intend to write an application that makes use of the drives
  extra features.
- The drive will default to unlock state 2 and error skip enabled when a 360 media is inserted. You can in other words use isobuster to 
  obtain a wxripper style image without issuing any commands to the drive :) 
- RPC1 support (RPC-2 actually but with automatic change of drive region and RCE support)

Upgrading from V0.80..
Due to an issue with the V0.80 firmware, you can not upgrade directly from V0.80 to V1.00. To fix this problem, you will have to downgrade 
the drive to a stock SB00, by using the included FIX firmware found in the FIX folder. As soon as the downgrade has been completed, you 
can go ahead and upgrade the drive with the V1.00 firmware. Please note that this workaround is only needed, if you are upgrading from 
V0.80 - if you have a drive with a stock SB00 or SB01 firmware, you can skip this step. As an alternative you can use DosFlash by Schtrom to
perform the upgrade from V0.80 to V1.00 directly.

Updating the firmware.. 
- Place the firmware file (.bin) and SFNDWIN application in a temporary folder   
- Run SFNDWIN and select the drive needing the update (TSSTcorpDVD-ROM SH-D163ASB00) from the pull down list
- Click the top left icon and select the firmware file (.bin) you want to upload to the drive
- Now click the top middle icon to upload the firmware file and update the drive
- When done SFNDWIN will prompt you to reboot your PC - press ok, and your drive is ready for use

Creating a backup..
This release of the firmware has been optimised for use with applications like Xbox Backup Creator and Schtrom360Xtract in mind. Using one 
of these applications will turn the backup process into something as simple as click and burn, so the traditional isobuster ripping method is no 
longer recommended. For burning, ImgBurn is recommended, but other applications like CloneCD can be used as well.

You will probably notice that the the drive reports as being RPC-2, if you use a program like DVDinfo - this is not a bug! The drive changes
it's region setting according to the media inserted. The region code listed in DVDinfo (and other software like it) is the current region 
setting of the drive and it should match the region of the inserted media. If the media allows playback in more than one region, the drive 
region will be set to the region with the lowest number. An example could be a disc allowing playback in region 2 and 4 players, which would 
make the drive change it's region to region 2. Media with no region restrictions or with RCE protection will make the drive default to region 1.

And now some technical stuff....

Command set additions found in this FW..
FF 08 01 01					, 'Enable Unlock 1 (xtreme) state' as we already know it from the 360 xtreme modded drives. 
						  This command is supported for legacy reasons only. Custom applications should use the new
						  'Set lock state' instead.
FF 08 01 11 xx					, 'Set Lock State'
						  xx=00 - Drive locked (no unlock state)
						  xx=01 - Unlock State 1 (xtreme) enabled
						  xx=02 - Unlock state 2 (wxripper) enabled

FF 08 01 15 xx					, 'Set Error Skip State'
						  xx=00 - Error skip is disabled
						  xx=01 - Error skip is enabled

AD 00 FF 02 FD FF FE 00 08 00 xx C0		, This is the well known SS extract commands from the xtreme FW.

FF 08 01 10					, 'Get Feature List' 
						  This command will return a list of the additional features supported by the drive.
						  All values returned are 16 bit values, and the list is terminated with null (0x0000)
						  The two first words of the returned list always reads as 0xA55A 0X5AA5 in order to guarantee
						  that a reply from a drive not supporting this command correctly isn't mistaken for a feature list.
						  An example feature list could be:
						  0xA55A, 0x5AA5, 0x0100, 0xF000, 0xF001, 0x0000
						  This list would indicate that the drive supports XBOX360 Unlock 1, Lock and Error Skip, as it can be seen 
						  from the values defined below:
						  XBOX 360 related features..																	
						  0x0100 : The drive supports the unlock 1 state (xtreme)
						  0x0101 : The drive supports the unlock 2 state (wxripper)
						  0x0120 : The drive can read and decrypt the SS
						  0x0121 : The drive has full challenge response functionality
						  XBOX related features..																	
						  0x0200 : The drive supports the unlock 1 state (xtreme)
						  0x0201 : The drive supports the unlock 2 state (wxripper)
						  0x0220 : The drive can read and decrypt the SS
						  0x0221 : The drive has full challenge response functionality

						  General drive features..
						  0xF000 : The drive supports the lock (cancel any unlock state) command
						  0xF001 : The drive supports error skipping
						  This is the complete list of defined features at the moment. If you're working on a custom application you
						  might want to contact me in order to get the latest list.

A big thanks must go to Redline99 and Schtrom for their never ending devotion to testing the firmware 8O). Thanks must also be passed to all the other guys at 
xboxhacker.net that never fails to amaze me - keep up the good work! 

....163A + 1 equals...hmm...163B ;)!