Autor Thema: ResourceMaster 4.0 ???  (Gelesen 51901 mal)

0 Mitglieder und 3 Gäste betrachten dieses Thema.

Burkhard Mankel

  • Gast
Re: ResourceMaster 4.0 ???
« Antwort #20 am: Sa 22.02.2014, 13:52:29 »
Was ist eigentlich mit dem "rsm-mcfv4e.prg"? Im RCM-Paket kann ich leider keinen APP-Equivalent finden! Ist es überhaupt für normale TOS Anwender interessant?

Offline Mathias

  • Benutzer
  • Beiträge: 1.578
Re: ResourceMaster 4.0 ???
« Antwort #21 am: Sa 22.02.2014, 14:08:29 »
Burkhard, das ist für den mcfV4e Chip. Das ist die CPU in der FireBee.
MegaST 4 mit Sounddesigner II MegaBus-Hardware und 56001, MegaSTE, Hades 040, MagiC Mac auf Mac OS 9 und eine FireBee.

Offline Mathias

  • Benutzer
  • Beiträge: 1.578
Re: ResourceMaster 4.0 ???
« Antwort #22 am: Sa 22.02.2014, 14:13:35 »

Achja ... an die Coldfire-Leute: Ich vermute ihr müsst den modules-Ordner entfernen/umbenennen die Overlays & Module sind ja noch nicht nativ-coldfire

Generell mal; danke daß Du Dich darum kümmerst und uns auch gleich mit einer Coldfire-Version beschenkt hast (die Probleme bekommt ihr ja sicher noch hin)! Generell läuft ResourceMaster aber seit jeher problemlos auf der FireBee mit der letzten Version von Deiner Seite. Ich weiß nciht ob Dir das klar war bisher? Also unter FireTOS. Die EmuTOS-Fraktion die keinerlei 68k-Handler hat, würde natürlich viel von einer echt nativen Version profitieren, da sie RSM dann auch nutzen könnten ohne Neustart (sind ja beide TOSe im ROM).
MegaST 4 mit Sounddesigner II MegaBus-Hardware und 56001, MegaSTE, Hades 040, MagiC Mac auf Mac OS 9 und eine FireBee.

Offline ardi

  • Benutzer
  • Beiträge: 65
Re: ResourceMaster 4.0 ???
« Antwort #23 am: Sa 22.02.2014, 17:23:17 »
Hi,

@coldfire
ich habe mal einfach ein paar printf's eingefügt.
Die werden wahrscheinlich aufs Desktop geschrieben. Unter MagiC kann ich in .tos umbenennen dann öffnet sich ne Console.
Wenn nicht alles schief läuft, sollten ein paar Ausgaben kommen bevor rsm crasht.

ardi
« Letzte Änderung: Sa 22.02.2014, 18:08:21 von ardi »

Offline joska

  • Benutzer
  • Beiträge: 20
Re: ResourceMaster 4.0 ???
« Antwort #24 am: Sa 22.02.2014, 22:34:39 »
This is good news :) ResourceMaster is the only good RSC-editor that's working on the Firebee. There is one thing that annoys me though, when you want to resize an object it can be hard to "grab" the corner. More often than not I end up moving the object instead of resizing it. Unless the object is very small (around 1x1 character), where I often end up resizing it when I want to move it...

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: ResourceMaster 4.0 ???
« Antwort #25 am: So 23.02.2014, 09:45:32 »
Hi,

@coldfire
ich habe mal einfach ein paar printf's eingefügt.
Die werden wahrscheinlich aufs Desktop geschrieben. Unter MagiC kann ich in .tos umbenennen dann öffnet sich ne Console.
Wenn nicht alles schief läuft, sollten ein paar Ausgaben kommen bevor rsm crasht.

ardi

Hallo Armin,

zu einem Ausschrieb kommt es leider nicht (weder direkt auf dem Schirm noch auf der Konsole, die ich vorher aufgemacht habe).

Aber ich bin (ein bißchen) schlauer: Basepageadresse: 0x1103320, Line-F-Exception bei 0x49a7d0a. User-Stack bei 0x23f92c4.
Mit dem FireTOS-Debugger kann man sehen, daß bei 49a7d0a nur 0xff's stehen.

Eine Stackrückverfolgung hat mich dahin geführt:

