If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Data Check & Log Check (Wii)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Data Check & Log Check

Developer: Nintendo
Platform: Wii



Data Check & Log Check is a tool used to check and verify a Wii console's debug and data outputs while they are in the factory. When run on Dolphin 5.0, the program may crash or deliver different results; as a result, all screens and debug information is extracted from a genuine Wii console for research purposes.

Hmmm...
To do:
Get ahold of 122E or a reliably-working version of the software. Try to get in contact with TheFluffyDino on YouTube; they uploaded a now-deleted video of the software working completely.

Factory Tool Explanation

During the Wii Factory Process, a multitude of different firmware, discs and SD cards that contain vital files for the Wii system memory (also called a NAND) are used in order to initialize and prepare the system for retail sale.

Previously, only Nintendo factory workers and the developers were allowed to use these programs and discs. After they had been used, the utilities would be deleted from the NAND. However, not every copy of these programs were deleted from Wii NANDs, and multiple copies of different test programs and development tools have been recovered.

Data Check & Log Check is one of these tools, recovered from the NAND of a console that had not been properly deleted after factory usage by TheFluffyDino.

Factory Terms

The SD card mentions are factory SD cards which contain test programs, debug programs and other information to be installed temporarily to the Wii NAND. Some contain the raw unformatted data, others contain .DOL and .ELF files. Data Check & Log Check currently does not support the format that Dolphin uses in order to launch programs from the virtual SD card; this is a temporary issue and is being looked into.

100J, 121J, 123J, and 122E are all factory discs; only 121J and 100J have been recovered from either RVT-H unit hard disks or from Nintendo data breaches. 122E is where Data Check & Log Check comes from, installed to the NAND as a .WAD file and ran on startup automatically. "NG" is an error code presumably standing for "No Good".

Visible Screen Captures

DATA CHECK AND LOG CHECK .png

Upon starting up the .DOL file, this is the first screen that is seen, asking to push the SD card in the console's SD slot and then to remove it. In the top right it provides information about the type of video output, in the screenshot here it is Progressive scan; it can also read 0:Interlace and NG:Display Info, the former occurring if you had component/RGB/HDTV output and the latter occurring when the program cannot determine the type of video output.

Instantly before this screen, a blue background flashes for a brief moment and, if a drive mount failure has occurred, reads the following:

"[ERROR] FAMount result:%d drive:%d FAErrnum:%d"

"FA" likely stands for "Failure". "%d" is a variable; this string was taken directly from the raw data output, where "%d" would normally provide the numbers for debugging and troubleshooting with issues with this section of the process, specifically what occurred, the drive it occurred on and the error code itself.

ERROR CODE [089] - SD FILE ERROR - CAN'T MOUNT

This is an example of one of the many error codes that Data Check & Log Check can output if the factory process is performed incorrectly. The error number starts at a value of 000 and goes up for each error. A full list of the error codes will be provided below, along with the data that prints it on the screen.

The error code, reason and POWER OFF status can be changed as result of different types of failure. Most instruct you to POWER OFF the system, but some allow you to push a button on the front façade of the Wii console to view debugging and logging information to troubleshoot.

Error Codes

