Register - Login
Views: 99382462
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-24-22 01:29:51 AM
Jul - Posts by koolaidman
Pages: 1 2 3 4 5 6
koolaidman
Member
Level: 24


Posts: 81/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 01-06-15 06:44:03 PM, in Star Fox Adventures E3 2002 prototype (5/17/02) (last edited by koolaidman at 01-06-15 07:05:34 PM) Link
Just a heads up. For those wanting to still play this in Dolphin, there has been progress in getting the game to work in newer revisions. You can download one of the development builds on dolphin-emu.org (4.0-4941 as of writing). Dual core works perfectly fine for me now, and most if not all of the graphical glitches "exclusive" to playing this version are gone. Now all that remains are the graphical glitches that are common in this version as well as the final. The performance has also been improved tremendously, so I advise checking it out.

I recommend grabbing the Ishiiruka-Dolphin builds (or download them from directly off of MEGA from here). Most of the performance issues attributed to the game are caused by the great number of times the shader has to be compiled, which causes massive hitching in the frame rate even if your hardware is capable of running much better. This can be greatly reduced by using the Full Async Shader feature present in this build. This feature isn't present in the normal development versions of Dolphin, but it's a great feature to use in games especially like this.

It can cause more graphical problems, however. But it will make playing this as well as the final version MUCH better. I still highly recommend using it.

EDIT: Not sure if this was mentioned before, but if you finish the Ice Mountain part of the demo and return to the title screen to select Thorntail Hollow you start out with Tricky and the staff. While the opening cutscene when you first arrive at Thorntail Hollow still plays it doesn't seem like you can actually advance to the rest of that section in the demo normally because you already have the staff.
koolaidman
Member
Level: 24


Posts: 82/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 01-25-15 03:26:08 PM, in Super Mario Sunshine 60fps patch (NTSC-U) Link
Hey guys.

A few weeks a go I worked on a small patch that will allow Super Mario Sunshine to render double the amount of frames it normally outputs. By changing Dolphin's frame limit (either by use of the VBeam hack or the frame limiter set to 120), we can take advantage of the extra frames by forcing all 60 frames to display in 1 second, thus making the game run at 60fps.

Watch a video here:
http://www.youtube.com/watch?v=9uoBTZxC3Rs

To use in Dolphin, just follow these steps (make sure you have the NTSC-U versions of SMS, GMSE01):
1.) Right click on the game in the game list and go to Properties
2.) Click the "Patches" tab and click "Add..."
3.) Give the patch a name, tick "dword", and set the Offset to 804167B8 and Value to 3F800000
4.) Click "OK", and make sure the patch is ticked.
5.) Click "Config" at the top of the main window, and under the "General" tab set "Framelimit:" to 120. OR - enable the Vbeam hack by right clicking the game in the games list, go to Properties, and put a checkmark next to the Vbeam hack.
6.) Click "OK" and play!

The patch has some side effects though:

1.) By increasing Dolphin's frame limiter, we also speed up the output of the audio. The video cut scenes are unaffected by the value change and so will play at the normal rate normally. But by increasing the Dolphin's frame limiter, the videos now play at double speed. Remarkably, the animations seem to work quite well and don't appear to break anything.
2.) The biggest problem with this patch is that the game won't allow you to enter the worlds from the rainbow goop on walls for some reason. You'd have to hack yourself into the worlds in order to play them (the video was taken from the demo version, so I could warp to those areas from a map select).
3.) Since the developers had to cut the framerate in half during development to improve the water effects, performance can take a hit here and there when using the turbo nozzle in ocean water. You can probably fix this by using the CPU overclock branch (or Tino's Iishiruka custom builds).
4.) You can't seem to finish Shadow Mario off with one last squirt.


As far as I can tell, there are 3 functions that look at the value that I modified for the patch. "drawDVDErr", "SMSGetAnmFrameRate", and "SMSGetVSyncTimesPerSec". It seems that most of the game's other functions take advantage of SMSGetAnmFrameRate the most. The function itself is relatively simple:

