VOGONS


New Patch - The Hobbit (1983) on 386+ CPUs

Topic actions

Reply 20 of 31, by carlostex

User metadata
Rank l33t
Rank
l33t
DivByZero wrote on 2025-05-31, 22:31:

Maybe let me wrap the changes into a script first and make a proper thread for it here before sharing it around, that way it'll work for a range of versions and there'll be a proper home for discussion and follow-up here. I should be able to get that done tomorrow.

Agreed!

Just want to say i tested this on my Pentium MMX PC and it works perfectly. It is still good to slowdown the PC for the animations and such, but the most important thing is that gameplay is perfect now, and that is something that slowdown couldn't fix. This is one of the best things that has ever been done by this community, congratulations!

Reply 21 of 31, by DivByZero

User metadata
Rank Newbie
Rank
Newbie
carlostex wrote on 2025-06-01, 11:24:

This is one of the best things that has ever been done by this community, congratulations!

Well I don't know about that! There have been some very impressive projects created by this community over the years. I'm just a newcomer who threw together a patch in a couple of spare hours, but I appreciate the kind words.

I haven't got the patch script finished off yet. I didn't have as much time yesterday as I expected, but I'm taking a look at it again now. Hopefully I'll have it ready to go today.

Reply 22 of 31, by DivByZero

User metadata
Rank Newbie
Rank
Newbie
carlostex wrote on 2025-06-01, 11:24:
DivByZero wrote on 2025-05-31, 22:31:

Maybe let me wrap the changes into a script first and make a proper thread for it here before sharing it around, that way it'll work for a range of versions and there'll be a proper home for discussion and follow-up here. I should be able to get that done tomorrow.

Agreed!

Just want to say i tested this on my Pentium MMX PC and it works perfectly. It is still good to slowdown the PC for the animations and such, but the most important thing is that gameplay is perfect now, and that is something that slowdown couldn't fix. This is one of the best things that has ever been done by this community, congratulations!

I didn't get time to finish the patch script, but I've created a separate thread for it here now:
New Patch - Wing Commander 1 (1990) speed throttling for 486+ CPUs
Feel free to share that on other forums and start directing people to the patch, and we can continue the discussion in there. I'll post updates in the other thread when I have more to share.

Reply 23 of 31, by zyzzle

User metadata
Rank Member
Rank
Member
DivByZero wrote on 2025-05-30, 05:31:

Apart from that, I'm pretty much done, got everything on my current hit-list (223 games) working. Any requests? Happy to take on a challenge if there's something out there causing issues.

I'd like to request Fahrenheit 451. It locks up at title screen in bare metal DOS on every modern system I've tried it on. It works perfectly fine in DOS Box, but I'm not sure what the problem is. I've tried three different "cracks" of the game, and they all exhibit the same freeze on the title, so I assume it's 386+ related. Also, throttling the CPU to 286 speeds doesn't solve the issue or freeze, either.

Reply 24 of 31, by carlostex

User metadata
Rank l33t
Rank
l33t
zyzzle wrote on 2025-06-04, 10:55:

I'd like to request Fahrenheit 451. It locks up at title screen in bare metal DOS on every modern system I've tried it on. It works perfectly fine in DOS Box, but I'm not sure what the problem is. I've tried three different "cracks" of the game, and they all exhibit the same freeze on the title, so I assume it's 386+ related. Also, throttling the CPU to 286 speeds doesn't solve the issue or freeze, either.

I noticed that Telarium games have problems with certain command line interpreters. Are you using 4DOS by any chance? Try running command.com before launching the game.

Reply 25 of 31, by zyzzle

User metadata
Rank Member
Rank
Member
carlostex wrote on 2025-06-04, 10:59:
zyzzle wrote on 2025-06-04, 10:55:

I'd like to request Fahrenheit 451. It locks up at title screen in bare metal DOS on every modern system I've tried it on. It works perfectly fine in DOS Box, but I'm not sure what the problem is. I've tried three different "cracks" of the game, and they all exhibit the same freeze on the title, so I assume it's 386+ related. Also, throttling the CPU to 286 speeds doesn't solve the issue or freeze, either.

I noticed that Telarium games have problems with certain command line interpreters. Are you using 4DOS by any chance? Try running command.com before launching the game.

Nope. Just straight MS-DOS 6.22 and MS-DOS 7.1

Have not tried FreeDOS.

Reply 26 of 31, by carlostex

User metadata
Rank l33t
Rank
l33t
zyzzle wrote on 2025-06-06, 09:46:

Nope. Just straight MS-DOS 6.22 and MS-DOS 7.1

Have not tried FreeDOS.

I wasn't talking about FreeDOS, i was talking about alternative COMMAND.COM versions for instance 4DOS. But if you're using vanilla COMMAND.COM out of those MS-DOS versions your problem comes from somewhere else.

In my case because i use 4DOS i get the same problem you describe, which is solved after i run an instance of vanilla COMMAND.COM.

Try to guarantee the game runs in real mode. Have you tried that?

Reply 27 of 31, by DivByZero

User metadata
Rank Newbie
Rank
Newbie
zyzzle wrote on 2025-06-04, 10:55:
DivByZero wrote on 2025-05-30, 05:31:

Apart from that, I'm pretty much done, got everything on my current hit-list (223 games) working. Any requests? Happy to take on a challenge if there's something out there causing issues.

