Debug mode in FMV games

Anything relating to CD-i can be discussed in this forum. From the multiple hardware iterations of the system to the sofware including games, reference, music and Video CDs. Maybe you hold an interest in Philips Media and the many development houses set up to cater for CD-i if so then this is the forum.
Post Reply
User avatar
Bas
CDinteractive Admin
Posts: 3041
Joined: Mon Jun 20, 2005 11:14 am
Location: the Netherlands
Contact:

Debug mode in FMV games

Post by Bas » Thu Oct 27, 2005 9:38 pm

From Gamespy: (from Michiel)

"I just found out how to cheat with Bounty Hunter :). When you hook up a terminal you can call up all kinds of debug info:

m -maximum lives and bullets
k -rapid fire
q -quiet mode?
r -rectangle display ->with this you can see rectangles
around the points you can shoot at.
a -automatic rectangle pause, when something comes up for
shooting the game pauses and you can aim
c -continue after pause

I'd better look if the same thing works with Mad Dog McCree 1, I've never been able to get very far in that game...
[added Nov 18 2002 3:20PM]

In Reply To #1

Mad Dog Mccree 1

j ->jump to scene number
c ->I get a prompt for this:

"CD control table editor V1.02

Decode which control table?

0) FCT 0 1) FCT 1 2) LCT 0 3) LCT 1 4) PAL LCT 0
5) PAL LCT 1
==>"

And it looks like I can change control tables, the game is totally screwed up now...

[added Nov 18 2002 3:37PM]

In Reply To #1

Mad Dog II and Who shot Johnny Rock also have a debug mode...
[added Nov 18 2002 3:37PM]

In Reply To #1

Mad Dog II and Who shot Johnny Rock also have a debug mode..."

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

Michiel (or anyone who knows), what is a terminal? How can you do this...?

User avatar
Ruekov
Karmic Church Disciple
Posts: 110
Joined: Sun Jul 24, 2005 10:38 am
Location: Lleida, Spain
Contact:

Re: Debug mode in FMV games

Post by Ruekov » Thu Oct 27, 2005 9:48 pm

Bas wrote:Michiel (or anyone who knows), what is a terminal? How can you do this...?
I have the same question XD. What is it?

User avatar
Erronous
CDinteractive Moderator
Posts: 490
Joined: Sun Jun 26, 2005 10:43 pm

Post by Erronous » Thu Oct 27, 2005 9:54 pm

Didn't the CDi-link program have an option to execute commands on the CD-i system? But there's always hyperterm in windows, just use the cdilink download cable. Don't remember if the program automatically outputs to the serial port of the CD-i player or that you have to log in via the port and start the program from there, but I think it's the first. For starting debug versions of programs you need to start a different executable that's on the CD-i disc.

User avatar
oaacdi
Softech Recruit
Posts: 82
Joined: Sun Jun 26, 2005 6:54 pm
Location: Houston, TX

Please, details!

Post by oaacdi » Thu Oct 27, 2005 9:58 pm

I guess with the cdilink cable we can start a windows terminal session. But how to start it and have a disc playing at the same time and have control to debug functions?

Also, section 8.1.3 "What hidden information is available on some CD-i titles?" at http://www.icdia.co.uk/faq/cdifaq8.html#8.1.4 says that for "the game Escape from Cybercity, there is a version on the disc that allows for unlimited lifes".

Can this be accomplished with the wcdiemu? But then again, this is one of the titles that do not work for me (cd1350, 910, 220 roms).

User avatar
cdifan
CD-i Emulator Author
Posts: 923
Joined: Fri Jun 24, 2005 6:19 am
Location: The Netherlands
Contact:

Post by cdifan » Thu Oct 27, 2005 10:30 pm

Although it is theoretically possible to control the innards of a CD-i application using an external debugger/patcher program, it would require considerable knowledge of the application internals to achieve anything useful. System call traces could be useful here, and are easy to obtain with CD-i Emulator (use the "et trp" command in the debug window to trace OS9 system calls).

The debugging and testing functions mentioned above appear to have all been coded inside the original CD-i application, and it depends entirely on the application how to enable such functions. Sometimes a special NVRAM file is needed, sometimes there are magic button combinations or hidden hotspots, and in some cases you can just type away at the terminal, as appears to be the case for the titles described. System call traces can be used to detect the probes for special NVRAM files, but the other options are much harder to find; sometimes a text dump of the application file will contain some clues.

However, I can answer the "how to connect" question: on almost any CD-i player, the standard input and output connections of a CD-i application are automatically connected to the terminal, if one is connected to the CD-i player (a "virtual" terminal such as HyperTerminal with the CD-i Link cable works fine). You can use the "-term duarta" (CD-i 60x players) or "-term uart" (most consumer players) option to open a "WinTerm" terminal window with CD-i Emulator.

I can also tell you that for most SPC titles an NVRAM file with the name "DISPLAY_ON" will trigger debug output and sometimes debug functions; be sure to remove the file after disconnecting the terminal. If you forget this, SPC titles will appear to "hang" when the serial output buffer fills up. You can use cdilink to create the file on the CD-i player (this works in CD-i Emulator for CD-i 60x ROMs but for some reason not with consumer players; use the "-port term:duarta -reset" options with cdilink).

Happy hacking!

Post Reply