(NOTE: These addresses/function names come from the NTSC-U demo version of the game. For some reason, the developers decided to include the debug symbols only in the demo versions. The final retail versions don't have this. You can download the symbol mappings here, but if you want to look at the function in the NTSC-U final the function can be found at 0x802A7BD8)

.text:802A690C # =============== S U B R O U T I N E =======================================

.text:802A690C
.text:802A690C
.text:802A690C # SMSGetAnmFrameRate(void)
.text:802A690C SMSGetAnmFrameRate__Fv: # CODE XREF: TAnimalBase::execWalk((bool))+38p
.text:802A690C # TAnimalBase::execWalk((bool))+40p ...
.text:802A690C
.text:802A690C .set var_8, -8
.text:802A690C .set arg_4, 4
.text:802A690C
.text:802A690C mfspr r0, LR # Move from sprg,
.text:802A6910 stw r0, arg_4(r1) # Store Word
.text:802A6914 stwu r1, -0x18(r1) # Store Word with Update
.text:802A6918 stfd f31, 0x18+var_8(r1) # Store Floating-Point Double-Precision
.text:802A691C lfs f31, -0x3E8(r2) # Load Floating-Point Single-Precision
.text:802A6920 bl VIGetTvFormat # Branch
.text:802A6924 cmpwi r3, 2 # Compare Word Immediate
.text:802A6928 beq is_ntsc # load default ntsc framerate (60)?
.text:802A692C bge loc_802A6940 # Branch if greater than or equal
.text:802A6930 cmpwi r3, 0 # Compare Word Immediate
.text:802A6934 beq is_ntsc # load default ntsc framerate (60)?
.text:802A6938 bge is_pal # load default pal framerate (50)?
.text:802A693C b calc_basefps # patch: frame multiplier value? .5 by default
.text:802A6940 # ---------------------------------------------------------------------------
.text:802A6940
.text:802A6940 loc_802A6940: # CODE XREF: SMSGetAnmFrameRate(void)+20j
.text:802A6940 cmpwi r3, 5 # Compare Word Immediate
.text:802A6944 beq is_ntsc # load default ntsc framerate (60)?
.text:802A6948 b calc_basefps # patch: frame multiplier value? .5 by default
.text:802A694C # ---------------------------------------------------------------------------
.text:802A694C
.text:802A694C is_ntsc: # CODE XREF: SMSGetAnmFrameRate(void)+1Cj
.text:802A694C # SMSGetAnmFrameRate(void)+28j ...
.text:802A694C lfs f31, -0x3E8(r2) # load default ntsc framerate (60)?
.text:802A6950 b calc_basefps # patch: frame multiplier value? .5 by default
.text:802A6954 # ---------------------------------------------------------------------------
.text:802A6954
.text:802A6954 is_pal: # CODE XREF: SMSGetAnmFrameRate(void)+2Cj
.text:802A6954 lfs f31, -0x3E4(r2) # load default pal framerate (50)?
.text:802A6958
.text:802A6958 calc_basefps: # CODE XREF: SMSGetAnmFrameRate(void)+30j
.text:802A6958 # SMSGetAnmFrameRate(void)+3Cj ...
.text:802A6958 lfs f0, -0x408(r2) # patch: frame multiplier value? .5 by default
.text:802A695C lfs f1, -0x3E8(r2) # load default ntsc framerate? (60)
.text:802A6960 fmuls f0, f31, f0 # 60 * .5 = 30
.text:802A6964 fdivs f1, f1, f0 # 60/30 = 2
.text:802A6968 lwz r0, 0x18+arg_4(r1) # Load Word and Zero
.text:802A696C lfd f31, 0x18+var_8(r1) # Load Floating-Point Double-Precision
.text:802A6970 addi r1, r1, 0x18 # Add Immediate
.text:802A6974 mtspr LR, r0 # Move to sprg,
.text:802A6978 blr # Branch unconditionally
.text:802A6978 # End of function SMSGetAnmFrameRate(void)



The function basically looks at your current TV Render Mode and branches off to load what I assume is either the refresh rate or base framerate (in single precision floating point) for that particular render mode. After loading the value, the game loads a second value that pretty much serves as some kind of frame multiplier value that halves the base framerate by default. The patch I made modifies the value that gets multiplied into the base framerate so that instead of multiplying 60 by .5, it multiplies by 1.

This patch could definitely be more refined to help fix the other issues. I believe this patch could work on hardware as well, but we would need to find a way to change the game's frame buffer to allow 60 frames to be displayed in 1 second.

Since I kind of cheated by using a symbol list, I imagine that finding the values that affect the frame rate can be easily found in other games as well. Unfortunately, I spent many days trying to find something equivalent in Wind Waker but couldn't find anything that actually affects the frame rate. The symbol list in that game references the word 'framerate' a few times but they all seem to be related to the player actor's animations, not the game itself. The game seems to set the frame buffer somewhere during the "phase" functions, but I'm not sure how it works. The function names are difficult to understand and tracing calls the disassembly manually in IDA Pro alone is almost impossible unless you use Dolphin's debugger. I looked for data that could be modified in a similar way to the SMS patch (like 1.0/0.5/30.0/25.0 in floating point), but nothing seems to be relevant to the frame rate and affects entirely different functions. The game even seems to have it's own version of the GX NTSC rendering mode (g_ntscZeldaIntDf/g_ntscZeldaProg), for some reason.

I'm less than an amateur when it comes to this stuff, so I would love if someone could figure out how to unlock the framerate in Wind Waker/Twilight Princess, or any other game for that matter now that Dolphin can allow overclocking.
koolaidman
Member
Level: 24


Posts: 83/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 01-26-15 11:35:59 AM, in Weird Discoveries Link
GC-forever's hack board is a treasure trove of codes that I don't believe I've seen anywhere else. I've seen codes for the map select and other debugging features for Animal Crossing (I don't think we had a NTSC code for that yet), a really nifty debugger for Final Fantasy Crystal Chronicles, and Megaman X Command Mission. I'm reposting these here just in case, but all the credit goes to Ralf@gc-forever for the original codes!

Final Fantasy Crystal Chronicles (US/PAL):



Enable Development Mode [Ralf] (PAL)
2WV8-DY7X-7XZUC
2H3R-6UD5-A2ZN6
32XR-UKWW-AHN5J
40BV-2NG7-884KH
1B3G-NBWX-3MAUZ
J8JJ-WTW2-0MHNF
NB9G-3Q80-F3WG6
4DY7-UU9D-3EYJ4
5EH4-ZMFN-7CKCC
HXUP-C7D7-1K386

Enabled Development Mode (for NTSC, original code by Ralf, ported over by me):
040DFD4C A004005C
040DFD50 540006F7
0402184C A003FF0C
04021894 54E0052B
040218A0 54E00529
040218BC 54E0056B
04039364 A003005C
04046768 8003001C
04047ADC A063FF0C

The development mode can be controlled with a second controller plugged into port 2:

A = Open Debug Menu
B = Close Debug Menu
Z = Debug Info On/Off
L = Select Player/Controller
R = Debug Camera On/Off
START = Speed x0
X = Speed x0, x1/8, x1/4, x1/2
Y = Speed x1, x8

The debug menu can be controlled with controller 1 or 2:

A = Toggle Menu Option
B = Close Debug Menu
DPad Up/Down = Select Debug Option

The debug camera can be controlled with controller 1:

L = Move Up
R = Move Down
A-Stick Up = Move Backward
A-Stick Down = Move Forward
A-Stick Left = Zoom In
A-Stick Right = Zoom Out
C-Stick Up = Look Down
C-Stick Down = Look Up
C-Stick Left = Look Left
C-Stick Right = Look Right

The debug process bar can be controlled with controller 1:

L (Hold) = Show Extended Process Info


Megaman X: Command Mission (PAL):


Enable Development Mode [Ralf]
5KMU-6MPD-UJUP7
T8BE-0FHJ-MRQHC
2EH0-ANZK-B1UAJ
3HKT-X4K6-1G4B0
D0N8-UUE2-8JFM3
K1AV-TQR4-1DRV6

The development mode can be controlled with a second controller plugged into port 2:

Game Screen

START = Debug Pause Menu On/Off (The debug pause menu will be controlled mainly with pad 1)
A = Walk Through Walls On/Off
B = Debug Info On/Off
X (Hold) = Freeze Game
Y (Hold) = Slow Motion
R = Instant Battle

Battle Screen

A = Instant Win
C-Stick = Change Data (LE/WE)
Stick/DPad Up = Change View Mode
Stick/DPad Down = Reset View Mode

Inventory Screen

START = Debug Item Mode On/Off
Stick/DPad Up/Down = Change Item
Stick/DPad Left/Right = Change Value

Map Screen

Stick/DPad = Move Map
L/R = Zoom In/Out



Animal Crossing (US):

Enable Debug Mode [Ralf]
ZQJ2-FQYR-J4DZ4
K5FW-Y9WY-MH2PZ
UAXQ-3T7A-XKN3D

Debug stuff can be controlled with a second controller plugged into port 2.

Debug Mode On/Off (Press R + DPad Up/Down) [Ralf]
JBGN-MHB5-WH70F
WB5R-Y7YH-6FBHC
28MN-D9B7-NAP8K
12P0-Z375-UK3AG
2N5Z-GB2B-H3BTZ

Enable Forest Map Select (Press RESET) [Ralf]
NP7E-4T7X-QX8PU
NWFQ-2WNR-99BU7
15GC-XJ2U-URG0F
K4T2-961B-NEAHM
7551-MZYA-H9J40
K662-MYEH-HT81Q

Press the RESET button once at title screen or twice in-game to activate the
Forest Map Select screen.

Enable Debug Player Select (Press RESET) [Ralf]
2QDF-X2YZ-7GH27
PQ07-R7PA-NN3HV
15GC-XJ2U-URG0F
K4T2-961B-NEAHM
7551-MZYA-H9J40
K662-MYEH-HT81Q

Enable Debug FlashROM Screen (Press RESET) [Ralf]
PQDC-MQT9-9HWJ0
WNRR-EH35-7UAY7
15GC-XJ2U-URG0F
K4T2-961B-NEAHM
7551-MZYA-H9J40
K662-MYEH-HT81Q


There are a lot more for other games over at gc-forever. Might be worth investigating.
koolaidman
Member
Level: 24


Posts: 84/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 01-26-15 11:54:20 PM, in Weird (and intresting) file inside Digimon Data Squad Link
wtf

The file contains data from Legaia 2: Duel Saga. In fact, the Japanese release of Legaia 2 contains the same DMY1G.001 file. It's identical byte for byte.

But the odd part is that Legaia 2 was made by Prokion, this was made by Namco. Obviously meant for dummy data, but still. It looks like that the files inside DMY1G.002 are from an even earlier version of the game. The Japanese final was compiled 10/31/2001, the version inside the first DMY1G.002 is from 7/7/2001, and the version inside of the second DMY1G.002 is from 3/6/2001. The version inside of the corrupt DMY1G.002 is from 2000. Wow.

There definitely is some data that can be extracted, but it's pretty strange. As you said, the extractable elf file can be viewed and it's twice the size as the retail executable for Legaia 2.

I guess whoever was working on this game also worked on Legaia 2.
koolaidman
Member
Level: 24


Posts: 85/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 01-30-15 02:20:44 PM, in Phantasy Star Online Network Trial Edition (Dreamcast NTSC-J) (10/25/2000) Link
Something related, but I found and uploaded the Gamecube Network Trial Edition for Episode 1 & 2. You can grab it here.

This won't boot to the actual game unless you have the modem adapter connected (the broadband adapter wasn't out at the time of this release so support wasn't added yet). Dolphin doesn't have support for the modem, although I thought that work was done to make a dummy version of the adapter to let the game boot.

Unlike the Dreamcast NTE, you can actually play this offline...multiplayer only though. I'm curious how much work it would take to patch the game to allow the other offline options to be enabled.
koolaidman
Member
Level: 24


Posts: 86/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 02-04-15 01:49:28 PM, in Pikmin 2 60fps patch (NTSC-U) (last edited by koolaidman at 02-04-15 01:50:56 PM) Link
I made another 60fps patch! This time for Pikmin 2.

NTSC-U (use Dolphin to create a "Patch"):
0x8014B778:dword:0x38800001
0x8021C674:dword:0x38800001
0x8021CF64:dword:0x38800001
0x8044CD88:dword:0x38800001

It doesn't have many game breaking problems as the Super Mario Sunshine patch. The music plays fine, and it even works in multiplayer. The only thing that seems broken are cutscenes (since the timing is thrown off) and I think there might be some minor gameplay issues as well. But other than that, it should be okay to use.

The game has a symbol list, but it appears to be filled with garbage data in the NTSC-U final. I have a NTSC-U demo that has a symbol mapping file that's actually in plain text, so I was able to find a function called "System::setFrameRate((int))". There are a couple of functions that call this function. If you pass "2" as the function parameter, it sets the game's framerate to 30. If you pass "1", it sets it to 60. I manually changed the instruction that loads the integer so that every call to the function uses "1", effectively making everything run at 60fps.

Enjoy!
koolaidman
Member
Level: 24


Posts: 87/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 02-04-15 02:51:37 PM, in Weird Discoveries Link
In the Version 14 2003 Gamecube disk, there's a password protected zip file called "rubysab-timerfix-1219-10-eng.zip". I haven't been successful in cracking the password for the archive though...

You can grab it here. Anyone want to give it a try?
koolaidman
Member
Level: 24


Posts: 88/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 02-08-15 01:46:34 PM, in Super Mario Sunshine 60fps patch (NTSC-U) (last edited by koolaidman at 02-08-15 02:02:44 PM) Link
Originally posted by Rena
Originally posted by BMF54123
Originally posted by koolaidman
2.) The biggest problem with this patch is that the game won't allow you to enter the worlds from the rainbow goop on walls for some reason. You'd have to hack yourself into the worlds in order to play them (the video was taken from the demo version, so I could warp to those areas from a map select).
...
4.) You can't seem to finish Shadow Mario off with one last squirt.

How bizarre. This reminds me of some kind of evil copy protection more than anything...

I wonder if it's just that the physics engine and enemy hitstun/animation timers are tied to the frame rate, so changing this multiplier affects them. It could be that halving the frame rate was a quick and dirty hack to fix some physics issues.

It might be worth patching only SMSGetVSyncTimesPerSec to double the value. If nothing else that might fix the animations.


This is definitely the case. If you mess with the modifier value on the patch to be a smaller value than 1.0 (but no less than .5), the illuminated goop/super imposed animated picture of the level actually does show up albeit very very slowly (I clocked 3 minutes before I could jump in when the modifier value was around .8 or so). There have been some reports of saving issues because I suppose the game is going through the save menus faster than it can actually save the game. Although I haven't personally encountered such problem, it might be caused by people who try to create a completely new saved game (which would obviously take longer the first time). There is a function called "MActor::getFrameCtrl((int))", which might be what we need to look at if I can find the warp actors.