These are extracted directly from the .s files that compile into the DOL file. This is taken from DATA.s, and provides the text seen on the screen, and other information for developers, factory operators and other users of this tool. \n indicates a new line, or the second line as seen in the image above. Below is an example of single-line error code formatting; this "unspecified error" placeholder is hard to trigger but can be viewed if the error code sequence is modified, for example, directing the output of ERROR CODE 089 which is easy to trigger, to print ERROR CODE 123, the unspecified error. This can be done with every Error Code except for WRITE LOG NG.

 "WRITE LOG NG"
 "ERROR CODE [#] %s\n   SD FILE ERROR              \n   SETTING.TXT SIZE != 256    "
 "ERROR CODE [#] %s\n   SD FILE ERROR              \n   CAN'T READ SETTING.TXT     "
 "ERROR CODE [#] %s\n   NAND FILE ERROR            \n   SETTING.TXT SIZE != 256    "
 "ERROR CODE [#] %s\n   NAND FILE ERROR            \n   ROW IN SETTING.TXT ERROR   "
 "ERROR CODE [#] %s\n NAND FILE ERROR              \n SETTING.TXT IN NAND IS WRONG "
 "ERROR CODE [#] %s\n NAND FILE ERROR              \n SERIAL NUMBER IS NOT WRITTEN "
 "ERROR CODE [#] %s\n SETTING.TXT IN NAND IS WRONG \n SERIAL NUMBER IS NOT WRITTEN "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T GET TITLE ID1     "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T GET TITLE ID2     "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      TITLE ID IS WRONG       "
 "ERROR CODE [#] %s\n  NAND FILE ERROR             \n  CAN'T GET TITLE ID VERSION1 "
 "ERROR CODE [#] %s\n  NAND FILE ERROR             \n  CAN'T GET TITLE ID VERSION2 "
 "ERROR CODE [#] %s\n   NAND FILE ERROR            \n   TITLE ID VERSION ERROR     "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      WRITE LOG ERROR         "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CHECK LOG ERROR         "
 "ERROR CODE [#] %s\n         WLAN_ENABLE_NG       "
 "ERROR CODE [#] %s\n  SET WLAN COUNTRY CODE ERROR "
 "ERROR CODE [#] %s\n  WLAN COUNTRY COMPARE ERROR  "
 "ERROR CODE [#] %s\n   READ PERMISSION ERROR      \n   CAN'T READ SETTING.TXT     "
 "ERROR CODE [#] %s\n  WRITE PERMISSION ERROR      \n  ENABLE TO WRITE SETTING.TXT "
 "ERROR CODE [#] %s\n  GET COUNTRY CODE ERROR      "
 "ERROR CODE [#] %s\n  COMPARE COUNTRY CODE ERROR  "
 "ERROR CODE [#] %s\n DELETE diag DIRECTORY ERROR  "
 "ERROR CODE [#] %s\n DELETE DIAG DIRECTORY ERROR  "
 "ERROR CODE [#] %s\n DELETE aging DIRECTORY ERROR "
 "ERROR CODE [#] %s\n       MODE ERROR             "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n           CRC ERROR          "
 "ERROR CODE [#] %s\n           CRC ERROR          
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n           CRC ERROR          "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CRC ERROR               "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n          CRC ERROR           "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T OPEN FILE         "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n   CAN'T OPEN AGING LOG FILE  "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T GET FILE SIZE     "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n   CAN'T GET AGING FILE SIZE  "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T READ FILE         "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T READ AGING FILE   "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T WRITE FILE        "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n   CAN'T WRITE AGING FILE     "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T SEEK & WRITE FILE "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T SEEK FILE         "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T CLOSE FILE        "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T NANDINIT          "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n   CAN'T DELETE AGING FILE    "
 "ERROR CODE [#] %s\n      NAND FILE ERROR         \n      CAN'T OPEN FILE         "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T OPEN FILE         "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T GET FILE SIZE     "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T READ FILE         "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T SEEK FILE         "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T CLOSE FILE        "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T WRITE FILE        "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      SD_ATTACH_NG            "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      SD_DETACH_NG            "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T MOUNT             "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T UNMOUNT           "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      EOF ERROR               "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n   CAN'T FIND SD INFORMATION  "
 "ERROR CODE [#] %s\n      SD FILE ERROR           \n      CAN'T GET FILE INFO     "
 "ERROR CODE [#] %s\n      WAD FILE ERROR          \n      ES_INITLIB ERROR        "
 "ERROR CODE [#] %s\n      WAD FILE ERROR          \n      NANDDELETE ERROR        "
 "ERROR CODE [#] %s\n      WAD FILE ERROR          \n   ES_GETTICKETVIEWS ERROR    "
 "ERROR CODE [#] %s\n      WAD FILE ERROR          \n      ES_DELETETICKET ERROR   "
 "ERROR CODE [#] %s\n      AGING FILE ERROR        \n      NO AGING LOG ERROR      "
 "ERROR CODE [#] %s\n      MEMALLOC ERROR          \n      CAN'T GET MEMORY        "
 "ERROR CODE [#] %s\n   ES_GetBoot2Version ERROR   "
 "ERROR CODE [#] %s\n   CHANGE PERMISSION ERROR1   "
 "ERROR CODE [#] %s\n   CHANGE PERMISSION ERROR2   "
 "ERROR CODE [#] %s\n   CHANGE PERMISSION ERROR3   "
 "ERROR CODE [#] %s\n      COPY LOG ERROR1         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR2         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR3         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR4         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR5         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR6         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR7         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR8         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR9         "
 "ERROR CODE [#] %s\n      COPY LOG ERROR10        "
 "ERROR CODE [#] %s\n      COPY LOG ERROR11        "
 "ERROR CODE [#] %s\n      COPY LOG ERROR12        "
 "ERROR CODE [#] %s\n      COPY LOG ERROR13        "
 "ERROR CODE [#] %s\n      SCGetProductSN_ERROR    "
 "ERROR CODE [#] %s\n      ES_InitLib_ERROR        "
 "ERROR CODE [#] %s\n     ES_GetDeviceCert_ERROR   "
 "ERROR CODE [#] %s\n      ES_Sign_ERROR           "
 "ERROR CODE [#] %s\n      ES_VerifySign_ERROR     "
 "ERROR CODE [#] %s\n      FAFopen_ERROR           "
 "ERROR CODE [#] %s\n      FAFinfo_ERROR           "
 "ERROR CODE [#] %s\n      FAFread_ERROR           "
 "ERROR CODE [#] %s\n      MULTI_CHECK_ERROR       "
 "ERROR CODE [#] %s\n      FAFseek_ERROR           "
 "ERROR CODE [#] %s\n      FAFseek_ERROR2          "
 "ERROR CODE [#] %s\n      FAFseek_ERROR3          "
 "ERROR CODE [#] %s\n      FAFwrite_ERROR          "
 "ERROR CODE [#] %s\n      FAFseek_ERROR4          "
 "ERROR CODE [#] %s\n      FAFseek_ERROR5          "
 "ERROR CODE [#] %s\n      FAFwrite_ERROR2         "
 "ERROR CODE [#] %s\n      FAFclose_ERROR          "
 "ERROR CODE [#] %s\n      EEPROM_DEV_ID_ERROR     "
 "ERROR CODE [#] %s\n      EEPROM_SIGNATURE_ERROR  "
 "ERROR CODE [#] %s\n      CHECK_EEPROM_1000_DATA  \n      REPEAT Hollywood ID     "
 "ERROR CODE [#] %s\n      CHECK_EEPROM_1000_DATA  \n      REPEAT Serial Number    "
 "ERROR CODE [#] %s\n      OTHER ERROR "