02503C66: 4E56 0000                 link.w a6,#0
02503C6A: 4AB9 0253 B2F4            tst.l 0x253b2f4.l
02503C70: 6704                      beq.b 0x2503c76
02503C72: 4E5E                      unlk a6
02503C74: 4E75                      rts
02503C76: 4E5E                      unlk a6
02503C78: A379 0253 B2F4            mov3q #0x1,0x253b2f4.l
02503C7E: 60FF 024A 408A            bra.l 0x49a7d0a                 <=== hier kracht's
02503C84: 4E56 FFE8                 link.w a6,#-0x18
02503C88: 700A                      moveq #0xa,d0
02503C8A: 48D7 3C0C                 movem.l d2-d3/a2-a5,(sp)
02503C8E: 266E 0008                 movea.l 0x8(a6),a3
02503C92: 4282                      clr.l d2
02503C94: 246E 000C                 movea.l 0xc(a6),a2
02503C98: 2A6B 000C                 movea.l 0xc(a3),a5
02503C9C: 262B 0010                 move.l 0x10(a3),d3

Das 0x49a7d0a scheint mir ein Überschreiber zu sein, 60FF 024A 408A gehört da nicht hin (im disassemblierten Programm selbst steht an der Stelle "60ff ffff ff8a", also eigentlich ein Rücksprung in einer Schleife).

Vielleicht hilft dir das ja.

Gruß,
Markus

And remember: Beethoven wrote his first symphony in C

Offline ardi

  • Benutzer
  • Beiträge: 65
Re: ResourceMaster 4.0 ???
« Antwort #26 am: So 23.02.2014, 10:32:01 »
Das 0x49a7d0a scheint mir ein Überschreiber zu sein, 60FF 024A 408A gehört da nicht hin (im disassemblierten Programm selbst steht an der Stelle "60ff ffff ff8a", also eigentlich ein Rücksprung in einer Schleife).
Danke für deine Mühe. Aber ich stehe ein bisschen auf'n Schauch.
- Basepage an 0x1103320
- bedeutet  Programmstart an  0x1103420 (+0x100)
- "Überschreibung" an 0x02503C7E
- bedeutet Offset=(0x02503C7E - 0x1103420)=0x140085E
- und 0x140085E ist weit außerhalb von RSM

Aber ich bin (ein bißchen) schlauer
Ich anscheinend nicht  ;)
woher hast du, das an der Stelle 60ff ffff ff8a stehen muß. Ich brauche die relative Position zum Programmstart.

ardi
« Letzte Änderung: So 23.02.2014, 10:33:48 von ardi »

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: ResourceMaster 4.0 ???
« Antwort #27 am: So 23.02.2014, 10:56:52 »
Ich anscheinend nicht  ;)
woher hast du, das an der Stelle 60ff ffff ff8a stehen muß. Ich brauche die relative Position zum Programmstart.

ardi

Müsste 0x5fb9a (relativ zum Start der Basepage) sein. Ob man dem FireTOS Debugger bezüglich der Basepageaddresse glauben darf, weiß ich nicht, ich habe den gerade das erste Mal benutzt.

Die Absturzstelle scheint mir allerdings eindeutig zu sein.

Ich bin folgendermaßen vorgegangen (ich habe das gerade nochmal nachvollzogen, insofern kann es sein, daß sich die Adressen zu oben unterscheiden):

Crash PC -> 0x4947d0a
User Stack -> 0x251d2c4
Dort steht die Rücksprungadresse 0x24741d6:

024741D0: 4EB9 024D 3C66            jsr 0x24d3c66.l
024741D6: 41EE 0008                 lea 0x8(a6),a0

Also das Unterprogramm ab 0x24d3c66 angeschaut:
> dis 24d3c66
024D3C66: 4E56 0000                 link.w a6,#0
024D3C6A: 4AB9 0250 B2F4            tst.l 0x250b2f4.l
024D3C70: 6704                      beq.b 0x24d3c76
024D3C72: 4E5E                      unlk a6
024D3C74: 4E75                      rts
024D3C76: 4E5E                      unlk a6
024D3C78: A379 0250 B2F4            mov3q #0x1,0x250b2f4.l
024D3C7E: 60FF 0247 408A            bra.l 0x4947d0a
024D3C84: 4E56 FFE8                 link.w a6,#-0x18
024D3C88: 700A                      moveq #0xa,d0
024D3C8A: 48D7 3C0C                 movem.l d2-d3/a2-a5,(sp)
024D3C8E: 266E 0008                 movea.l 0x8(a6),a3
024D3C92: 4282                      clr.l d2
024D3C94: 246E 000C                 movea.l 0xc(a6),a2
024D3C98: 2A6B 000C                 movea.l 0xc(a3),a5
024D3C9C: 262B 0010                 move.l 0x10(a3),d3

und da ist der Sprung nach 0x4947d0a, der den Crash auslöst. Paßt für mich zusammen.