When the modifier is at 1.0, however, there are a few moments where the goop warp/shadow mario stuff actually works. In the begining of the game, the first chase with Shadow Mario actually works. When he creates the first warp goop for the first level you go to, that actually does work in that instance after he jumps into it himself. After completing the first level's mission and returning to Delfino Plaza, that's when the issues seem to come up.

SMSGetVsyncTimesPerSec is actually very very similar to SMSGetAnmFrameRate. The only difference is the function isn't getting the rate, it's not dividing the contents of f1 after multiplying .5 and 60 together. The locations of the two values are the same as the equivalent values that are read by the AnmFrameRate function. You can even change the value '60' to something like '120' and it'll have the same effect. I believe I tried changing both, but they all have the same effect.



.text:802A697C # SMSGetVSyncTimesPerSec(void)
.text:802A697C SMSGetVSyncTimesPerSec__Fv: # CODE XREF: TConsoleStr::getWipeCloseTime((void))+Cp
.text:802A697C # sub_80175B54+1D4p ...
.text:802A697C
.text:802A697C .set var_8, -8
.text:802A697C .set arg_4, 4
.text:802A697C
.text:802A697C mflr r0 # Move from link register
.text:802A6980 stw r0, arg_4(r1) # Store Word
.text:802A6984 stwu r1, -0x10(r1) # Store Word with Update
.text:802A6988 stfd f31, 0x10+var_8(r1) # Store Floating-Point Double-Precision
.text:802A698C lfs f31, -0x3E8(r2) # Load Floating-Point Single-Precision
.text:802A6990 bl VIGetTvFormat # Branch
.text:802A6994 cmpwi r3, 2 # Compare Word Immediate
.text:802A6998 beq loc_802A69BC # load 60
.text:802A699C bge loc_802A69B0 # Branch if greater than or equal
.text:802A69A0 cmpwi r3, 0 # Compare Word Immediate
.text:802A69A4 beq loc_802A69BC # load 60
.text:802A69A8 bge loc_802A69C4 # Branch if greater than or equal
.text:802A69AC b loc_802A69C8 # load .5
.text:802A69B0 # ---------------------------------------------------------------------------
.text:802A69B0
.text:802A69B0 loc_802A69B0: # CODE XREF: SMSGetVSyncTimesPerSec(void)+20j
.text:802A69B0 cmpwi r3, 5 # Compare Word Immediate
.text:802A69B4 beq loc_802A69BC # load 60
.text:802A69B8 b loc_802A69C8 # load .5
.text:802A69BC # ---------------------------------------------------------------------------
.text:802A69BC
.text:802A69BC loc_802A69BC: # CODE XREF: SMSGetVSyncTimesPerSec(void)+1Cj
.text:802A69BC # SMSGetVSyncTimesPerSec(void)+28j ...
.text:802A69BC lfs f31, -0x3E8(r2) # load 60
.text:802A69C0 b loc_802A69C8 # load .5
.text:802A69C4 # ---------------------------------------------------------------------------
.text:802A69C4
.text:802A69C4 loc_802A69C4: # CODE XREF: SMSGetVSyncTimesPerSec(void)+2Cj
.text:802A69C4 lfs f31, -0x3E4(r2) # Load Floating-Point Single-Precision
.text:802A69C8
.text:802A69C8 loc_802A69C8: # CODE XREF: SMSGetVSyncTimesPerSec(void)+30j
.text:802A69C8 # SMSGetVSyncTimesPerSec(void)+3Cj ...
.text:802A69C8 lfs f0, -0x408(r2) # load .5
.text:802A69CC lwz r0, 0x10+arg_4(r1) # Load Word and Zero
.text:802A69D0 fmuls f1, f31, f0 # Floating-Point Multiply Single-Precision
.text:802A69D4 lfd f31, 0x10+var_8(r1) # Load Floating-Point Double-Precision
.text:802A69D8 addi r1, r1, 0x10 # Add Immediate
.text:802A69DC mtlr r0 # Move to link register
.text:802A69E0 blr # Branch unconditionally
.text:802A69E0 # End of function SMSGetVSyncTimesPerSec(void)



This seems to me that we'll have to look at what other functions look at not only these values, but these two functions. I don't know what the rainbow goop could be called, or what functions are tied to the Shadow Mario hit count. Most of the problems I have with finding the functions to change are in the naming conventions they used on the functions themselves. It might also be possible that the functions that call both of these functions take the return values and throw them into other functions many instructions down the road, which also make things a little tricky (although not impossible).

One of the things I'd like to do is figure out how to change the "frame buffer" or frame cap of the game so that it will display all 60 frames in 1 second. I use the term frame buffer loosely because even though the game calls certain things by that name I have no idea what names they could've been thinking of that limits the max framerate like that. Right now it's still limited to 30, which forces everyone to use Vbeam. The values generated with these two functions seem unrelated to whatever function sets the frame buffer. While I don't think this could fix the frame timing issues that saving/Shadow Mario/the warp stuff depends on, it would be ideal to make the patch just a bit more complete.

EDIT: As a side note since this topic is gaining more activity than the other one - about Wind Waker. I was given a disassembly that incorporates the symbol mappings that are included in the NTSC-U version. I went through every value in the .sdata2 segment that is used by interesting/obvious objects and such and surprisingly, absolutely no value seems to directly correlate with the number of frames rendered. I know there are other segments that could hold important values, but this makes me wonder either or not the values are hard coded into the instructions. I think I've proven that the NTSC version of the game contains little to no PAL references (in fact, the PAL version takes similar label names for pieces of data that are NTSC specific and change them for PAL, i.e g_ntscZeldaIntDf). I was wondering if someone wouldn't mind taking all the symbols included in the PAL version and doing the same as the database I was given for the NTSC version. I want to compare the two versions side by side to see where there might be slight changes in the subroutines that might be making the framerates run at 25/30 and what not.
koolaidman
Member
Level: 24


Posts: 89/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 02-28-15 02:33:48 PM, in Star Fox Adventures E3 2002 prototype (5/17/02) (last edited by koolaidman at 02-28-15 02:34:33 PM) Link
Wow, this build is the gift that keeps on giving.

I was thinking the next thing we should do is compare the gametext stuff with the final version. I'm sure there are many dialog changes all over the place. I'm curious if there are any big dialog changes between the two versions that might change the context of the story itself? Particularly in the later parts of the game.

The only problem with comparing the two versions is that the overall placement of the dialog in each version is different, even though most of the dialog is relatively the same (with small changes in grammar). It seems like they were playing around with the format a bit after the prototype version, since the file sizes are considerably larger than they end up being in the final.

Also, I think we should think about getting more of this stuff onto the wiki. I know this thread is a tad messy now, but there's a lot of info here that would be great to gather all in one place. I would do it but I suck at creating wiki articles from scratch.
koolaidman
Member
Level: 24


Posts: 90/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 03-05-15 01:08:05 PM, in Star Fox Adventures E3 2002 prototype (5/17/02) (last edited by koolaidman at 03-05-15 07:30:30 PM) Link
Originally posted by 2Tie
Apparently someone might have obtained a cart of DP along with some other interesting goods, looks like they're talking with Unseen64 on preserving the rom

credit to uh abahbob for showing me that


Might be interesting. I remember speaking with monokoma (@Unseen64) a long time a go about some other N64 prototypes from the DreamTR sale. I forget if he has the capabilities to dump them or not. Regardless, I'd advise the two of them to keep a low profile on that for a while.

My body is ready. I'm so ready to tear that ROM apart.

EDIT: It seems fake. Someone said that the images of the script were taken from another thread on ASSEMBlers.
koolaidman
Member
Level: 24


Posts: 91/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 03-07-15 01:29:52 PM, in Star Fox Adventures E3 2002 prototype (5/17/02) Link
Not sure if this was posted before, but CDF Private posted the source code to his Adventure model ripper (converts zlib compressed models/maps to maya files). I think there were some people looking for this, so you can grab it here. What makes this unique is that it can actually map whatever is in the TEX files to the ripped model. The only problem with this as far as the kiosk demo goes is that the kiosk demo contains a mixture of LZO and raw model files, which this program doesn't support at the moment.

Also, I want to take another shot at getting the music to sound right. Does anyone have KCat's midi/soundfont ripping tools on hand?

I started to think more about why these old DP files were included in the demo. To me, it's starting to seem like when they initially started development on SFA, they lifted all their assets from Dinosaur Planet and worked with them until they decided to split the files apart into their own folders and used the MusyX engine. The BLOCKS.bin, for instance, seems to contain Dinosaur Planet maps but it seems that they were changing/using those when the game was actually SFA (for instance, look at the Cloudrunner Fortress maps and notice that the models of the Cloudrunner statues are using the high poly SFA models). This would also explain why MPEG.bin contains a mixture of DP dialog and rerecorded SFA dialog. When they decided to restructure the game, the files from the old versions were left behind until someone was halfassed to clean it up.

This is just a theory though, but it would explain why the files are the way they are.

koolaidman
Member
Level: 24


Posts: 92/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 07-07-15 07:11:35 PM, in Panzer Dragoon Saga Prototype (9/16/97) Title Debug Menus Enabled (last edited by koolaidman at 07-08-15 01:56:49 AM) Link