ERROR CODE [123] - OTHER ERROR

Full Decompilation of DATA.s Debug and Error Logging

AS IT PERTAINS TO THE READER: This does not contain the byte code or raw instructions; rather the readable output that is given by DATA CHECK AND LOG CHECK 1.5.1. I will see if I can build an ISO/WBFS with it's own ID "122E" which is what DATA CHECK AND LOG CHECK comes from, and then have an SD card with the proper dev images and ALL.INI on it. If successful, I will report back with more information.


SYMBOL INFORMATION:

\" – double quote
\\ – single backslash
\a – bell/alert
\b – backspace
\r – carriage return
\n – newline
\s – space
\t – tab

%D, %S, %T are variables and I assume T is Time measures, D is file size, and S is error code/log code numbers.

First few readable text strings are as follows:

 # ROM: 0x77D98
 .asciz "\n      LOG FILE[%s]"
 .asciz "          CAN'T OPEN LOG FILE"
 .asciz "      CAN'T GET SIZE OF LOG FILE"
 .asciz " ERROR MEMAllocFromExpHeapEx[tmp_buf]"
 .asciz "          CAN'T READ LOG FILE"
 .asciz "         CAN'T CLOSE LOG FILE"
 .asciz "               POWER OFF"

Lowest line instructions on error code.



 # ROM: 0x77E64
 .asciz "PUSH RESET BUTTON"
 .asciz "  [ OK ]"
 .asciz "  [ START(NO OK) ]"
 .asciz "  [ NOT NEED LOG ]"
 .asciz "  [ MISS  PROCESS ]"
 .asciz "  [ NG ]"
 .asciz "  [ %s ]"

