VOGONS


First post, by Great Hierophant

User metadata
Rank l33t
Rank
l33t

The original 16-color version of Railroad Tycoon works with all its graphics adapters except for Tandy. When Tandy graphics is selected, the game will crash after the input selection screen if any sound driver is selected in stock .74. Game will run if no sound is selected. In the SVNs, it will crash regardless of sound selection. Game uses Tandy DAC. I am using an install from disk images of version 455.02 and it works fine with sound on my Tandy 1000SX. Game also works fine on DOSBox with VGA, CGA or EGA.

http://nerdlypleasures.blogspot.com/ - Nerdly Pleasures - My Retro Gaming, Computing & Tech Blog

Reply 1 of 3, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

DOSBox locks up because the memory chain is destroyed when the last MCB is overwritten as mode 9 is set.

The RBIL mentions in the notes for INT 21/4A that free memory blocks following a resized block are coalesced, but it seems DOSBox doesn't do that. I guess it doesn't make a significant difference most of the time, but in the case of Tandy games it can be very important indeed. When the next to last block is resized, coalescing can move the last block header lower in memory... and away from the memory region used by Tandy graphics.

The attached TSR program performs the free memory block coalescing as a workaround until the behavior is implemented in DOSBox. It fixes Railroad Tycoon and a few other games that experience similar lockups with the Tandy machine type.

Reply 2 of 3, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

This does ring a bell somewhere in my mind.

Water flows down the stream
How to ask questions the smart way!

Reply 3 of 3, by Great Hierophant

User metadata
Rank l33t
Rank
l33t
ripsaw8080 wrote:

DOSBox locks up because the memory chain is destroyed when the last MCB is overwritten as mode 9 is set.

The RBIL mentions in the notes for INT 21/4A that free memory blocks following a resized block are coalesced, but it seems DOSBox doesn't do that. I guess it doesn't make a significant difference most of the time, but in the case of Tandy games it can be very important indeed. When the next to last block is resized, coalescing can move the last block header lower in memory... and away from the memory region used by Tandy graphics.

The attached TSR program performs the free memory block coalescing as a workaround until the behavior is implemented in DOSBox. It fixes Railroad Tycoon and a few other games that experience similar lockups with the Tandy machine type.

The TSR works, and now I can finally hear the Tandy soundtrack with digital samples.

http://nerdlypleasures.blogspot.com/ - Nerdly Pleasures - My Retro Gaming, Computing & Tech Blog