VOGONS


Golden Axe in Hercules mode

Topic actions

First post, by subjugator

User metadata
Rank Newbie
Rank
Newbie

Hey guys!

I was just wondering if Golden Axe for PC actually works with Hercules Graphics Card. I know there is an option for it in the adapter select screen (Option 3) for it but I have been trying to launch it in this mode since DosBox started support for Hercules and all I am getting is a garbled screen.

So I started wondering if the game would even work in Hercules mode on an actual PC with HGC ?

If anybody has ever tried this successfully - would love to hear from you to satisfy my curiosity!

Thanks,
Mike

Reply 1 of 22, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

My boxes with graphics cards are currently not accessible 🙁

1+1=10

Reply 2 of 22, by robertmo

User metadata
Rank l33t++
Rank
l33t++

read dosbox's manual!

by the way hercules was always supported in dosbox

Reply 3 of 22, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

In DOSBox 0.72, 0.73, and 0.74 with machine=hercules the game hangs at a blank screen after selecting hercules graphics (option 3) at startup. There is a subroutine that appears to have the function of waiting for vertical retrace (bit 3 of port 0x3da), and that's where it is hanging after having changed to hercules graphics mode. Calling the subroutine with hercules graphics seems odd, because docs I looked at indicate that 0x3da bits 1-7 are "unknown" for MDA/HGC, and that retrace is applicable to color video hardware; but maybe there is some undocumented behavior. I tried changing the subroutine to just return immediately and the game then appears to be otherwise working OK with hercules graphics. However, at no point did I see any "garbled" screens or graphics like the thread creator reports.

Reply 4 of 22, by subjugator

User metadata
Rank Newbie
Rank
Newbie

Thanks a lot for the reply and detailed analysis. I observe the behavior you described - just hanging on the mode select screen - if I select Hercules from any other machine type (e.g. machine=ega).I am including the screenshot of the garbled screen I was referring to when machine=hercules.

Would you mind giving me the name of the function you have altered to return immediately I will attempt to do the same and recompile DosBox to see if changes anything.

Reply 5 of 22, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I only tried running the game using its hercules mode with machine=hercules, any other combo is not sensible for testing hercules graphics. If you get garbled graphics with both game and DOSBox configured for hercules, you must have a different version of the game.

The subroutine I referred to is in the game code, not in DOSBox.

Last edited by ripsaw8080 on 2010-06-04, 13:38. Edited 1 time in total.

Reply 6 of 22, by subjugator

User metadata
Rank Newbie
Rank
Newbie

OK, thanks for the heads up. I will have to see if I still have any IDA skills 😀 to modify the game executable.

Reply 7 of 22, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Might still be that it misdetects something and chooses the wrong wait routine.

1+1=10

Reply 8 of 22, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

On real hardware with Hercules it gets stuck as well. And of course it works if there is a VGA card along with the Hercules in the system, so that's probably why they didn't catch the bug.

1+1=10

Reply 9 of 22, by subjugator

User metadata
Rank Newbie
Rank
Newbie

OK, I found the function at offset 0x800C in axe.dat and changed push ax to retn. Had to unlzexe the axe.dat file first. Voila - it works !

The garbled screen that I mentioned before still appears for a few moments and then the actual game starts. Thanks so much for pointing me in the right direction, Hercules support for Golden Axe bothered me for years !

Reply 10 of 22, by coper

User metadata
Rank Newbie
Rank
Newbie

Hello Subjugator, really cool you have fixed that GA hercules bug! Sincerely i tried to do the same following your instructions but i couldn´t. 🙁
Please, can you post to us your Axe.dat file fixed, or the entire game? It´s a very important patch!
best regards!

Reply 11 of 22, by 001

User metadata
Rank Newbie
Rank
Newbie

I just fixed another bug in that game, using this guide:
http://www.reteam.org/papers/e76.pdf

There is a bug when you get into Duel mode.
You can't get pass the 13th fight or so, because the game keeps asking for disk 2 over and over again.

I've always wondered if there was a problem with my copy, but it turns out the game was bugged. Fortunately, someone else fixed that 😀

Reply 12 of 22, by AxBattler

User metadata
Rank Newbie
Rank
Newbie

001 - would you be so nice and could you send the axe.dat file you've made with 2 patches (Hercules and The Duel)? Tried to do it, but it didn't worked ;-(

Reply 13 of 22, by AxBattler

User metadata
Rank Newbie
Rank
Newbie

hi!
how to change the values in the Hex editor, not in assembler? what should I search for and what to change in Axe.Dat to make HGC patch for Golden Axe?

Reply 14 of 22, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Use your favourite asm reference (intel or amd instruction manual, sandpile.org etc.) and check the opcode encodings for push ax (0x50) and ret (0xc3).

Then check at the mentioned offset of the file, if you find push ax replace it with ret and see if that works the same for you as for him.

Reply 15 of 22, by Great Hierophant

User metadata
Rank l33t
Rank
l33t

Use your favourite asm reference (intel or amd instruction manual, sandpile.org etc.) and check the opcode encodings for push ax (0x50) and ret (0xc3).

Then check at the mentioned offset of the file, if you find push ax replace it with ret and see if that works the same for you as for him.

That works. Here is the fix for the Hercules and The Duel issues. Manual check has been bypassed.

Last edited by Great Hierophant on 2012-02-14, 19:05. Edited 1 time in total.

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

Reply 16 of 22, by AxBattler

User metadata
Rank Newbie
Rank
Newbie

Works great! Now, in the XXIth Cent. we've got a game from 1989/1990 finally patched! 😀)

Reply 17 of 22, by Joey_sw

User metadata
Rank Oldbie
Rank
Oldbie

waiting 2 decade before finally patched!

thanks for patched axe.dat

-fffuuu

Reply 18 of 22, by fede2222

User metadata
Rank Newbie
Rank
Newbie

Sorry for the revive.. but i wanna thanks a lot for this...

IMG_20160607_161808_zpsybjsjdji.jpg

Reply 19 of 22, by lightmaster

User metadata
Rank Oldbie
Rank
Oldbie

Not forgiven 😉
Thanks to the DOSBOx authors!!

25071588525_735097840e_b.jpg