Error coding, namely for what I assume is the chklog.dol featured in 121J, a
factory disk containing test programs, RVL_AGING, and RVL_DYING.



 .asciz "\n                 Read SD FILE[%s] \n"
 .asciz "\n                    ERROR Read SD FILE[%s] \n"
 .asciz "\n      read_function[%s] \n" 
 .asciz "\n      after read_function[%s] ret:%d  nand_file_size:%d \n" 
 .asciz "\n                     ERROR READ NAND FILE[%s]  \n"
 .asciz "\n      after2 read_function[%s] \n"
 .asciz "\n                    ERROR READ NAND FILE[%s]  \n   nand_file_size:%u != 256 Byte \n" 
 .asciz "\n      __SCEncodeProductInfoBuf \n" 
 .asciz "\n      CompareConfig \n"
 .asciz "\n      NAND ROW %d  "

More possible after sequence error coding.



 .asciz "\n  GetIOSVersion  title_num:%d   version_num:%d \n "
 .asciz "\n    ERROR  ES_ListTitlesOnCard1  return:%d   \n"
 .asciz "\n MEMAllocFromExpHeapEx[tids] failed:  return:%d\n"
 .asciz "\n    ERROR  ES_ListTitlesOnCard2  return:%d   \n"
 .asciz "\n    OK  ES_ListTitlesOnCard  return:%d  num:%d \n"
 .asciz "\n    TITLEID[%d]:%016llX    IN SD CARD"
 .asciz "\n    TITLEID[%d]:%016llX    IN NAND"
 .asciz "\n  NG  TITLEID:%016llX   NOT EXIST IN NAND"
 .asciz "\n    TITLEID:%016llX  VER:%u    IN SD CARD"
 .asciz "\n    ERROR  ES_GetBoot2Version[%d]  return:%d \n"
 .asciz "\n    TITLEID:%016llX  VER:%u    IN NAND"
 .asciz "\n    ERROR  ES_GetTmdView1[%d]  return:%d \n"
 .asciz "\n    ERROR  ES_GetTmdView2[%d]  return:%d \n"
 .asciz "\n NG  TITLEID:%16llX   titleVer:%u   Version ERROR"

Mentions Title ID "01611X?" Unsure of exactly what that is BUT it could very well
be another disk OR variable I don't know of. Likely a variable.



 .asciz "\n   CRC = LIST[%d] %10lu(0x%08lX) \n       FILE  CRC CHECK  OK    \n"
 .asciz "\n   CRC LIST[%d] %10lu(0x%08lX)"
 .asciz "\n   CRC =           %10lu(0x%08lX) \n\n\n      CRC  ERROR     \n"
 .asciz "1:progressive"
 .asciz "0:interlace"
 .asciz "NG:display info"