Download here!

About 7 years a go, drx released a few prototypes for Panzer Dragoon Saga. The earliest one (9/16/97) is the most interesting of the bunch. While it does have a debugger activated by default on the second controller while in game, the prototype only has that much enabled which left a lot of the game unexplored. It was reported that the game had a sound test but as far as I know no one has figured out how to access it until now. It turns out that the game has two sets of title screen selections, one for retail release and one for development (the former is activated by default in this prototype). The two arrays contain the string for the entry on the title screen, some padding data (although it might be data relating to where it's printed on the screen?), and a loading subroutine for that option. See the code below:


ROM:0603E4D0 title_select_list:.data.l h'1FFFB       ; DATA XREF: ROM:loc_6023174o

ROM:0603E4D0 ; ROM:off_60231E0o
ROM:0603E4D4 .data.l aNewGame ; "NEW GAME"
ROM:0603E4D8 .data.l loc_60235D6
ROM:0603E4DC .data.l h'1FFFC
ROM:0603E4E0 .data.l aContinue ; "CONTINUE"
ROM:0603E4E4 .data.l loc_60235E0
ROM:0603E4E8 title_select_list_debug:.data.l h'1FFF8 ; DATA XREF: ROM:0602316Co
ROM:0603E4E8 ; ROM:off_60231DCo
ROM:0603E4EC .data.l aNewGame ; "NEW GAME"
ROM:0603E4F0 .data.l loc_60235D6
ROM:0603E4F4 .data.l h'1FFF9
ROM:0603E4F8 .data.l aContinue ; "CONTINUE"
ROM:0603E4FC .data.l loc_60235E0
ROM:0603E500 .data.l h'1FFFA
ROM:0603E504 .data.l aTown ; "TOWN"
ROM:0603E508 .data.l loc_60235EA
ROM:0603E50C .data.l h'1FFFB
ROM:0603E510 .data.l aField ; "FIELD"
ROM:0603E514 .data.l loc_60235F2
ROM:0603E518 .data.l h'1FFFC
ROM:0603E51C .data.l aBattle ; "BATTLE"
ROM:0603E520 .data.l loc_60235FA
ROM:0603E524 .data.l h'1FFFD
ROM:0603E528 .data.l aSound ; "SOUND"
ROM:0603E52C .data.l loc_6023602
ROM:0603E530 .data.l h'1FFFE
ROM:0603E534 .data.l aMovie ; "MOVIE"
ROM:0603E538 .data.l loc_602361C



In 1ST_READ.PRG, the game will do the following to determine which list to load:


ROM:06023160 loc_6023160:                            ; CODE XREF: ROM:06023154j

ROM:06023160 mov.w #h'F6, r4 ; Move Immediate Word Data
ROM:06023162 mov.l #sub_601DC88, r3 ; Move Immediate Long Data
ROM:06023164 jsr @r3 ; sub_601DC88 ; Jump to Subroutine
ROM:06023166 nop ; No Operation
ROM:06023168 tst r0, r0 ; Test Logical
ROM:0602316A bt loc_6023174 ; Branch if True
ROM:0602316C mov.l #title_select_list_debug, r3 ; Move Immediate Long Data
ROM:0602316E mov.l r3, @(8,r14) ; Move Structure Long Data
ROM:06023170 bra loc_602317A ; Branch
ROM:06023172 mov #7, r0 ; Move Immediate Byte Data
ROM:06023174 ; ---------------------------------------------------------------------------
ROM:06023174
ROM:06023174 loc_6023174: ; CODE XREF: ROM:0602316Aj
ROM:06023174 mov.l #title_select_list, r2 ; Move Immediate Long Data
ROM:06023176 mov #2, r0 ; Move Immediate Byte Data
ROM:06023178 mov.l r2, @(8,r14) ; Move Structure Long Data



To fix this issue, I simply changed the branch if true to a branch if false and it worked just fine. I know I could've released a patch/code for this instead of just uploading the game again, but I wasn't sure if the release was still floating around or not so I figured I should put it up again just in case. I'm sure that this still exists in all release of Saga, so I could potentially come up with a patch/code for all the other releases as well.

Some pictures of the menus:





Enjoy!

PS: Select Town -> EVENT059 and watch the cutscene. All the voices are using the motion capture actor scratch voices. Pretty neat.

EDIT: I noticed SSF doesn't want to load the ISO for me. Here's a savestate instead (tested with the latest test version).
koolaidman
Member
Level: 24


Posts: 93/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 10-15-15 09:07:06 PM, in Star Fox Adventures E3 2002 prototype (5/17/02) Link
Originally posted by sephirosu
Can we get new links to the FLAC and Mp3 versions of the soundtrack? The mega links are dead


Thanks for letting me know, try the links again.
koolaidman
Member
Level: 24


Posts: 94/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 10-27-15 10:45:06 PM, in Weird Discoveries Link
Found a level select in Castle of Illusion that I don't think has ever been found.



Game Genie codes:
RGST-A6XN (UE)
RGTA-A6VL (J)

There's a chunk of code that goes unused around where the sound test code is. Normally, a return is called just before the game can load up and manipulate the stage select. I just nop'd it out so it runs normally and everything works fine. Something interesting to note that I found while hacking the game, the second 'round' within the first forest stage was originally supposed to be what is now the forth round (with the ghosts and stuff). This is evident with the level select as well as the fact that if you speed up the tempo of the beginning of the track used in the ghost part of the stage, it matches up with the music used from the first round. It was probably changed because the developers thought the stage was more difficult, so it was switched around so it would be before the boss at the last minute.
koolaidman
Member
Level: 24


Posts: 95/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 10-28-15 08:12:53 PM, in Weird Discoveries Link
Originally posted by ICEknight
Originally posted by koolaidman
Found a level select in Castle of Illusion that I don't think has ever been found.



Game Genie codes:
RGST-A6XN (UE)
RGTA-A6VL (J)

There's a chunk of code that goes unused around where the sound test code is. Normally, a return is called just before the game can load up and manipulate the stage select. I just nop'd it out so it runs normally and everything works fine. Something interesting to note that I found while hacking the game, the second 'round' within the first forest stage was originally supposed to be what is now the forth round (with the ghosts and stuff). This is evident with the level select as well as the fact that if you speed up the tempo of the beginning of the track used in the ghost part of the stage, it matches up with the music used from the first round. It was probably changed because the developers thought the stage was more difficult, so it was switched around so it would be before the boss at the last minute.


Cool! One of the first issues of Hobby Consolas mentioned that you could access this by "pressing every single button, at the title screen", but obviously never worked.


Heh, I also looked into the no clip cheat that's been floating around and it seems to have been removed (completely?). I disassembled the pause game code and it's one of the few functions that have a ton of nop's inside (code from japanese version):

ROM:00009808 PauseGame:                              ; CODE XREF: GM_StageLoop+34p

ROM:00009808 move.w #$100,(z80_bus_request).l ; Move Data from Source to Destination
ROM:00009810 nop ; No Operation
ROM:00009812 nop ; No Operation
ROM:00009814 nop ; No Operation
ROM:00009816 nop ; No Operation
ROM:00009818 tst.b (RAM_EnablePauseFlag).w ; 1 = true, 0 = false
ROM:0000981C bne.s loc_9834 ; Branch if Not Equal
ROM:0000981E move.b #$80,(byte_A01C12).l ; Move Data from Source to Destination
ROM:00009826 nop ; No Operation
ROM:00009828 nop ; No Operation
ROM:0000982A move.b #0,(byte_A01C13).l ; Move Data from Source to Destination
ROM:00009832 bra.s end ; Branch Always
ROM:00009834 ; ---------------------------------------------------------------------------
ROM:00009834
ROM:00009834 loc_9834: ; CODE XREF: PauseGame+14j
ROM:00009834 move.b #$C1,(byte_A01C0A).l ; Move Data from Source to Destination
ROM:0000983C nop ; No Operation
ROM:0000983E nop ; No Operation
ROM:00009840 move.b #1,(byte_A01C13).l ; Move Data from Source to Destination
ROM:00009848
ROM:00009848 end: ; CODE XREF: PauseGame+2Aj
ROM:00009848 move.w #0,(z80_bus_request).l ; Move Data from Source to Destination
ROM:00009850 rts ; Return from Subroutine
ROM:00009850 ; End of function PauseGame



I'd wager if the code to move Mickey around in no clip mode still existed it would've been around where this code is located or maybe where the code for the player is too. But I looked around both and couldn't find anything that was either predictable or untouched that might be related to it.
koolaidman
Member
Level: 24


Posts: 96/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 12-20-15 10:58:54 PM, in Phantasy Star Online Network Trial Edition (Dreamcast NTSC-J) (10/25/2000) (last edited by koolaidman at 12-21-15 12:20:56 AM) Link
Something related again. Going back to the PSO EP1&2 Trial for the GC, I can now continue past the "Modem Adapter not Found" screen in Dolphin with a simple game patch. Or if you don't have a modem adapter at home, this patch will help you play the multiplayer modes without it.



You couldn't get this far without having the modem adapter plugged in. Dolphin only emulates the BBA, and lacks a dummy modem adapter to get past the screen that yells at you for not having the modem adapter connected. However, I went through the PSOV3.dol executable and managed to track down the instruction that loads the Sega screen and beyond if the Modem check passes.

I noticed that this game indirectly has symbol names for a lot of the main game functions. I say indirectly because these are stored as strings that the function calls to print for some debugger. I found a function ironically called "TAdTrialModemChkGC" in the dol file. I traced which function reads the offset to this string and figured that the function is at 80381F38. I traced the calls to this function and discovered that 80194E98 has a switch table that jumps to this function (case 2 - 80194F34). At 80194F40, the program will compare 0 with r3 and if not equal will jump to 80194F6C. At 80194F6C, the program will then run the Sega/Sonic Team logo screen subroutines - which is what we want.

So, in order to get to the Sega screen, we just change the conditions so that we jump to 80194F6C from the start. I made a patch that will change it. To apply in Dolphin:

1.) Right click on the game in your game list and click Properties
2.) In the Properties window, click on the Patches tab
3.) Click "Add..." at the bottom
4.) Give the patch a name like "Skip Modem Check"
5.) Change type to dword
6.) In the offset field type "80194F40"
7.) In the value field type "4182002C"
8.) Click "OK" and make sure there's a check mark next to the patch.
9.) Go into your Dolphin settings and make sure "Enable Cheats" is on.

