Your support is needed and is appreciated as Amigaworld.net is primarily dependent upon the support of its users.
|
|
|
|
| Poster | Thread | cdimauro
|  |
Deluxe Music 2.0 issues on AROS/68k Posted on 10-Apr-2026 12:21:39
| | [ #1 ] |
| |
 |
Elite Member  |
Joined: 29-Oct-2012 Posts: 4591
From: Germany | | |
|
| Opened this thread to collect information and discussions about Deluxe Music 2.0 issues on AROS/68k, to avoid polluting https://amigaworld.net/modules/newbb/viewtopic.php?topic_id=45830&forum=2&start=60&mode=viewtopic&viewmode=flat&order=0
@kolla
Quote:
kolla wrote:
NOTES This function had previously been documented that it would accept a null font. This practice is discouraged. o Use of a RastPort with a null font with text routines has always been incorrect and risked the guru. o Keeping an obsolete font pointer in the RastPort is no more dangerous than keeping a zero one there. o SetFont(rp, 0) causes spurious low memory accesses under some system software releases.
As of V36, the following Amiga font variants are no longer directly supported: fonts with NULL tf_CharSpace and non-NULL tf_CharKern. fonts with non-NULL tf_CharSpace and NULL tf_CharKern. fonts with NULL tf_CharSpace and NULL tf_CharKern with a tf_CharLoc size component greater than tf_XSize. Attempts to SetFont these one of these font variants will cause the system to modify your font to make it acceptable.
|
Good. Then a implementing the last part should fix this issue.
Notice, however, that this is the behaviour of V36, whereas for previous versions: "This function had previously been documented that it would accept a null font." and: "This practice is discouraged." Which does NOT bound other implementations of the same API to perform like the Amiga o.s. V36.
So, fixing it is "just" a way to allow badly written applications to properly work.
@Georg
Quote:
Georg wrote: @Hammer
Messed around a bit with Deluxe Music on AROS 68k, today.
Use "Typeface" from Aminet to load and resave the fonts DMusic/8 and DMusic/16. For some reason they have NULL tf_CharKern, altough they are proportional. AOS3 seems to correct this problem at load/run time. AROS doesn't so during use bad things happen. Like text extent calculations give negative width for template to be used by Text/BltTemplate. |
As per above. Quote:
Next, patch the DMusic program itself with a hex editor. There are four longs in there "80080007". Change to "88880007".
80080007 == ASLFR_HookFunc. The program relies on the function to get its small-data-whatever-base-pointer in A4 register. When MorphOS initialliy still used AROS asl.library, they added some code to deal with this, but it isn't compiled in for AROS.
I have not checked if all occurencies of 80080007 in the program file are really all ASLFR_HookFunc usages. If one or more is not, you probably get a crash somewhere else as free bonus. |
What's the difference between 80080007 and 88880007? Quote:
| After starting the program use Scout to ~disable the InputHandler "MKSoft ToolWindow" by setting it's priority to very low value. This thing doesn't work correctly in AROS, but is otherwise used to allow clicking into toolwindow gadgets without deactivating main window. |
Is it allowed by the Amiga o.s. guidelines? |
| | Status: Offline |
| |
|
|
|
[ home ][ about us ][ privacy ]
[ forums ][ classifieds ]
[ links ][ news archive ]
[ link to us ][ user account ]
|