Likely ascertains to the 480P, 480I and unintelligible display
information that's held at the top right of DC&LC.



 .asciz "WRITE LOG NG"
 .asciz "ERROR CODE [%03d] %s\n   SD FILE ERROR              \n   SETTING.TXT SIZE != 256   "
 .asciz "ERROR CODE [%03d] %s\n   SD FILE ERROR              \n   CAN'T READ SETTING.TXT     "
 .asciz "ERROR CODE [%03d] %s\n   NAND FILE ERROR            \n   SETTING.TXT SIZE != 256    "
 .asciz "ERROR CODE [%03d] %s\n   NAND FILE ERROR            \n   ROW IN SETTING.TXT ERROR   "
 .asciz "ERROR CODE [%03d] %s\n NAND FILE ERROR              \n SETTING.TXT IN NAND IS WRONG "
 .asciz "ERROR CODE [%03d] %s\n NAND FILE ERROR              \n SERIAL NUMBER IS NOT WRITTEN "
 .asciz "ERROR CODE [%03d] %s\n SETTING.TXT IN NAND IS WRONG \n SERIAL NUMBER IS NOT WRITTEN "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T GET TITLE ID1     "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T GET TITLE ID2     "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      TITLE ID IS WRONG       "
 .asciz "ERROR CODE [%03d] %s\n  NAND FILE ERROR             \n  CAN'T GET TITLE ID VERSION1 "
 .asciz "ERROR CODE [%03d] %s\n  NAND FILE ERROR             \n  CAN'T GET TITLE ID VERSION2 "
 .asciz "ERROR CODE [%03d] %s\n   NAND FILE ERROR            \n   TITLE ID VERSION ERROR     "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      WRITE LOG ERROR         "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CHECK LOG ERROR         "
 .asciz "ERROR CODE [%03d] %s\n         WLAN_ENABLE_NG       "
 .asciz "ERROR CODE [%03d] %s\n  SET WLAN COUNTRY CODE ERROR "
 .asciz "ERROR CODE [%03d] %s\n  WLAN COUNTRY COMPARE ERROR  "
 .asciz "ERROR CODE [%03d] %s\n   READ PERMISSION ERROR      \n   CAN'T READ SETTING.TXT     "
 .asciz "ERROR CODE [%03d] %s\n  WRITE PERMISSION ERROR      \n  ENABLE TO WRITE SETTING.TXT "
 .asciz "ERROR CODE [%03d] %s\n  GET COUNTRY CODE ERROR      "
 .asciz "ERROR CODE [%03d] %s\n  COMPARE COUNTRY CODE ERROR  "
 .asciz "ERROR CODE [%03d] %s\n DELETE diag DIRECTORY ERROR  "
 .asciz "ERROR CODE [%03d] %s\n DELETE DIAG DIRECTORY ERROR  "
 .asciz "ERROR CODE [%03d] %s\n DELETE aging DIRECTORY ERROR "
 .asciz "ERROR CODE [%03d] %s\n       MODE ERROR             "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n           CRC ERROR          "
 .asciz "ERROR CODE [%03d] %s\n           CRC ERROR          
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n           CRC ERROR          "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CRC ERROR               "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n          CRC ERROR           "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T OPEN FILE         "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n   CAN'T OPEN AGING LOG FILE  "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T GET FILE SIZE     "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n   CAN'T GET AGING FILE SIZE  "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T READ FILE         "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T READ AGING FILE   "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T WRITE FILE        "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n   CAN'T WRITE AGING FILE     "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T SEEK & WRITE FILE "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T SEEK FILE         "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T CLOSE FILE        "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T NANDINIT          "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n   CAN'T DELETE AGING FILE    "
 .asciz "ERROR CODE [%03d] %s\n      NAND FILE ERROR         \n      CAN'T OPEN FILE         "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T OPEN FILE         "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T GET FILE SIZE     "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T READ FILE         "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T SEEK FILE         "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T CLOSE FILE        "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T WRITE FILE        "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      SD_ATTACH_NG            "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      SD_DETACH_NG            "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T MOUNT             "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T UNMOUNT           "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      EOF ERROR               "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n   CAN'T FIND SD INFORMATION  "
 .asciz "ERROR CODE [%03d] %s\n      SD FILE ERROR           \n      CAN'T GET FILE INFO     "
 .asciz "ERROR CODE [%03d] %s\n      WAD FILE ERROR          \n      ES_INITLIB ERROR        "
 .asciz "ERROR CODE [%03d] %s\n      WAD FILE ERROR          \n      NANDDELETE ERROR        "
 .asciz "ERROR CODE [%03d] %s\n      WAD FILE ERROR          \n   ES_GETTICKETVIEWS ERROR    "
 .asciz "ERROR CODE [%03d] %s\n      WAD FILE ERROR          \n      ES_DELETETICKET ERROR   "
 .asciz "ERROR CODE [%03d] %s\n      AGING FILE ERROR        \n      NO AGING LOG ERROR      "
 .asciz "ERROR CODE [%03d] %s\n      MEMALLOC ERROR          \n      CAN'T GET MEMORY        "
 .asciz "ERROR CODE [%03d] %s\n   ES_GetBoot2Version ERROR   "
 .asciz "ERROR CODE [%03d] %s\n   CHANGE PERMISSION ERROR1   "
 .asciz "ERROR CODE [%03d] %s\n   CHANGE PERMISSION ERROR2   "
 .asciz "ERROR CODE [%03d] %s\n   CHANGE PERMISSION ERROR3   "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR1         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR2         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR3         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR4         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR5         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR6         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR7         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR8         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR9         "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR10        "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR11        "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR12        "
 .asciz "ERROR CODE [%03d] %s\n      COPY LOG ERROR13        "
 .asciz "ERROR CODE [%03d] %s\n      SCGetProductSN_ERROR    "
 .asciz "ERROR CODE [%03d] %s\n      ES_InitLib_ERROR        "
 .asciz "ERROR CODE [%03d] %s\n     ES_GetDeviceCert_ERROR   "
 .asciz "ERROR CODE [%03d] %s\n      ES_Sign_ERROR           "
 .asciz "ERROR CODE [%03d] %s\n      ES_VerifySign_ERROR     "
 .asciz "ERROR CODE [%03d] %s\n      FAFopen_ERROR           "
 .asciz "ERROR CODE [%03d] %s\n      FAFinfo_ERROR           "
 .asciz "ERROR CODE [%03d] %s\n      FAFread_ERROR           "
 .asciz "ERROR CODE [%03d] %s\n      MULTI_CHECK_ERROR       "
 .asciz "ERROR CODE [%03d] %s\n      FAFseek_ERROR           "
 .asciz "ERROR CODE [%03d] %s\n      FAFseek_ERROR2          "
 .asciz "ERROR CODE [%03d] %s\n      FAFseek_ERROR3          "
 .asciz "ERROR CODE [%03d] %s\n      FAFwrite_ERROR          "
 .asciz "ERROR CODE [%03d] %s\n      FAFseek_ERROR4          "
 .asciz "ERROR CODE [%03d] %s\n      FAFseek_ERROR5          "
 .asciz "ERROR CODE [%03d] %s\n      FAFwrite_ERROR2         "
 .asciz "ERROR CODE [%03d] %s\n      FAFclose_ERROR          "
 .asciz "ERROR CODE [%03d] %s\n      EEPROM_DEV_ID_ERROR     "
 .asciz "ERROR CODE [%03d] %s\n      EEPROM_SIGNATURE_ERROR  "
 .asciz "ERROR CODE [%03d] %s\n      CHECK_EEPROM_1000_DATA  \n      REPEAT Hollywood ID     "
 .asciz "ERROR CODE [%03d] %s\n      CHECK_EEPROM_1000_DATA  \n      REPEAT Serial Number    "
 .asciz "ERROR CODE [%03d] %s\n      OTHER ERROR "