A raw code is 80194F40 4182002C. I don't know how to convert it to a Action Replay/Gecko Code though...

I tested the multiplayer in Dolphin and everything seems to work. You can select Forest, Caves, and Mines from the teleporter and play co-op.

Next I'll see if maybe I can get the single player offline campaign loaded up...

EDIT: Looks like there are files missing to make it playable.

16:10:851 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_visuallobbyo.dat' was not found under /.
16:10:851 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:10:851 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:10:851 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_visuallobbyo.dat' was not found under /.
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_visuallobbyo.dat
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_visuallobbyo.dat
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Not Found map_visuallobbyo.dat
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs01_00o.dat' was not found under /.
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs01_00o.dat' was not found under /.
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:10:852 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:10:853 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs01_00o.dat
16:10:853 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs01_00o.dat
16:10:853 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:10:853 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:10:853 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Not Found map_vs01_00o.dat
16:10:853 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs02_00o.dat' was not found under /.
16:10:853 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:10:853 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:10:854 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs02_00o.dat' was not found under /.
16:10:854 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:10:854 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:10:854 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:10:854 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:10:854 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs02_00o.dat
16:10:854 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs02_00o.dat
16:10:854 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:10:855 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:10:855 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Not Found map_vs02_00o.dat
16:10:869 FileMonitor.cpp:103 W[FileMon]: 954 kB gsl_set_enemy.gsl
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_visuallobbye.dat' was not found under /.
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_visuallobbye.dat' was not found under /.
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_visuallobbye.dat
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_visuallobbye.dat
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:287 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Not Found map_visuallobbye.dat
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs01_00e.dat' was not found under /.
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs01_00e.dat' was not found under /.
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs01_00e.dat
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs01_00e.dat
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Not Found map_vs01_00e.dat
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs02_00e.dat' was not found under /.
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs02_00e.dat' was not found under /.
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:288 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:289 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:289 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs02_00e.dat
16:12:289 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs02_00e.dat
16:12:289 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:289 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:289 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Not Found map_vs02_00e.dat
16:12:303 FileMonitor.cpp:103 W[FileMon]: 274 kB gsl_set_event.gsl
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00.evt' was not found under /.
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00.evt' was not found under /.
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00.evt
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00.evt
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:320 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_boss03.evt' was not found under /.
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_boss03.evt' was not found under /.
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_boss03.evt
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_boss03.evt
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:720 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_visuallobby.evt' was not found under /.
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_visuallobby.evt' was not found under /.
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_visuallobby.evt
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_visuallobby.evt
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs01_00.evt' was not found under /.
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:755 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs01_00.evt' was not found under /.
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs01_00.evt
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs01_00.evt
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs02_00.evt' was not found under /.
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_vs02_00.evt' was not found under /.
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs02_00.evt
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_vs02_00.evt
16:12:756 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:757 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:12:771 FileMonitor.cpp:103 W[FileMon]: 7 kB bm_eff_freeze.bml
16:12:870 FileMonitor.cpp:103 W[FileMon]: 1 kB eff_freeze.GVM
16:12:970 FileMonitor.cpp:103 W[FileMon]: 20 kB ws_data_jp.bin
16:13:104 FileMonitor.cpp:103 W[FileMon]: 33,835 kB sound.bin
16:13:304 FileMonitor.cpp:103 W[FileMon]: 510 kB Scene/map_city00_00n.rel
16:13:604 FileMonitor.cpp:103 W[FileMon]: 96 kB Scene/map_city00_00c.rel
16:13:739 FileMonitor.cpp:103 W[FileMon]: 1,475 kB Scene/map_city00.GVM
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00t.rel' was not found under /Scene/.
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00t.rel' was not found under /Scene/.
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00t.rel
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00t.rel
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:297 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:306 FileMonitor.cpp:103 W[FileMon]: 0 kB Scene/map_city00_00.tam
16:14:321 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00bm.bin' was not found under /Scene/.
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00bm.bin' was not found under /Scene/.
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00bm.bin
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00bm.bin
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00i.bin' was not found under /Scene/.
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00i.bin' was not found under /Scene/.
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:322 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:323 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:323 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00i.bin
16:14:323 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00i.bin
16:14:323 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:323 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:325 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00s.gj' was not found under /Scene/.
16:14:325 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:325 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00s.gj' was not found under /Scene/.
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00s.gj
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00s.gj
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00r.rel' was not found under /Scene/.
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0040201:can't open a file.(gcCiGetFileSize)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: Warning: DVDOpen(): file 'map_city00_00r.rel' was not found under /Scene/.
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0092911VDOpen fail.(gcCiOpen)
16:14:326 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:327 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: cvFsOpen #6:open failed
16:14:327 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00r.rel
16:14:327 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E00041205 ADXSTM_OpenFnameEx: can't open map_city00_00r.rel
16:14:327 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:327 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: E0110901:can't open file.(ADXF_Open)
16:14:338 FileMonitor.cpp:103 W[FileMon]: 3 kB obj_f_enemy.bml
16:14:438 FileMonitor.cpp:103 W[FileMon]: 2 kB RaderMapFrame.GVM
16:14:606 FileMonitor.cpp:103 W[FileMon]: 6 kB map_city00d.dat
16:14:738 FileMonitor.cpp:103 W[FileMon]: 9 kB particleentrya00.dat
16:14:872 FileMonitor.cpp:103 W[FileMon]: 8 kB bm_tec_regurar.bml
16:14:972 FileMonitor.cpp:103 W[FileMon]: 0 kB tecregular.GVM
16:15:072 FileMonitor.cpp:103 W[FileMon]: 49 kB indirect.dat
16:15:206 FileMonitor.cpp:103 W[FileMon]: 0 kB indinfo.dat
16:15:306 FileMonitor.cpp:103 W[FileMon]: 2,488 kB gsl_city.gsl
16:15:707 FileMonitor.cpp:103 W[FileMon]: 7 kB PlyMotionNpcTown.cpt
16:15:840 FileMonitor.cpp:103 W[FileMon]: 2,488 kB gsl_city.gsl
16:17:641 FileMonitor.cpp:103 W[FileMon]: 17 kB TextShopJapanese.rel
16:17:742 FileMonitor.cpp:103 W[FileMon]: 2 kB WeaponRandomNormal.rel
16:17:841 FileMonitor.cpp:103 W[FileMon]: 0 kB ArmorRandom.rel
16:17:943 FileMonitor.cpp:103 W[FileMon]: 0 kB ToolRandom.rel
16:18:043 FileMonitor.cpp:103 W[FileMon]: 0 kB JudgeItem.rel
16:18:143 FileMonitor.cpp:103 W[FileMon]: 9 kB bm_obj_city_board_normal.bml
16:18:258 HW\EXI_DeviceIPL.cpp:287 N[OSREPORT]: main() : Main Mode Initialize()
koolaidman
Member
Level: 24


Posts: 97/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 02-27-16 06:35:47 PM, in ST II Turbo (weird Genesis SFII beta...) Link
A few things I noticed.

The "CAPCOM TEST DATA" string belongs in a referenced table for all the speeches every character makes when they win a match. For some reason, the table with all the pointers to each string has the pointer to the "CAPCOM TEST DATA" string repeated three times near the end of the table.

The "T.NagawaS.MizutaniY.UmakosiA.Watanabe" strings are technically used, but not really utilized by anything. The game loads this string at FFF300 but besides the function itself nothing else looks at that region in RAM (except for the main game loop, which simply clears it). The text itself seems to be loaded shortly before all the sound driver stuff, so maybe the two are related. As for the names themselves The function that loads the strings is located at B4E8 in the ROM. The function itself (afaik) is only called in two places.

The game mode array ($1800) has one unused pointer that isn't a duplicate located at 3F90. I tried everything to jump to this but the game doesn't seem to utilize anything. Anyone wanna have a look? The ID for the entry should $4 (the Sega screen is $0). The game mode id's are utilized at EE02 in RAM.

As far as the likely hood of this game being some Chinese/homebrew port, it doesn't look like it at all. The game doesn't seem to do a traditional checksum check, and yet it has a function for when the checksum check fails (that makes the screen red and loop endlessly). To me it seems more like a half assed pirate attempt on a legitimate proto (the glitched tm on the Sega logo is suspect). The header also has "腕相撲", which is Japanese for "Arm Wrestling". The title screen doesn't have any company copyright, which I think is standard policy for every licensed Sega game. I'll have to see if there might be some null'd out data for the title screen.

