Rendezvous with Rama patch for Tandy Compatible Sound Adapter

Getting old software/games running on older hardware.

Rendezvous with Rama patch for Tandy Compatible Sound Adapter

Postby carlostex » 2017-1-17 @ 13:03

Some of you may know that there is now a working prototype of the Tandy Sound adapter. I've launched the original thread here on VOGONS almost 2 years ago, and its really exciting to realize what this project has achieved and what is left to achieve. So some games need to be patched, for the card to be useful on a non Tandy/PCjr system.

I've found (lame approach but...) a way to patch Rendezvous with Rama. Rendezvous with Rama is a Telarium text adventure with graphics and it supports CGA for graphics only but will play 3 voice music on a PCjr or a Tandy 1000.

The game will play PC Speaker / Tandy 3 voice based on a detection routine. I haven't figured out the PCjr detection routine as unlike the Tandy one it doesn't seem to involve just reading a memory location and comparing 1 byte. I'm also not fluent in 8088 assembly so keep this in mind.

I found however that location FC00h is read, moved to the ax register and then a cmp instruction that involves 6 bytes to compare what is read in that memory location. If 21h (Tandy model byte) is the same value read at FC00h, 3 voice music will play. So for me the easiest way to patch was to simply define the memory location as the first byte of my system BIOS and then change the byte to match my system BIOS.

So open RDV.EXE with a hex editor and edit 2 locations:

At segment 780Eh (2 bytes of memory location to be read) in RDV.exe. Default is 00 FC and here you edit to whatever location you want to be read. In my case system BIOS starts at FE00h so i change to 00 FE.

Then at segment 7817h the single byte that must match what is read at the memory location we defined. My system BIOS starts with 54h (ASCII for 'T') so that's what i patch. The original value is 21h (Tandy model byte).

I know this is a lame way to patch, but with my limited knowledge i can't do better ATM. It works though!
User avatar
carlostex
l33t
 
Posts: 2100
Joined: 2010-4-03 @ 21:39
Location: Portugal

Re: Rendezvous with Rama patch for Tandy Compatible Sound Adapter

Postby dr_st » 2017-1-17 @ 13:46

carlostex wrote:Rendezvous with Rama is a Telarium text adventure with graphics and it supports CGA for graphics only
Is it actually about Rendezvous with Rama?
User avatar
dr_st
Oldbie
 
Posts: 1995
Joined: 2015-4-09 @ 07:18

Re: Rendezvous with Rama patch for Tandy Compatible Sound Adapter

Postby carlostex » 2017-1-17 @ 13:47

Yes it is obviously based on the novel.
User avatar
carlostex
l33t
 
Posts: 2100
Joined: 2010-4-03 @ 21:39
Location: Portugal

Re: Rendezvous with Rama patch for Tandy Compatible Sound Adapter

Postby carlostex » 2017-1-17 @ 17:58

Scali at VCF and Plasma helped me to get a better approach to patch this. All is needed is to replace the byte at offset 781B, 74h with EBh. This will change the conditional jz instruction to a jmp instruction and will ensure that 3 voice music will always play, no matter the machine.
User avatar
carlostex
l33t
 
Posts: 2100
Joined: 2010-4-03 @ 21:39
Location: Portugal

Re: Rendezvous with Rama patch for Tandy Compatible Sound Adapter

Postby bjt » 2017-1-19 @ 10:21

Great work. We'll make an assembly programmer out of you yet :cool:
User avatar
bjt
Oldbie
 
Posts: 1435
Joined: 2013-2-06 @ 10:40
Location: UK

Re: Rendezvous with Rama patch for Tandy Compatible Sound Adapter

Postby carlostex » 2017-1-19 @ 13:59

bjt wrote:Great work. We'll make an assembly programmer out of you yet :cool:


Lol, i wish. There's so much to learn, and it isn't exactly easy.


I did one better and patched ALL the games from Telarium. Nine Princes in Amber was a tough nut to crack, due to probably an intentional or screwed up routine code.

In the file you can find patched executables for all Telarium adventures for IBM PC.

TELARIUM.rar
Patched executables for Telarium adventure games. Will give 3 voice sound on a PC with the Tandy Sound Card
(136.18 KiB) Downloaded 19 times


You can try the executables with DOSBox set to machine=CGA and Tandy=ON.
User avatar
carlostex
l33t
 
Posts: 2100
Joined: 2010-4-03 @ 21:39
Location: Portugal


Return to Software

Who is online

Users browsing this forum: No registered users and 2 guests