Anschließend habe ich das Binary disassembliert und nach der selben Bytefolge gesucht. Die kommt nur einmal vor und das Drumrum ist eindeutig:

5fb82:   4e56 0000       linkw %fp,#0
   5fb86:   4ab9 0009 71f4  tstl 0x971f4
   5fb8c:   6704            beqs 0x5fb92
   5fb8e:   4e5e            unlk %fp
   5fb90:   4e75            rts
   5fb92:   4e5e            unlk %fp
   5fb94:   a379 0009 71f4  mov3ql #1,0x971f4
   5fb9a:   60ff ffff ff8a  bral 0x5fb26
   5fba0:   4e56 ffe8       linkw %fp,#-24
   5fba4:   700a            moveq #10,%d0
   5fba6:   48d7 3c0c       moveml %d2-%d3/%a2-%a5,%sp@
   5fbaa:   266e 0008       moveal %fp@(8),%a3
   5fbae:   4282            clrl %d2
   5fbb0:   246e 000c       moveal %fp@(12),%a2
   5fbb4:   2a6b 000c       moveal %a3@(12),%a5


Paßt für mich (außer der möglicherweise falschen Basepageadresse?) zusammen. Ist es so klarer?

Gruß,
Markus



« Letzte Änderung: So 23.02.2014, 11:12:59 von mfro »
And remember: Beethoven wrote his first symphony in C

Offline ardi

  • Benutzer
  • Beiträge: 65
Re: ResourceMaster 4.0 ???
« Antwort #28 am: So 23.02.2014, 12:00:26 »
Hi Markus,

probiere bitte mal die angehängte Version.

Armin

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: ResourceMaster 4.0 ???
« Antwort #29 am: So 23.02.2014, 12:47:44 »
Hi Markus,

probiere bitte mal die angehängte Version.

Armin

Leider kein (wesentlicher) Unterschied. Die Adresse hat sich ein wenig verschoben (0x46afd0a), ansonsten alles beim alten.

Hast Du meine PN gelesen?
And remember: Beethoven wrote his first symphony in C

Offline ardi

  • Benutzer
  • Beiträge: 65
Re: ResourceMaster 4.0 ???
« Antwort #30 am: So 23.02.2014, 13:08:22 »
Leider kein (wesentlicher) Unterschied. Die Adresse hat sich ein wenig verschoben (0x46afd0a), ansonsten alles beim alten.

Hast Du meine PN gelesen?
PN hab ich gelesen. Danke hab den Fehler gefunden ... denke ich
Ich hatte versehentlich die falsche Datei hoch-geladen (sorry)
Hier jetzt die richtige

ardi

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: ResourceMaster 4.0 ???
« Antwort #31 am: So 23.02.2014, 13:13:29 »
Leider kein (wesentlicher) Unterschied. Die Adresse hat sich ein wenig verschoben (0x46afd0a), ansonsten alles beim alten.

Hast Du meine PN gelesen?
PN hab ich gelesen. Danke hab den Fehler gefunden ... denke ich
Ich hatte versehentlich die falsche Datei hoch-geladen (sorry)
Hier jetzt die richtige

ardi

Nicht besser. Bloß wieder andere Adressen.
And remember: Beethoven wrote his first symphony in C

Offline ardi

  • Benutzer
  • Beiträge: 65
Re: ResourceMaster 4.0 ???
« Antwort #32 am: So 23.02.2014, 13:24:08 »
Nicht besser. Bloß wieder andere Adressen.
Ich bin dir soooo dankbar für deine Hilfe ... (schleim  ;D)

Neuer Versuch ???

ardi

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: ResourceMaster 4.0 ???
« Antwort #33 am: So 23.02.2014, 16:39:02 »
Nicht besser. Bloß wieder andere Adressen.
Ich bin dir soooo dankbar für deine Hilfe ... (schleim  ;D)
Blödsinn. _Ich_ bin _dir_ dankbar - schließlich will _ich_ RSM für Coldfire haben ;)
Zitat von: ardi


Neuer Versuch ???

ardi

Jetzt ist was anders und wir kommen wenigstens bis zum MiNT-Exceptionhandler:

Zitat
ILLEGAL INSTRUCTION: User PC=21C9644 (basepage=218A000, text=218A100, data=221B91C, bss=221E658)

Allerdings sieht mir das nicht (zumindest nicht durchgängig) nach einem Coldfire-Binary (eher nach 68020+) aus - ich sehe da Adressierungsarten, die der Coldfire nicht kann. Irgendwo -mcpu=547x vergessen?

Was hast Du geändert?
And remember: Beethoven wrote his first symphony in C