As far as this game being a modified version of the Special Champion Edition, or the likeliness of it being a prototype of that port - it seems that this is a completely different game altogether judging by some quick glimpses at both of the game's code. For instance, the Turbo port uses an ID that represents the placement of a particular game mode in a big jump table for every game screen. The Special Champion Edition does it completely different where it seems that the address of the game mode is moved to a place in RAM (BFEA or BFE8) and then jumps...or something to that effect.

Turbo:

ROM:000003E2 loc_3E2:                                ; CODE XREF: Reset+18Cj

ROM:000003E2 andi #$F8FF,sr ; AND Immediate
ROM:000003E6 move.w (RAM_GameMode).w,d0 ; Move Data from Source to Destination
ROM:000003EA andi.l #$7C,d0 ; '|' ; AND Immediate
ROM:000003F0 lea (GM_Array).w,a1 ; Load Effective Address
ROM:000003F4 movea.l (a1,d0.w),a1 ; Move Address
ROM:000003F8 jsr (a1) ; Jump to Subroutine
ROM:000003FA bra.s loc_3CA ; Branch Always
ROM:000003FA ; End of function Reset
ROM:000003FA



Special Champion Edition:

ROM:0000826E loc_826E:                               ; CODE XREF: Reset+220j

ROM:0000826E move.w d0,-(sp)
ROM:00008270 move.w sp,(word_FFFFBFEA).w
ROM:00008274 move.w a0,(word_FFFFBFE8).w
ROM:00008278 move.b #$10,(a0)
ROM:0000827C movea.l 4(a0),a1
ROM:00008280 movea.l $C(a0),a4
ROM:00008284 move a4,usp
ROM:00008286 andi #$DFFF,sr
ROM:0000828A jmp (a1)
ROM:0000828A ; End of function Reset



I don't even think the sound driver in the two games are the same either. It really does look like one version was developed by a completely different group than the other. The Turbo edition does game mode changes like traditional Sega games do (like Sonic 1, SoR1, Castle of Illusion, etc) whereas the other version does things very differently. Also, look at where the "Reset" function appears in both ROMS. In Turbo, the "Reset" function immediately follows the ErrorTrap functions which follows the header, like every other Sega developed Megadrive game. In Champion, The Reset function appears about $8000 bytes after the header, and actually PRECEDES the ErrorTrap functions. Very different.

I played through the majority of Turbo with Exodus and managed to hit almost everything besides some small details in movesets and such. You can download the .idc file here for use in Ida Pro to see for yourself:

http://www.mediafire.com/download/m955t6dmappaasu/sf2_turbo_beta.idc

Oddly enough, it looks like the majority of the rom's data is uncompressed. I don't know if the Champion Edition compresses any of it's data, but I'd assume so.

koolaidman
Member
Level: 24


Posts: 98/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 03-01-16 07:19:12 PM, in ST II Turbo (weird Genesis SFII beta...) (last edited by koolaidman at 03-01-16 07:46:07 PM) Link
Hmm, here's another official promo video that features a different version of the prototype without the name "Turbo". Now it's called "Street Fighter 2 Champion Edition" (not "special champion edition" like the final).

https://youtu.be/70lftKow39s

Notice the copyright is now on the title screen but without the "TEST VER." string. So all of it was most likely removed by pirates. The HUD is different in comparison to the prototype we have, but the music and some of the graphics are exactly the same. Unfortunately the stupid time code is covering the whole thing in this video.

So this confirms that this definitely NOT a bootleg/homebrew game, but at least based on an actual prototype. Still don't know who was behind this version, though. But I guess the title screen copyright could hint that it was Capcom? Also don't know if the "Turbo" part is itself part of the hack, but maybe not? If it was, the pirates would've had to have removed the code that loads and animates the "CHAMPION EDITION" text and stuff. But afaik they didn't hack in an early ret in the title screen code to avoid this from loading (in fact, no "CHAMPION EDITION" tiles are even loaded in VRAM). I suppose if they could remove the copyright information, they could mess with the uncompressed tiles of the logo on the title screen. Pretty strange.
koolaidman
Member
Level: 24


Posts: 99/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 03-18-16 04:27:09 AM, in Weird Discoveries Link
Cross posting from sonicretro.

I found some unused graphics in Castle of Illusion (Japanese version) but I'm unsure how to assemble the tiles and view them properly. There are two unused Nemesis archives in the entire ROM, one appears to contain a multicolored graphic that says "MICKEY MOUSE" while the other are maybe some mappings. Neither of these seem to be referenced by anything:




I also found what might be unused uncompressed Mickey sprites (used for cutscenes) in the following regions in the Japanese ROM:

1E35F to 1E3DE
1FE1F to 208DE

You can use the first palette line when the cutscene begins to view the tiles with the proper palette. The only reason I find them to be unused is because I went through the entire game three times for all difficulties with both Exodus and BizHawk and it never touched these regions once.

Also might not be graphical related, but there might be an unused Enigma archive around 29774 to 298F8 in the Japanese ROM. I haven't figured out what they're used for, but maybe mappings of some kind (level related maybe?).

Here's a link to the two decompressed Nemesis archives. I'm no good with assembling tiles by hand though. :\
koolaidman
Member
Level: 24


Posts: 100/108
EXP: 73588
For next: 4537

Since: 07-17-10


Since last post: 3.4 years
Last activity: 1.2 years

Posted on 08-24-16 05:18:26 PM, in Weird Discoveries Link
There's a stray file called TEST.BIN in the Saturn port of Virtual On. The file itself contains mostly code and a few strings suggesting it was meant to be used to test the gameplay, since it's the only file to contain strings for printing X/Y/Z coordinates and what I assume is the current frame rate (the PC version refers to the framerate as "MOTION"). The file also has a list of a ton of strings for individual files pertaining to all the available mechs and stage specific objects.

The file itself has a base address 06010000 and is oddly enough selfcontained for the most part, meaning that there are next to no external function calls to other files. There are pointers that point to the M2ELIB.BIN file once it's been loaded. But aside from that, there don't seem to be any pointers to other LO/HIRAM memory locations either, as the majority of the pointers point to this weird blank padding space within the file itself. The file itself hasn't been changed at all throughout every version/release of the game as far as I know (the only version I couldn't check was the Taikenban, which hasn't been dumped). Unfortunately, there are no references to this file anywhere in the game files, so it's impossible to load this without having to hack the game. I think that the file itself was at one point supposed to be loaded by IP.BIN or maybe by 0.bin (the "1st_read" file) by default.

Here's a link to an IDA Pro 6.8 database of the file if you want to take a look:
https://dl.dropboxusercontent.com/u/38216/TEST.zip
Pages: 1 2 3 4 5 6
Jul - Posts by koolaidman


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

