26 October 2008, 14:16 | #1 |
68k
Join Date: Sep 2005
Location: Somewhere
Posts: 828
|
WHDLoad: OSEmu, KickEmu and other
Hi,
I have some questions / problems / remarks about KickEmu ( I think about 1.3 kickstart ). Maybe someone can help me to understand some things. 1) KickEmu and int PORTS: Why If I add PORTS int then game stops when dos function Delay is called ? So to solve that problem I simply patch every call of _LVODelay. But I still don't understand why game stops ( it's happen for every game which use KickEmu + Dos Delay + int PORTS ) 2) KickEmu and exec SuperState, UserState functions. I read in autodocs that UserState has a bug in kick1.3 ( version 33 and 34 ). So I always patched ( mean replace to NOP ) SuperState and UserState. 3) KickEmu versus OSEmu: It's amazing but TheLostVikings works nice with OSEmu but with KickEmu games stop after some time ( and I can't detect why, because game freeze ). Ofcoz SuperState, UserState are removed. I still trying to find the reason ... 4) KickEmu + Dos LoadSeg function versus resload_Relocate. I love resload_Relocate especially with LoadFileDecrunch. It's works nice for onefile games which OS is not used. But I have problem when KickEmu is used and game allocate memory for something ( load files ), then exist risk that OS allocate game area memory. There is solution but only works only for games with one hunk: allocate mem and load there game and relocate. But what about other games ( with more hunks ) ?. I think that would be nice if loadSeg from KickEmu will support crunched files, is this is possible ? Any comments, ideas are welcome. |
26 October 2008, 15:17 | #2 | ||||
Moderator
Join Date: Nov 2001
Location: Germany
Posts: 866
|
Hi Asman,
Quote:
Quote:
Quote:
try giving more memory, use nocache, debug it... Quote:
You can still use resload_Relocate and afterwards use exec.AllocAbs to allocate the memory used be your relocated exe. Or you allocate the memory before using exec.AllocMem. For that you to know the max size of the file and the relocated exe. The relocated one can be smaller or bigger then the file (bss hunks). But you will waste some memory this way. No. Also think on overlayed executables. |
||||
26 October 2008, 17:24 | #3 |
Going nowhere
Join Date: Oct 2001
Location: United Kingdom
Age: 50
Posts: 8,986
|
As Bert said, try increasing memory if the game just halts, or have you correctly cracked it?
Are you running HRTMON? |
27 October 2008, 08:37 | #4 |
68k
Join Date: Sep 2005
Location: Somewhere
Posts: 828
|
Hi Wepl and Galahad,
Thanks for answers. Finally I found that silly bug. That was a PORTS int. If I removed PORTS int then The Lost Vikings works nice, but of course keyboard is not fixed now. I did some tests and game don't work if I add PORTS int and do jmp to old $68 value ( I know its dirty trick modified jmp $0, but I did that only for tests ). Furthermore I tried to add so simply PORTS int ( only jmp to old $68 ), but game still freeze. I have another question: how in proper way add PORTS int in KickEmu ? ( I know that I can use exec.AddIntServer, but maybe there is another way ). I think that something is not fixed well or some hidden bugs waits for discover. So I will continue my searching ( with HRTMON + Resource ). Regards |
28 October 2008, 21:24 | #5 |
Moderator
Join Date: Nov 2001
Location: Germany
Posts: 866
|
the problem with ports ints is maybe that the cia.icr (interrupt control request) is cleared after read.
therefore you cannot hang in the interrupts routine (via $68) and read cia.icr because afterwards the original interrupt routine will see no interrupts are set what do you want to fix with keyboard? |
30 October 2008, 12:01 | #6 |
68k
Join Date: Sep 2005
Location: Somewhere
Posts: 828
|
Thanks for answer, I will made some additional tests in weekend.
I think that is something wrong with music player in The Lost Vikings, but I'm not sure about that. The Lost Vikings use strange keyboard routine ( its not fixed properly in OSEmu slave you can check that ) and I want to fix that and I need PORTS int. Regards |
07 November 2008, 10:25 | #7 |
68k
Join Date: Sep 2005
Location: Somewhere
Posts: 828
|
At least I found the reason, but is still strange for me. The Lost Vikings works nice under KickEmu with 1MB CHIP ( not work with 0.5 CHIP and 0.5 FAST ) and with PORTS int. But If I remember correctly this game works on A500 with 0.5 CHIP and 0.5 SLOW. Anyway now I will fix this game correctly
Regards |
30 January 2010, 11:20 | #8 |
Registered User
|
I stumbled over this thread where OSemu is mentioned.
I figured from reading various threads that OSEmu is needed for some WHDLoad games. Where do i actually get hold on this? |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
FS-UAE - Unregistered WHDLOAD : WHDLOAD.KEY - FIX | Neil79 | support.FS-UAE | 14 | 29 January 2013 22:34 |
help me executing an whdload-installed game without whdload | Gaula92 | support.Games | 7 | 26 January 2011 21:44 |
whdload instructions? [where to put WHDLoad games for GameBase Amiga v1.4] | luke_70it | project.MAGE | 8 | 28 October 2009 06:36 |
WHDload issues (Complete WHDload nub, apologies in advance) | dire_wolf | project.WHDLoad | 31 | 09 October 2009 20:41 |
osemu.400 | killergorilla | support.Games | 9 | 18 December 2007 12:33 |
|
|