Offline ardi

  • Benutzer
  • Beiträge: 65
Re: ResourceMaster 4.0 ???
« Antwort #34 am: So 23.02.2014, 19:35:46 »

Allerdings sieht mir das nicht (zumindest nicht durchgängig) nach einem Coldfire-Binary (eher nach 68020+) aus - ich sehe da Adressierungsarten, die der Coldfire nicht kann. Irgendwo -mcpu=547x vergessen?
Es wurde die falsche Lib (68000) gelinkt. Ist mein erstes cf-Programm. Bin davon ausgegangen, daß die multilib-Geschichte auch für die -L Option gilt. ... falsch gedacht.
Im Anhang das korrekt gelinkte prg.

Was hast Du geändert?
Ich benutze einen selbst gepatchten und compilierten GCC 4.6.2 auf ELF-basis (GCC 4.8.2 ist gerade durchgelaufen und wird demnächst verwendet).
F:Warum ELF?
A:Wegen den "sectionen", die das a.out Format nicht unterstützt.
F:Wozu sind sectionen gut?
A:erleichtert das entwickeln fon Libraries (insbesondere C++) erheblich. Normalerweise werden bei Libraries für jede Funktion ein Objekt-File benötigt. Damit der Linker nur das linkt, was tatsächlich benötigt wird. Jetzt kann ich alles in eine C/C++ Datei packen compiliere mit -ffunction-sections und linke mit --gc-sections und habe den gleichen Effekt.

Das beantwortet noch nicht deine Frage. Also das fertig gelinkte ELF-File wandle ich dann nach tos. Dabei habe ich übersehen, das im ELF auch relocations-Einträge für die PC-relativen bra.l (die es beim 68000 nicht gibt) stehen und habe diese mit in die TOS-Relocationstabelle eingetragen was natürlich quatsch ist und die Sprünge dann ins Nirwana gehen.

ardi
« Letzte Änderung: So 23.02.2014, 20:36:46 von ardi »

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: ResourceMaster 4.0 ???
« Antwort #35 am: So 23.02.2014, 21:50:05 »
Im Anhang das korrekt gelinkte prg.

 8)

Erste Sahne. Funktioniert! Coldfire native. Prima!

Konnte jetzt (noch) nicht ausgiebig testen, aber was ich bislang gesehen habe, sieht sehr gut aus. Super!

Herzlichen Dank für deine Mühe!

Gruß,
Markus

P.S.: daß ich kein Ausgabeformat einstellen kann (alles grau) liegt am fehlenden "MODULES"-Ordner, oder?
« Letzte Änderung: So 23.02.2014, 21:59:16 von mfro »
And remember: Beethoven wrote his first symphony in C

Offline HelmutK

  • Benutzer
  • Beiträge: 676
Re: ResourceMaster 4.0 ???
« Antwort #36 am: So 23.02.2014, 22:47:32 »
Kurze Frage am Rande: Ich dachte immer ELF geht bei MiNT nicht? Jetzt geht's doch? Das wär doch für gdb usw. besser, oder?

-Helmut

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: ResourceMaster 4.0 ???
« Antwort #37 am: So 23.02.2014, 22:50:18 »
Kurze Frage am Rande: Ich dachte immer ELF geht bei MiNT nicht? Jetzt geht's doch? Das wär doch für gdb usw. besser, oder?

-Helmut

Armin linkt ein ELF-Binary und wandelt es dann in ein TOS-Binary um. Für gdb bringt das nichts. Es verbessert "nur" den Link-Prozess.
And remember: Beethoven wrote his first symphony in C

Offline Mathias

  • Benutzer
  • Beiträge: 1.578
Re: ResourceMaster 4.0 ???
« Antwort #38 am: So 23.02.2014, 23:42:11 »
Wie entpackt ihr das Programm? Am Atari mit Qextract gehts nicht, mit unrar.ttp direkt wird der Prozess terminiert, am Mac macht Stuffit 5.5 garnichts, und Stuffit Expander 7.03 meldet einen Format-Error der Datei, ... alles nach Umbenennen auf rsm.rar natürlich.
MegaST 4 mit Sounddesigner II MegaBus-Hardware und 56001, MegaSTE, Hades 040, MagiC Mac auf Mac OS 9 und eine FireBee.

Offline HelmutK

  • Benutzer
  • Beiträge: 676
Re: ResourceMaster 4.0 ???
« Antwort #39 am: So 23.02.2014, 23:51:01 »
Welches unrar hast Du?

Mit dem geht's:

http://home.arcor.de/zabruder/atari/tools/unrar.zip