28 database queries, 49 query cache hits.
Query execution time:  0.079831 seconds
Script execution time:  0.061850 seconds
Total render time:  0.141681 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 119 column 11 - Warning: <form> isn't allowed in <table> elements
line 118 column 10 - Info: <table> previously mentioned
line 120 column 11 - Warning: missing <tr>
line 120 column 119 - Warning: missing </font> before </td>
line 124 column 16 - Warning: plain text isn't allowed in <tr> elements
line 120 column 11 - Info: <tr> previously mentioned
line 125 column 68 - Warning: missing </nobr> before </td>
line 141 column 68 - Warning: missing </nobr> before <tr>
line 147 column 35 - Warning: missing <tr>
line 147 column 50 - Warning: missing </font> before </td>
line 147 column 137 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 96 - Warning: unescaped & or unknown entity "&page"
line 149 column 130 - Warning: unescaped & or unknown entity "&page"
line 149 column 164 - Warning: unescaped & or unknown entity "&page"
line 149 column 198 - Warning: unescaped & or unknown entity "&page"
line 149 column 234 - Warning: unescaped & or unknown entity "&page"
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 269 - Warning: missing </font> before </table>
line 156 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 158 column 9 - Warning: missing <tr>
line 176 column 13 - Warning: missing <tr>
line 188 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 190 column 9 - Warning: missing <tr>
line 208 column 13 - Warning: missing <tr>
line 298 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 300 column 9 - Warning: missing <tr>
line 318 column 13 - Warning: missing <tr>
line 469 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 471 column 9 - Warning: missing <tr>
line 489 column 13 - Warning: missing <tr>
line 503 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 505 column 9 - Warning: missing <tr>
line 523 column 13 - Warning: missing <tr>
line 533 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 535 column 9 - Warning: missing <tr>
line 553 column 13 - Warning: missing <tr>
line 571 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 573 column 9 - Warning: missing <tr>
line 591 column 13 - Warning: missing <tr>
line 599 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 601 column 9 - Warning: missing <tr>
line 619 column 13 - Warning: missing <tr>
line 691 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 693 column 9 - Warning: missing <tr>
line 711 column 13 - Warning: missing <tr>
line 723 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 725 column 9 - Warning: missing <tr>
line 743 column 13 - Warning: missing <tr>
line 757 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 759 column 9 - Warning: missing <tr>
line 777 column 13 - Warning: missing <tr>
line 791 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 793 column 9 - Warning: missing <tr>
line 811 column 13 - Warning: missing <tr>
line 884 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 886 column 9 - Warning: missing <tr>
line 904 column 13 - Warning: missing <tr>
line 912 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 914 column 9 - Warning: missing <tr>
line 932 column 13 - Warning: missing <tr>
line 947 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 949 column 9 - Warning: missing <tr>
line 967 column 13 - Warning: missing <tr>
line 1013 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 1015 column 9 - Warning: missing <tr>
line 1033 column 13 - Warning: missing <tr>
line 1036 column 124 - Warning: unescaped & or unknown entity "&2"
line 1293 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 1295 column 9 - Warning: missing <tr>
line 1313 column 13 - Warning: missing <tr>
line 1364 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 1366 column 9 - Warning: missing <tr>
line 1384 column 13 - Warning: missing <tr>
line 1396 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 1398 column 9 - Warning: missing <tr>
line 1416 column 13 - Warning: missing <tr>
line 1438 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 1440 column 9 - Warning: missing <tr>
line 1458 column 13 - Warning: missing <tr>
line 1469 column 17 - Warning: missing <tr>
line 1469 column 17 - Warning: discarding unexpected <table>
line 1472 column 35 - Warning: missing <tr>
line 1472 column 96 - Warning: unescaped & or unknown entity "&page"
line 1472 column 130 - Warning: unescaped & or unknown entity "&page"
line 1472 column 164 - Warning: unescaped & or unknown entity "&page"
line 1472 column 198 - Warning: unescaped & or unknown entity "&page"
line 1472 column 234 - Warning: unescaped & or unknown entity "&page"
line 1472 column 50 - Warning: missing </font> before </td>
line 1472 column 269 - Warning: missing </font> before </table>
line 1474 column 35 - Warning: missing <tr>
line 1474 column 50 - Warning: missing </font> before </td>
line 1474 column 137 - Warning: missing </font> before </table>
line 1476 column 17 - Warning: discarding unexpected </textarea>
line 1476 column 28 - Warning: discarding unexpected </form>
line 1476 column 35 - Warning: discarding unexpected </embed>
line 1476 column 43 - Warning: discarding unexpected </noembed>
line 1476 column 53 - Warning: discarding unexpected </noscript>
line 1476 column 64 - Warning: discarding unexpected </noembed>
line 1476 column 74 - Warning: discarding unexpected </embed>
line 1476 column 82 - Warning: discarding unexpected </table>
line 1476 column 90 - Warning: discarding unexpected </table>
line 1478 column 9 - Warning: missing </font> before <table>
line 1490 column 25 - Warning: discarding unexpected </font>
line 1499 column 58 - Warning: discarding unexpected </font>
line 1477 column 1 - Warning: missing </center>
line 120 column 63 - Warning: <img> lacks "alt" attribute
line 125 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 125 column 93 - Warning: <img> lacks "alt" attribute
line 141 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 141 column 98 - Warning: <img> lacks "alt" attribute
line 161 column 22 - Warning: <img> lacks "alt" attribute
line 161 column 63 - Warning: <img> lacks "alt" attribute
line 161 column 112 - Warning: <img> lacks "alt" attribute
line 161 column 162 - Warning: <img> lacks "alt" attribute
line 172 column 15 - Warning: <img> lacks "alt" attribute
line 193 column 22 - Warning: <img> lacks "alt" attribute
line 193 column 63 - Warning: <img> lacks "alt" attribute
line 193 column 112 - Warning: <img> lacks "alt" attribute
line 193 column 162 - Warning: <img> lacks "alt" attribute
line 204 column 15 - Warning: <img> lacks "alt" attribute
line 303 column 22 - Warning: <img> lacks "alt" attribute
line 303 column 63 - Warning: <img> lacks "alt" attribute
line 303 column 112 - Warning: <img> lacks "alt" attribute
line 303 column 162 - Warning: <img> lacks "alt" attribute
line 314 column 15 - Warning: <img> lacks "alt" attribute
line 324 column 622 - Warning: <img> lacks "alt" attribute
line 384 column 2238 - Warning: <img> lacks "alt" attribute
line 474 column 22 - Warning: <img> lacks "alt" attribute
line 474 column 63 - Warning: <img> lacks "alt" attribute
line 474 column 112 - Warning: <img> lacks "alt" attribute
line 474 column 162 - Warning: <img> lacks "alt" attribute
line 485 column 15 - Warning: <img> lacks "alt" attribute
line 508 column 22 - Warning: <img> lacks "alt" attribute
line 508 column 63 - Warning: <img> lacks "alt" attribute
line 508 column 112 - Warning: <img> lacks "alt" attribute
line 508 column 162 - Warning: <img> lacks "alt" attribute
line 519 column 15 - Warning: <img> lacks "alt" attribute
line 538 column 22 - Warning: <img> lacks "alt" attribute
line 538 column 63 - Warning: <img> lacks "alt" attribute
line 538 column 112 - Warning: <img> lacks "alt" attribute
line 538 column 162 - Warning: <img> lacks "alt" attribute
line 549 column 15 - Warning: <img> lacks "alt" attribute
line 556 column 126 - Warning: <img> proprietary attribute value "absmiddle"
line 556 column 126 - Warning: <img> lacks "alt" attribute
line 576 column 22 - Warning: <img> lacks "alt" attribute
line 576 column 63 - Warning: <img> lacks "alt" attribute
line 576 column 112 - Warning: <img> lacks "alt" attribute
line 576 column 162 - Warning: <img> lacks "alt" attribute
line 587 column 15 - Warning: <img> lacks "alt" attribute
line 604 column 22 - Warning: <img> lacks "alt" attribute
line 604 column 63 - Warning: <img> lacks "alt" attribute
line 604 column 112 - Warning: <img> lacks "alt" attribute
line 604 column 162 - Warning: <img> lacks "alt" attribute
line 615 column 15 - Warning: <img> lacks "alt" attribute
line 696 column 22 - Warning: <img> lacks "alt" attribute
line 696 column 63 - Warning: <img> lacks "alt" attribute
line 696 column 112 - Warning: <img> lacks "alt" attribute
line 696 column 162 - Warning: <img> lacks "alt" attribute
line 707 column 15 - Warning: <img> lacks "alt" attribute
line 714 column 124 - Warning: <img> proprietary attribute value "absmiddle"
line 714 column 124 - Warning: <img> lacks "alt" attribute
line 720 column 1165 - Warning: <img> proprietary attribute value "absmiddle"
line 720 column 1165 - Warning: <img> lacks "alt" attribute
line 728 column 22 - Warning: <img> lacks "alt" attribute
line 728 column 63 - Warning: <img> lacks "alt" attribute
line 728 column 112 - Warning: <img> lacks "alt" attribute
line 728 column 162 - Warning: <img> lacks "alt" attribute
line 739 column 15 - Warning: <img> lacks "alt" attribute
line 762 column 22 - Warning: <img> lacks "alt" attribute
line 762 column 63 - Warning: <img> lacks "alt" attribute
line 762 column 112 - Warning: <img> lacks "alt" attribute
line 762 column 162 - Warning: <img> lacks "alt" attribute
line 773 column 15 - Warning: <img> lacks "alt" attribute
line 796 column 22 - Warning: <img> lacks "alt" attribute
line 796 column 63 - Warning: <img> lacks "alt" attribute
line 796 column 112 - Warning: <img> lacks "alt" attribute
line 796 column 162 - Warning: <img> lacks "alt" attribute
line 807 column 15 - Warning: <img> lacks "alt" attribute
line 814 column 74 - Warning: <img> lacks "alt" attribute
line 873 column 4857 - Warning: <img> lacks "alt" attribute
line 873 column 4912 - Warning: <img> lacks "alt" attribute
line 875 column 4975 - Warning: <img> lacks "alt" attribute
line 875 column 5030 - Warning: <img> lacks "alt" attribute
line 889 column 22 - Warning: <img> lacks "alt" attribute
line 889 column 63 - Warning: <img> lacks "alt" attribute
line 889 column 112 - Warning: <img> lacks "alt" attribute
line 889 column 162 - Warning: <img> lacks "alt" attribute
line 900 column 15 - Warning: <img> lacks "alt" attribute
line 917 column 22 - Warning: <img> lacks "alt" attribute
line 917 column 63 - Warning: <img> lacks "alt" attribute
line 917 column 112 - Warning: <img> lacks "alt" attribute
line 917 column 162 - Warning: <img> lacks "alt" attribute
line 928 column 15 - Warning: <img> lacks "alt" attribute
line 937 column 164 - Warning: <img> lacks "alt" attribute
line 952 column 22 - Warning: <img> lacks "alt" attribute
line 952 column 63 - Warning: <img> lacks "alt" attribute
line 952 column 112 - Warning: <img> lacks "alt" attribute
line 952 column 162 - Warning: <img> lacks "alt" attribute
line 963 column 15 - Warning: <img> lacks "alt" attribute
line 972 column 321 - Warning: <img> lacks "alt" attribute
line 1018 column 22 - Warning: <img> lacks "alt" attribute
line 1018 column 63 - Warning: <img> lacks "alt" attribute
line 1018 column 112 - Warning: <img> lacks "alt" attribute
line 1018 column 162 - Warning: <img> lacks "alt" attribute
line 1029 column 15 - Warning: <img> lacks "alt" attribute
line 1038 column 360 - Warning: <img> lacks "alt" attribute
line 1062 column 2583 - Warning: <img> proprietary attribute value "absmiddle"
line 1062 column 2583 - Warning: <img> lacks "alt" attribute
line 1068 column 3133 - Warning: <img> proprietary attribute value "absmiddle"
line 1068 column 3133 - Warning: <img> lacks "alt" attribute
line 1069 column 3267 - Warning: <img> proprietary attribute value "absmiddle"
line 1069 column 3267 - Warning: <img> lacks "alt" attribute
line 1081 column 4463 - Warning: <img> proprietary attribute value "absmiddle"
line 1081 column 4463 - Warning: <img> lacks "alt" attribute
line 1082 column 4597 - Warning: <img> proprietary attribute value "absmiddle"
line 1082 column 4597 - Warning: <img> lacks "alt" attribute
line 1094 column 5781 - Warning: <img> proprietary attribute value "absmiddle"
line 1094 column 5781 - Warning: <img> lacks "alt" attribute
line 1095 column 5915 - Warning: <img> proprietary attribute value "absmiddle"
line 1095 column 5915 - Warning: <img> lacks "alt" attribute
line 1108 column 7181 - Warning: <img> proprietary attribute value "absmiddle"
line 1108 column 7181 - Warning: <img> lacks "alt" attribute
line 1109 column 7315 - Warning: <img> proprietary attribute value "absmiddle"
line 1109 column 7315 - Warning: <img> lacks "alt" attribute
line 1121 column 8511 - Warning: <img> proprietary attribute value "absmiddle"
line 1121 column 8511 - Warning: <img> lacks "alt" attribute
line 1122 column 8645 - Warning: <img> proprietary attribute value "absmiddle"
line 1122 column 8645 - Warning: <img> lacks "alt" attribute
line 1134 column 9829 - Warning: <img> proprietary attribute value "absmiddle"
line 1134 column 9829 - Warning: <img> lacks "alt" attribute
line 1135 column 9963 - Warning: <img> proprietary attribute value "absmiddle"
line 1135 column 9963 - Warning: <img> lacks "alt" attribute
line 1148 column 11223 - Warning: <img> proprietary attribute value "absmiddle"
line 1148 column 11223 - Warning: <img> lacks "alt" attribute
line 1149 column 11357 - Warning: <img> proprietary attribute value "absmiddle"
line 1149 column 11357 - Warning: <img> lacks "alt" attribute
line 1160 column 12461 - Warning: <img> proprietary attribute value "absmiddle"
line 1160 column 12461 - Warning: <img> lacks "alt" attribute
line 1161 column 12595 - Warning: <img> proprietary attribute value "absmiddle"
line 1161 column 12595 - Warning: <img> lacks "alt" attribute
line 1172 column 13703 - Warning: <img> proprietary attribute value "absmiddle"
line 1172 column 13703 - Warning: <img> lacks "alt" attribute
line 1173 column 13837 - Warning: <img> proprietary attribute value "absmiddle"
line 1173 column 13837 - Warning: <img> lacks "alt" attribute
line 1184 column 14947 - Warning: <img> proprietary attribute value "absmiddle"
line 1184 column 14947 - Warning: <img> lacks "alt" attribute
line 1185 column 15081 - Warning: <img> proprietary attribute value "absmiddle"
line 1185 column 15081 - Warning: <img> lacks "alt" attribute
line 1196 column 16183 - Warning: <img> proprietary attribute value "absmiddle"
line 1196 column 16183 - Warning: <img> lacks "alt" attribute
line 1197 column 16317 - Warning: <img> proprietary attribute value "absmiddle"
line 1197 column 16317 - Warning: <img> lacks "alt" attribute
line 1215 column 17958 - Warning: <img> proprietary attribute value "absmiddle"
line 1215 column 17958 - Warning: <img> lacks "alt" attribute
line 1216 column 18092 - Warning: <img> proprietary attribute value "absmiddle"
line 1216 column 18092 - Warning: <img> lacks "alt" attribute
line 1228 column 19300 - Warning: <img> proprietary attribute value "absmiddle"
line 1228 column 19300 - Warning: <img> lacks "alt" attribute
line 1229 column 19434 - Warning: <img> proprietary attribute value "absmiddle"
line 1229 column 19434 - Warning: <img> lacks "alt" attribute
line 1240 column 20562 - Warning: <img> proprietary attribute value "absmiddle"
line 1240 column 20562 - Warning: <img> lacks "alt" attribute
line 1241 column 20696 - Warning: <img> proprietary attribute value "absmiddle"
line 1241 column 20696 - Warning: <img> lacks "alt" attribute
line 1252 column 21820 - Warning: <img> proprietary attribute value "absmiddle"
line 1252 column 21820 - Warning: <img> lacks "alt" attribute
line 1253 column 21954 - Warning: <img> proprietary attribute value "absmiddle"
line 1253 column 21954 - Warning: <img> lacks "alt" attribute
line 1264 column 23078 - Warning: <img> proprietary attribute value "absmiddle"
line 1264 column 23078 - Warning: <img> lacks "alt" attribute
line 1265 column 23212 - Warning: <img> proprietary attribute value "absmiddle"
line 1265 column 23212 - Warning: <img> lacks "alt" attribute
line 1298 column 22 - Warning: <img> lacks "alt" attribute
line 1298 column 63 - Warning: <img> lacks "alt" attribute
line 1298 column 112 - Warning: <img> lacks "alt" attribute
line 1298 column 162 - Warning: <img> lacks "alt" attribute
line 1309 column 15 - Warning: <img> lacks "alt" attribute
line 1369 column 22 - Warning: <img> lacks "alt" attribute
line 1369 column 63 - Warning: <img> lacks "alt" attribute
line 1369 column 112 - Warning: <img> lacks "alt" attribute
line 1369 column 162 - Warning: <img> lacks "alt" attribute
line 1380 column 15 - Warning: <img> lacks "alt" attribute
line 1401 column 22 - Warning: <img> lacks "alt" attribute
line 1401 column 63 - Warning: <img> lacks "alt" attribute
line 1401 column 112 - Warning: <img> lacks "alt" attribute
line 1401 column 162 - Warning: <img> lacks "alt" attribute
line 1412 column 15 - Warning: <img> lacks "alt" attribute
line 1423 column 475 - Warning: <img> lacks "alt" attribute
line 1424 column 534 - Warning: <img> lacks "alt" attribute
line 1443 column 22 - Warning: <img> lacks "alt" attribute
line 1443 column 63 - Warning: <img> lacks "alt" attribute
line 1443 column 112 - Warning: <img> lacks "alt" attribute
line 1443 column 162 - Warning: <img> lacks "alt" attribute
line 1454 column 15 - Warning: <img> lacks "alt" attribute
line 1484 column 25 - Warning: <img> lacks "alt" attribute
line 1489 column 267 - Warning: <img> lacks "alt" attribute
line 147 column 137 - Warning: trimming empty <font>
line 149 column 269 - Warning: trimming empty <font>
line 1469 column 17 - Warning: trimming empty <tr>
line 1472 column 269 - Warning: trimming empty <font>
line 1474 column 137 - Warning: trimming empty <font>
line 125 column 68 - Warning: <nobr> is not approved by W3C
line 141 column 68 - Warning: <nobr> is not approved by W3C
line 177 column 27 - Warning: <nobr> is not approved by W3C
line 209 column 27 - Warning: <nobr> is not approved by W3C
line 319 column 27 - Warning: <nobr> is not approved by W3C
line 490 column 27 - Warning: <nobr> is not approved by W3C
line 524 column 27 - Warning: <nobr> is not approved by W3C
line 554 column 27 - Warning: <nobr> is not approved by W3C
line 592 column 27 - Warning: <nobr> is not approved by W3C
line 620 column 27 - Warning: <nobr> is not approved by W3C
line 712 column 27 - Warning: <nobr> is not approved by W3C
line 744 column 27 - Warning: <nobr> is not approved by W3C
line 778 column 27 - Warning: <nobr> is not approved by W3C
line 812 column 27 - Warning: <nobr> is not approved by W3C
line 905 column 27 - Warning: <nobr> is not approved by W3C
line 933 column 27 - Warning: <nobr> is not approved by W3C
line 968 column 27 - Warning: <nobr> is not approved by W3C
line 1034 column 27 - Warning: <nobr> is not approved by W3C
line 1314 column 27 - Warning: <nobr> is not approved by W3C
line 1385 column 27 - Warning: <nobr> is not approved by W3C
line 1417 column 27 - Warning: <nobr> is not approved by W3C
line 1459 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 323 warnings and 0 errors!


The alt attribute should be used to give a short description
of an image; longer descriptions should be given with the
longdesc attribute which takes a URL linked to the description.
These measures are needed for people using non-graphical browsers.

For further advice on how to make your pages accessible
see http://www.w3.org/WAI/GL.
You are recommended to use CSS to specify the font and
properties such as its size and color. This will reduce
the size of HTML files and make them easier to maintain
compared with using <FONT> elements.

You are recommended to use CSS to control line wrapping.
Use "white-space: nowrap" to inhibit wrapping in place
of inserting <NOBR>...</NOBR> into the markup.

About HTML Tidy: https://github.com/htacg/tidy-html5
Bug reports and comments: https://github.com/htacg/tidy-html5/issues
Official mailing list: https://lists.w3.org/Archives/Public/public-htacg/
Latest HTML specification: http://dev.w3.org/html5/spec-author-view/
Validate your HTML documents: http://validator.w3.org/nu/
Lobby your company to join the W3C: http://www.w3.org/Consortium

Do you speak a language other than English, or a different variant of
English? Consider helping us to localize HTML Tidy. For details please see
https://github.com/htacg/tidy-html5/blob/master/README/LOCALIZE.md