2024-03-19 10:49 CET

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0005716Ambermoon[All Projects] Generalpublic2022-11-11 02:25
ReporterPyrdacor 
Assigned ToWeplProject InfoAmbermoon (Thalion)
http://www.whdload.de/games/Ambermoon.html
 
PrioritynormalSeverityminorReproducibilityalways
StatusresolvedResolutionfixed 
Summary0005716: Hi there. I am Pyrdacor and I released several updates for Ambermoon since
DescriptionGameVersion: All
SlaveVersion: 2.0, 2019

Hi there. I am Pyrdacor and I released several updates for Ambermoon since 2020. In German 1.13 and English 1.14 I unified AM2_CPU and AM2_BLIT into a single exe and had to adjust the main exe "Ambermoon" to pass a variable which states if to use the blitter it CPU. Your slave is thus no longer compatible with recent versions of Ambermoon. I am not good with WHDLoad so I wanted to ask if you can adjust the slave to work with recent versions.
Have a look here for new versions and docs: https://GitHub.com/Pyrdacor/Ambermoon.
Thanks
TagsNo tags attached.
MachineA500
CPU68000
CPUSpeed7
ChipSetOCS
GFXCardNone
ChipMem256 KB
FastMem0 MB
WorkbenchOS 3.2
KickROM47 - Kick 3.2
KickSoftNone
WHDLoad18.8
importedyes
Attached Files

-Relationships
+Relationships

-Notes

note ~0011507

Wepl (manager)

Hello, kudos for your work!
I can probably adapt the install for the latest main binary. But how often will this change, because for every new version another update is going to be required.
Another issue I see is that all the changes to other files cannot be reflected in a good way. So it may only be useful for people who can build their own installation.

note ~0011510

Pyrdacor (reporter)

At best the executables need no more changes. Of course there might be some code bugs but in general I rewrote the files so that most data is now external. There is still one bug I want to fix.

Maybe you can tell me what you have changed, so I can fix it by myself?

Someone said that you also fixed some issues that occur in the original on some systems.

Thanks for your work!

note ~0011655

Wepl (manager)

Can you tell me which part of the github repo can be used to update an installed (whdload) ambermoon installation?

note ~0011656

Pyrdacor (reporter)

The folders "Disks/German" and "Disks/English" contain all the releases. There are ADF disk image releases and pre-installed (extracted) versions. The latter should be good for whdload. The most recent version is 1.16 so use the following archives: https://github.com/Pyrdacor/Ambermoon/blob/master/Disks/English/ambermoon_english_1.16_extracted.lha, https://github.com/Pyrdacor/Ambermoon/blob/master/Disks/German/ambermoon_getman_1.16_extracted.lha

note ~0011660

Pascal De Maeseneire (reporter)

links (up) doesn't works :

https://github.com/Pyrdacor/Ambermoon

English version (extracted files) : https://github.com/Pyrdacor/Ambermoon/raw/master/Disks/English/ambermoon_english_1.16_extracted.lha

German version (extracted files) :
https://github.com/Pyrdacor/Ambermoon/raw/master/Disks/German/ambermoon_german_1.16_extracted.lha

note ~0011662

Hexaae (reporter)

Bookmarked discussion ;)

note ~0011663

Pyrdacor (reporter)

Thanks Pascal. Hi Hexaae. ;)

Version 1.16 (linked above by Pascal) should be very stable regarding changes to the executables.

note ~0011664

Hexaae (reporter)

I'm currently using Ambermoon WHDLoad with latest 1.16 fixes, after manually hex-editing the AM2_CPU file as described here: https://github.com/Pyrdacor/Ambermoon/issues/22

Why still using WHDLoad version? Because of weird mem allocations of this game that can give some strange errors (crashes or "Out of memory" warnings) on real or WinUAE. I remember I experienced these random problems even on my real A1200+Blizzard1260 and 128MB FAST...
Try for example with WinUAE using 060 and 8MB CHIPRAM, 256MB FAST, and you'll see the game will use chipmem only for the game (?). Yes it's not exactly "real world" situation with real HW, but it's annoying and having "Out of memory" errors is a nonsense on such a system.
That's why I prefer the WHDLoad version, where the whole system env is "emulated" as it should and never had memory issues.

So, a new WHDLoad installer finally also compatible with new AM2_CPU would be great IMHO.

note ~0011668

Wepl (manager)

Hi, I have added the fix from https://github.com/Pyrdacor/Ambermoon/issues/22 to the old releases 1.05/1.07 and added support for 1.16.
Can you test if it works for you?

note ~0011669

Hexaae (reporter)

Tested with my manually hex-edited (actually 1.14 manually upgraded to 1.16) files; base 1.07 Eng; current 1.16 with the new AM2_CPU exe, and the game always launched correctly. Didn't play enough but everything seems to work as expected with all versions!

note ~0011671