Error codes that give "NG" after the "PUSH SD CARD, THEN REMOVE IT"
(Side note, I don't know what NG might mean. could just mean "NOT GOOD" but I'll 
check and see if any other documentation provides a meaning.



 .asciz "NAND_RESULT_OK\n"
 .asciz "NAND_RESULT_ACCESS\n"
 .asciz "NAND_RESULT_BUSY\n"
 .balign 4
 .asciz "NAND_RESULT_CORRUPT\n"
 .balign 4
 .asciz "NAND_RESULT_ECC_CRIT\n"
 .balign 4
 .asciz "NAND_RESULT_EXISTS\n"
 .asciz "NAND_RESULT_INVALID\n"
 .balign 4
 .asciz "NAND_RESULT_MAXBLOCKS\n"
 .balign 4
 .asciz "NAND_RESULT_MAXFD\n"
 .balign 4
 .asciz "NAND_RESULT_MAXFILES\n"
 .balign 4
 .asciz "NAND_RESULT_NOEXISTS\n"
 .balign 4
 .asciz "NAND_RESULT_NOTEMPTY\n"
 .balign 4
 .asciz "NAND_RESULT_OPENFD\n"
 .asciz "NAND_RESULT_UNKNOWN\n"
 .balign 4
 .asciz "NAND_RESULT_FATAL_ERROR\n"
 .balign 4
 .asciz "Result: %d OTHER ERROR\n"

Unsure of what this does.



 .asciz "/all.ini"
 .asciz "CHECK_NAND_DATA"
 .asciz "/shared2/test/testlog.txt"
 .asciz "2   EEPROM TEST             "
 .asciz "3   IniDataFunc             "
 .asciz "    SDFinish                "
 .asciz "WRITE_LOG_NG"
 .asciz "NOW EJECTING DISK "
 .asciz "CHECK_LOG_NG"
 .asciz "    ReadIniFile NG          "
 .asciz "\n\n\n      NOW CHECK diag FOLDER ERASE \n"
 .asciz "\n\n      NG  diag FOLDER ERASE  return:%d\n"
 .asciz "\n      NOW CHECK SETTING.TXT PERMISSION  \n"
 .asciz "\n\n      NG  CheckSettingPermission  return:%d\n"
 .asciz "\n\n      NOW CHECK WLAN_Enable country_code:%s\n      WAIT ABOUT 10 sec"
 .asciz "\n\n\n\n      NG  WLAN_Enable  return:%d  "
 .asciz "\n\n      NOW CHECK WLAN_GetEeromCountryCode country_code:%s  \n\n      WAIT ABOUT 10 sec"
 .asciz "\n\n      NG  WLAN_GetEeromCountryCode return:%d  countrycode:%s"
 .asciz "\n\n      NG  strcmp  RIGHT CODE:%s  NAND CODE:%s  "
 .asciz "\n\n    WRITE  read_countrycode:%s == country_code:%s"
 .asciz "\n\n    ReadIniFile[%s]  \n"
 .asciz "4-1 ReadDataFromSD1         "
 .asciz "4-2 ReadDataFromSD1         "
 .asciz "\n\n\n\n\n\n      ERROR  ReadIniFile[%s]  \n"
 .asciz "6   ReadIniData             "
 .asciz "\n -------------------CHECK DATA------------------- "
 .asciz "7   COUNT SD ROW            "
 .asciz "8 CHECK SD STR ROW:%03d/%03d"
 .asciz "sd_country"
 .asciz "\n   NEXT Src \n"
 .asciz "\n   NEXT Dst \n"
 .asciz "\n   NEXT Sum \n"
 .asciz "TestName"
 .asciz "\n FILE%d"
 .asciz "\n SpecialIniFunc SD[%s] NAND[%s]"
 .asciz "\n Ini_func SD[%s] NAND[%s]"
 .asciz "    INIFILE JOB ALL OK      "
 .balign 4
 .asciz "      NG ES_InitLib ret:%d \n\n            POWER OFF"
 .balign 4
 .asciz "/meta/00010000"
 .balign 4
 .asciz "             NANDDelete ret:%d "
 .asciz "(ret1:%d ret2:%d ) "
 .asciz "         ES_DeleteTicket ret:%d  %s"
 .asciz "          ES_DeleteTitle ret:%d  %s"
 .4byte 0

Mentions the final screen and the request to eject what I presume is 122E.
Figure out the formatting for this information.


 "/shared2/diag"
 .balign 4
 .asciz "/shared2/DIAG"
 .balign 4
 .asciz "/shared2/aging"
 .balign 4
 .asciz "CHECK WRITE PERMISSION"
 .balign 4
 .asciz "/title/00000001/00000002/data/setting.txt"
 .balign 4
 .asciz "\n      CheckSettingPermission  read_function ret:%d  "
 .balign 4
 .asciz "\n      CheckSettingPermission  write_function ret:%d "
 .balign 4
 .asciz "\n       SD   FILE[%s]   ->   NAND FILE[%s]\n"
 .asciz "\n       SD   FILE[%s]  <->   NAND FILE[%s]\n"
 .4byte 0
 .asciz "\n       CHECK SD_FILE[%s] CRC  "
 .asciz "\n        SD_FILE[%s]   -> \n       NAND_FILE[%s]"
 .asciz "\n   NEXT MEMFreeToExpHeap \n"
 .asciz "\n   NEXT SDReadLargeInfo \n"
 .balign 4
 .asciz "\n        CHECK SD_FILE[%s] CRC  \n"
 .balign 4
 .4byte 0
 .asciz "\n       SD_FILE[%s]   <-> \n       NAND_FILE[%s]"
 .asciz "\n\n          TITLE  VERSION  CHECK \n"

Mentions more information possibly on a second screen. Figure this out.


 # ROM: 0x7C124
 .asciz "& LOG CHECK\n    Ver.%s    COUNTRY:%s"
 .balign 4
 .asciz "        PUSH SD CARD,\n\n        THEN REMOVE IT           \n\n              AND   \n\n        INSERT DATA SD      "
 .balign 4
 .4byte 0x0C444154
 .asciz "A CHECK & LOG CHECK  Ver.%s  %s"
 .asciz "\n         POWER OFF      "
 .balign 4
 .asciz "POWER OFF -> END\nINSERT DATA SD CARD -> TRY AGAIN "
 .balign 4
 .asciz "TIME  %4u sec \n"
 .asciz "     PUSH SD CARD,\n\n     THEN REMOVE IT   "
 .balign 4
 .asciz "time:%04d"

DATA CHECK AND LOG CHECK information, with unseen so far "REINSERT" SD.



  # ROM: 0x7C3A8
 .asciz "\n [ERROR] FAMount   result:%d   drive:%d FAErrnum:%d     \n"
 .balign 4
 .4byte 0

Seen if you pause on the blue initial screen for mount failures.



"APP: EEPROM Test start\n"
 .asciz "ERR: Cannot get serNo: %d"
 .balign 4
 .asciz "ERR: Failed to initialize ES library, rv=%d"
 .asciz "APP: Initialized ES library\n"
 .balign 4
 .asciz "APP: GetDeviceId=0x%x\n"
 .balign 4
 .asciz "ERR: Default ID found 0x%x"
 .balign 4
 .4byte 0
 .asciz "ERR: Failed to get Device Cert, rv = %d"
 .asciz "ERR: Sign using device key failed %d"
 .balign 4
 .asciz "APP: Sign using device key Finished\n"
 .balign 4
 .asciz "ERR: Device and App Cert Verify Failed %d"
 .balign 4
 .4byte 0
 .asciz "APP: Device and App Cert Verify Passed\n"
 .asciz "DEVCERTS"
 .balign 4
 .asciz "ERR: Dev cert file cannot create: %d"
 .balign 4
 .asciz "ERR: Unable to get file info: %d"
 .balign 4
 .asciz "ERR: Read error occured: %d"
 .asciz "ERR: Duplicate ID (%08x) has found!"
 .asciz "ERR: Duplicate Serial (%08x) has found!"
 .asciz "ERR: FASeek failed: %d"
 .balign 4
 .asciz "ERR: FARead failed: %d"
 .balign 4
 .asciz "ERR: Writing index failed: %d"
 .balign 4
 .asciz "ERR: SD write error: %d"
 .asciz "APP: Write data is finished (index %d)\n"
 .asciz "ERR: SD file close error: %d"

EEPROM test presumably from 122E but checks for errors within EEPROM.



 .asciz "***************************************\n"
 .balign 4
 .asciz " ! ! ! C A U T I O N ! ! !             \n"
 .balign 4
 .asciz "This TV format \"DEBUG_PAL\" is only for \n"
 .balign 4
 .asciz "temporary solution until PAL DAC board \n"
 .balign 4
 .asciz "is available. Please do NOT use this   \n"
 .balign 4
 .asciz "mode in real games!!!                  \n"
 .balign 4
 .asciz "VIConfigure(): Tried to change mode from (%d) to (%d), which is forbidden\n"
 .balign 4

Number of asterisks for the PUSH RESET BUTTON variant and possible error variant
of the TV format not being Interlace or Progressive.