I'd like to request Fahrenheit 451. It locks up at title screen in bare metal DOS on every modern system I've tried it on. It works perfectly fine in DOS Box, but I'm not sure what the problem is. I've tried three different "cracks" of the game, and they all exhibit the same freeze on the title, so I assume it's 386+ related. Also, throttling the CPU to 286 speeds doesn't solve the issue or freeze, either.

I think It might be the version you have, or something else unusual about your system. I just tried a copy of Fahrenheit 451 on my 486, and it worked well. Title appeared, music played, and I was able to enter the game and move between areas. I'm on DOS 6.22 on a 486DX2. I'm not sure why it wouldn't be working for you as well, but I can't diagnose the problem if I can't reproduce it. I'll send you a PM, maybe there's something I can do to help.

Reply 28 of 31, by GloriousCow

User metadata
Rank Oldbie
Rank
Oldbie
DivByZero wrote on 2025-05-30, 05:16:

This does create a bit of a mystery though. The HOBBIT.COM loader contains instructions which were only added in the 386 processor. The 386 came out in 1985, while the DOS version of this game apparently came out in 1984. Unless that's incorrect and it actually came out in very late 1985, and required a minimum 386 processor, it means all the commonly available sources which contain to have the DOS version of "The Hobbit" are probably not the original version of this game.

just curious what 386 instructions are you seeing and at what offset?

i was just looking at the hobbit earlier today as the version I have does not run in MartyPC. I wouldn't have thought to disassemble the game in 386 mode in IDA...

MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc

Reply 29 of 31, by DivByZero

User metadata
Rank Newbie
Rank
Newbie
GloriousCow wrote on 2025-12-22, 01:58:
DivByZero wrote on 2025-05-30, 05:16:

This does create a bit of a mystery though. The HOBBIT.COM loader contains instructions which were only added in the 386 processor. The 386 came out in 1985, while the DOS version of this game apparently came out in 1984. Unless that's incorrect and it actually came out in very late 1985, and required a minimum 386 processor, it means all the commonly available sources which contain to have the DOS version of "The Hobbit" are probably not the original version of this game.

just curious what 386 instructions are you seeing and at what offset?

i was just looking at the hobbit earlier today as the version I have does not run in MartyPC. I wouldn't have thought to disassemble the game in 386 mode in IDA...

I don't think I kept any notes about this, but I mentioned the "mov [edx], al" sequence being part of the load routine, and "edx" of course is a 32-bit register, making it not available on the 286. That wasn't the only use of 32-bit registers though. I quadruple checked this at the time, there's no doubt the loader contains opcodes which were not present on the 286, they were straight-up illegal, not repurposed.

Best as I can tell, "Mok" ported a bunch of games to DOS from other platforms, running them through his "loader". This was clearly done much later when 32-bit processors were common. The ".dat" file in this case contains effectively a disk image of the original game I believe, possibly with edits. I did some digging about this more, and there IS now a hash of the "real" PC version of The Hobbt in the TDC collection (probably can't mention that here...), but it's recent and I couldn't find a public release of it since it was added (in the last 12 months or so IIRC). Maybe you or someone else has better connections and knows where to look for that.

At any rate, I wouldn't waste time on this bad port of it for your emulator. Loading it onto a disk and trying to run it on a real 286 would quickly confirm it doesn't run.

Reply 30 of 31, by GloriousCow

User metadata
Rank Oldbie
Rank
Oldbie
DivByZero wrote on 2025-12-23, 04:10:

At any rate, I wouldn't waste time on this bad port of it for your emulator. Loading it onto a disk and trying to run it on a real 286 would quickly confirm it doesn't run.

Thanks. I can confirm the new dump works fine.

MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc

Reply 31 of 31, by DivByZero

User metadata
Rank Newbie
Rank
Newbie

Ok, I've been able to have a look at the new disk image of The Hobbit, and it's now clear to me what the situation is. So "The Hobbit" came out in 1983, and it supported the PC-XT and original IBM PC hardware, running an 8088 CPU. It was also "forwards compatible" with the PC-AT hardware running a 286 CPU, which came out a year later. It is NOT however a DOS game, it doesn't run under DOS at all. The game came on a 360Kb 5 1/4" floppy disc, and it ran directly from the boot sector. It doesn't have "files" on the disc, or a filesystem at all, it has a short "loader" that executes directly from the boot sector, and issues commands to the FDD to read sectors into memory as needed. The commonly available version of this game, floating around the web, is a combination of a raw disk image of that floppy (Hobbit.dat), which has had the last few empty sectors "trimmed", and a DOS-based com loader (Hobbit.com) written some time later by Mok, to make it possible to play this game from DOS. I've confirmed the "Hobbit.dat" file included with this version is a binary-exact match for the newer original disc image that has been made, with the exception that the new image contains an extra few KBs of data filled with blank sector data (0xF6 bytes). Note that the loader by Mok was most likely used on other games of the era with a similar booting system, but I haven't checked that.

What all this means is that the patch I provided here is still relevant, and that this version with the "Loader by Mok" is not only the real game, it's the best version of it, being able to be loaded from DOS, or written directly to a floppy and played in the original manner if you desire (just write the Hobbit.dat file to disk as an .ima image file). This version was always broken though, with the original game not supporting 386 hardware or greater, and the loader provided by Mok not able to run on systems before the 386, meaning it could effectively never be played as provided. The patch script I've provided is capable of patching the original disk image (just rename it Hobbit.dat), so that the original game can run on 386+ hardware, as well as fixing the Mok loader, so that you can run it under DOS on 386+ hardware.