Pyrdacor (reporter)

I am a bit confused. Why is it necessary to add the fix manually when 1.16 already contain it? Moreover this isn't the only code fix between 1.07 and 1.16. There are several of them.

note ~0011672

Pascal De Maeseneire (reporter)

@Welp
Hi,
Your latest Slave works perfectly on my A500 ACA500PLUS.
It was tested with English version 1.16 (extracted Files).
Best regards,
Pascal.

note ~0011673

Wepl (manager)

Install released.

note ~0011678

Hexaae (reporter)

Something is broken in public release version: game crashes calling eagle and/or black screen at launch using current 1.16 files from GitHub.
I usa an Italian Workbench (I've seen you fixed the keyboard layout...).

Latest beta was working fine.

note ~0011679

Hexaae (reporter)

Never mind: solved. It was a mismatching "Saves" file. Ignore last message.

note ~0011680

Pyrdacor (reporter)

Great job! Thanks! Couldn't test this yet. Can you also update the project page please?

note ~0011682

Wepl (manager)

Which project page do you mean?

note ~0011683

Pyrdacor (reporter)

The WHDLoad Ambermoon page. For me it only shows the changelog up to install version 2.0 from 2018. And also states that the most recent version is from 2018.

note ~0011689

Wepl (manager)

Please reload. It is updated.

note ~0011690

Pyrdacor (reporter)

Awesome! Thanks

note ~0011692

Hexaae (reporter)

@Wepl
Got this message playing a bit from a savegame: https://i.ibb.co/mBN8wtP/image.png
when I try to open the map in Godsbane castle :(
What I did:
- tested 25-30 mount/dismount from Giant Eagle
- then flyed to Castle Godbsane in the swamp
- entered and went through teleporter to the room with the bed/altar (can't remeber what it was)
- every time I try to open the local Map I get the error above or similar because of low memory.

note ~0011693

Hexaae (reporter)

...or this one if I retry (the game won't quit, so you can try again...):
https://i.ibb.co/MfhdLDW/image.png

note ~0011694

Hexaae (reporter)

It is reproducible for me.
https://1drv.ms/u/s!ApMUGr0cuN39gpkxo5DL4bEsSRxF3g?e=DAInmh

Run the game and Continue (will load position: "11-AUG-22.1 TEST GODSBANE").
After loading try open the map.

note ~0011697

Hexaae (reporter)

@Pyrdacor
Running the game without WHDLoad won't cause low-mem warning on first launch.
But if you quit the game and RELAUNCH IT AGAIN (try more than once please), for some reasons the game will complain it has not enough free mem (chip has 150Kb left for a moment, after the game returns to WB) to load savegames...

note ~0011700

Hexaae (reporter)

@Pyrdacor
That's why I always preferred the WHDLoad version, as we discussed before...
I had the same mem problem on my real A1200 + B1260 66MHz + 128 RAM as far as I can remember.

YouTube video: https://www.youtube.com/watch?v=hJLu5WPdapM
(The WB requester on quit says "RamDisk is full")

note ~0011703

Wepl (manager)

You used 1.16?
I have not deeply investigated the memory management of the game but it looks suboptimal to me. When running under WHDLoad any file caching of it should be disabled.
To reduce any switches on saving the used kickemu uses a large IOCACHE. Combined with memory fragmentation it could cause this I think.
But are 25-30 mount/dismount from Giant Eagle are valid use case?

note ~0011704

Hexaae (reporter)

Yep 1.16.
No ignore the Giant Eagle thing (it's been fixed): you can just download and use my savegame (above OneDrive link) inside Castle Godsbane for a quick check. When you try to open the map in the castle you should see a memory warning.

note ~0011708

Hexaae (reporter)

FYI, I just hacked the SLAVE with an hex-editor increasing chip-mem, and got no more complaints in the game.

note ~0011712

Wepl (manager)

To which value do you have increased it?

note ~0011713

Hexaae (reporter)

If you want to add a beta with $100000 chipmem I'll test it now.

note ~0011717

Hexaae (reporter)

Or maybe just 250Kb more will be enough... If you compile different versions I'll test and see if the low-mem warning appear again.

note ~0011719

Hexaae (reporter)

This seems to be enough:
WHDInfo v1.31 (03.08.2008) by Codetapper, Wepl

Ambermoon (c) 1993 Thalion
adapted by Harry/Wepl
Version 2.1 (09.08.2022)

         Slave name: Ambermoon_hack.slave
         Slave size: 6716 bytes
    WHDLoad Version: 18
              Flags: $2406 (9222)
                     All errors quit WHDLoad
                     Traps are emulated like autovectors
                     Forward "privilege violation" exceptions to handler
                     Uses resload_Examine/ExNext
        Base memory: $a0000 (640 KB)
Fake Exec installed: None
        Game Loader: $34 ($54 bytes from start of file)
   Subdir for files: 'data'
            Caching: All files
          Debug key: None
           Exit key: F10
   Expansion memory: $130000 (1216 KB)
     Kickstart name: '34005.a500'
     Kickstart size: $40000 (256 KB)
      Kickstart crc: $f9e3
        Information: Slave requires kickstart 1.3 image!

note ~0011720

Wepl (manager)

The problem is, that then the game will not work with 512k chip only anymore.
Better would probably to fix the memory manangement and give more expmem.

note ~0011721

Hexaae (reporter)

Would be great, but sounds complicated (a lot of work and time required)...

In the meanwhile could please you quickly recompile a version of the slave with 640KB of CHIP ram, so I can test if it's just a matter of chipmem?
About the fact it won't work on 512KB of chip... I think it was a problem in the original game too if you had just 512KB CHIP: the game won't crash and just warns you it has to disable music to continue.

note ~0011722

Hexaae (reporter)

@Wepl
TRASHED GFX WITH SLAVE 2.1
Playing a bit I noticed some problems.
I can reproduce corrupt gfx entering/exiting Pelains Palace/Illien multiple times with slave 2.1 (even the not hacked version with more chipmem):
https://imgsli.com/MTIxMzcy
or
https://user-images.githubusercontent.com/8591462/185197136-7f28b19d-d863-4462-b274-41d1b0636818.png

Here is the savegame https://1drv.ms/u/s!ApMUGr0cuN39gpk9ECH-X5XOpUzZ-Q?e=zdO3dW
Enter Illien and enter/exit multiple times Pelanis Palace to reproduce the bug.

note ~0011730

Hexaae (reporter)

@Wepl
REQUEST: make the SLAVE work even with uncompressed "Ambermoon" exe, in case.

note ~0011954

Hexaae (reporter)

@Wepl
current Slave 2.2 has not enough CHIPMEM. To avoid "chipmem not enough" error in castle Godsbane when you open local map the game requires 640KB (at least, this value works fine in my hacked slave).
+Notes

-Issue History
Date Modified Username Field Change
2022-06-29 21:32 administrator New Issue
2022-06-29 21:32 administrator Status new => assigned
2022-06-29 21:32 administrator Assigned To => Wepl
2022-06-29 21:44 Wepl Note Added: 0011507
2022-06-29 23:28 Pyrdacor Note Added: 0011510
2022-08-04 23:27 Wepl Note Added: 0011655
2022-08-05 06:48 Pyrdacor Note Added: 0011656
2022-08-05 22:46 Pascal De Maeseneire Note Added: 0011660
2022-08-07 14:15 Hexaae Note Added: 0011662
2022-08-07 15:07 Pyrdacor Note Added: 0011663
2022-08-07 17:35 Hexaae Note Added: 0011664
2022-08-08 00:10 Wepl File Added: Ambermoon.Slave
2022-08-08 00:11 Wepl Note Added: 0011668
2022-08-08 01:26 Hexaae Note Added: 0011669
2022-08-08 08:34 Pyrdacor Note Added: 0011671
2022-08-09 08:00 Pascal De Maeseneire Note Added: 0011672
2022-08-09 22:23 Wepl Note Added: 0011673
2022-08-09 22:23 Wepl Status assigned => resolved
2022-08-09 22:23 Wepl Resolution open => fixed
2022-08-10 00:04 Hexaae Note Added: 0011678
2022-08-10 00:13 Hexaae Note Added: 0011679
2022-08-10 02:16 Pyrdacor Note Added: 0011680
2022-08-10 11:58 Wepl Note Added: 0011682
2022-08-10 12:24 Pyrdacor Note Added: 0011683
2022-08-11 12:21 Wepl Note Added: 0011689
2022-08-11 12:38 Pyrdacor Note Added: 0011690
2022-08-11 14:27 Hexaae Note Added: 0011692
2022-08-11 14:29 Hexaae Note Added: 0011693
2022-08-11 15:09 Hexaae Note Added: 0011694
2022-08-11 15:28 Hexaae Note Added: 0011697
2022-08-11 15:54 Hexaae Note Added: 0011700
2022-08-11 22:56 Wepl Note Added: 0011703
2022-08-12 03:59 Hexaae Note Added: 0011704
2022-08-13 23:47 Hexaae Note Added: 0011708
2022-08-16 10:40 Wepl Note Added: 0011712
2022-08-16 12:14 Hexaae Note Added: 0011713
2022-08-16 16:16 Hexaae Note Added: 0011717
2022-08-16 23:08 Hexaae Note Added: 0011719
2022-08-16 23:41 Wepl Note Added: 0011720
2022-08-17 10:16 Hexaae Note Added: 0011721
2022-08-17 19:38 Hexaae Note Added: 0011722
2022-08-30 00:25 Hexaae Note Added: 0011730
2022-11-11 02:25 Hexaae Note Added: 0011954
+Issue History