RELAUNCH64 und ACME

Es gibt 42 Antworten in diesem Thema, welches 12.342 mal aufgerufen wurde. Der letzte Beitrag (9. November 2003 um 19:31) ist von MorGor.

  • tag,

    flackert bei euch auch immer eine DOSbox auf wenn
    ihr F5/F6 zum assemblieren drückt?

    ich hatte sonst ACME aus dem UltraEdit gestartet und
    dort kann man in der tollConfiguration "als Windowsprogramm aufführen" anwählen...dann flackert
    die box nicht mehr.

    und noch ein problem habe ich: wenn ich ACME mit
    erweitertem VERBOSE_mode starte (v3) bekomme ich
    beim assemblieren zwar alle infos die ich haben wollte,
    aber der VICE startet nicht !?

    any hints?

    tecM0

  • zum zweiten problem, dass vice nicht startet:

    das müsste daran liegen, dass relaunch64 denkt, es handelt sich bei dem geöffneten errorlog um fehlermeldungen, und macht daher nicht weiter. daher startet vice nicht. das problem wird leicht zu beheben sein.


    zum ersten problem: was meinst du mit "aufflackern"? wenn eine datei bereits kompiliert wurde und die prg-datei bereits vorhanden ist, dann "sieht" acme das und schließt sich automatisch wieder. das sieht dann wie ein "flackern" aus. wenn ein source noch nicht kompiliert wurde, dann braucht acme entsprechend länger, das dos-fenster ist also länger geöffnet. das flackern hat also nichts zu bedeuten (außer, du meinst ein andauernded, heftigeres flackern).

  • Zitat

    Original von schergentoni
    zum ersten problem: was meinst du mit "aufflackern"? wenn eine datei bereits kompiliert wurde und die prg-datei bereits vorhanden ist, dann "sieht" acme das und schließt sich automatisch wieder. das sieht dann wie ein "flackern" aus. wenn ein source noch nicht kompiliert wurde, dann braucht acme entsprechend länger, das dos-fenster ist also länger geöffnet. das flackern hat also nichts zu bedeuten (außer, du meinst ein andauernded, heftigeres flackern).

    ich meine das da eine dosbox aufgeht. ich hatte das beim ULTRAEDIT auch. der hat aber eine option (checkbox) die besagt "als windowsprog starten", dann geht keine dosbox mehr auf.
    weisst du wie das funxt? ist sicher auch nur ein parameter
    beim prog. starten....kenn mich nicht aus mit M$_coding ;\

    gruss,
    tecM0

  • ich betreibe r64 auch mit ACME. Wie schergentonin schon gesagt hat, geht beim Kompilieren kurz eine DOS_Box auf, klar; der Kompiler (DOS) wird eben aufgerufen und wenn keine Fehlermeldungen kommen, schliesst sie sich auch automatisch wieder und VICE wird angeworfen. Sind Fehlermeldungen am start oder - ich glaube auch bei F5 (nur Kompilieren) - bleibt die DOS-Box geöffnet, dann muss man sie eben von Hand wieder schliessen (Alt-F4) und VICE startet. (allerdings ist dann der Code natürlich nicht kompiliert)
    Ist also eigentlich alles ganz normal, was du da schilderst...

  • Hi!

    Wollte mich auch mal an's Crosscompiling rantasten und habe dazu Relaunch64 runtergeladen...sieht soweit noch allles recht witzig aus! Nur sobald ich F6 drücke erscheint das Errorlog mit dem Hinweis:

    Error: Cannot open toplevel file.

    Und das obwohl ich das mit dem 1x1-scroller-testfile versuchte und an den Einstellungen von R64 bisher kaum rumgespielt habe. Ich habe ACME als compiler eingestellt und winVICE als Emu...dat war's.

    Was tun?

  • im sample sind relative pfad-angaben, d.h., es kann sein, dass du das verzeichnis ändern muss.

    oder: es kann sein, dass der datei-name der sample-datei (oder der zu assemblierenden datei) leerzeichen enthält. meines wissen müssten die leerzeichen dann raus.

  • Hi!

    Nun klappt es. Mußte anscheinend wirklich alles auf C: liegen und die Pfad-Angaben mußten noch überarbeitet werden. Also vielen Dank für die Hilfe.

    Aber das war noch nicht alles...

    Nun assembliert er zwar alles ohne Probleme und der WinVICE wird geöffnet (mit oder auch ohne Modul). Aber weder befindet sich was im Speicher, noch wird irgendwas gestartet. Woran kann das denn jetzt schon wieder liegen?? :motz:

    Vorab schon mal vielen dank für die Hilfe...ist sicher nicht das letzte mal, dass ich Euer Fachwissen diesbezüglich benötige! :rotwerd:

  • Hast Du vieleicht !to "mit_Namen_findet_mich_VICE" evtl vergessen ?
    Ist mir schonmal passiert.
    Habe auch sehr sparsam geguckt als nichts im Emu ankam.

    Gruesse
    Michael

    If we're evil or divine - we're the last in line. - Ronnie James Dio (1984) -
    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. |

  • Nope! Fummel immer noch an dem mitgelieferten Beispiel rum. Da steht:
    !to "1x1scroll.prg"
    und das file selbst heißt
    1x1scroll.a

    ...also m.E. alles so, wie es sein sollte. Es ist doch schnurz, ob sich der Emu in einem anderen Verzeichnis, anderen Partition oder gar Festplatte befindet, oder??

  • Das ist merkwuerdig. Vieleicht musst Du unter "Einstellungen->Kompiler-Einstellungen->Zielverzeichnis fuer compilierten Sourcecode einstellen" etwas eintragen. Dann muesste es doch klappen.

    Ich habe Relaunch und ACME in 2 verschiedenen Verzeichnissen auf Laufwerk C: . Das Kompilat landet immer in C:\ und wird vom VICE gefunden. Vieleicht hilft die obige Einstellung wenn die Programme auf verschiedenen Partitionen sind...?

    Gruesse
    Michael

    If we're evil or divine - we're the last in line. - Ronnie James Dio (1984) -
    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. |

  • Ist ja prima. Der Editor wird dem Vice wohl den Pfad uebergeben muessen wenn es nicht per Path "global" angegeben ist.

    Ist ansonsten wirklich schoenes Arbeiten mit dem Editor.

    Gruesse
    Michael

  • wenn man kein zielverzeichnis bei acme angibt, wird die kompilierte datei ins acme-verzeichnis gespeichert, soweit ich weiß. bei dasm bspw. kann man ein output-verzeichnis angeben. ich weiß nicht, ob das bei acme in diesem !to "..." auch angegeben werden kann.

    wenn man relative pfadangaben verwendet, können acme und relaunch64 auf jeder beliebigen partition liegen, nur muss man bedenken, dass relative pfadangaben natürlich nur auf der selben partition suchen.


    ab der nächsten version kann man auch einstellen, dass die kompilierte datei ins selbe verzeichnis soll wie der source-code.


    ich versuche mal, eure fragen zu sammeln und beim update auch in die f.a.q. der hilfedatei zu packen.

  • Hi!

    Zuallererst einmal Glückwunsch und vielen Dank für dieses geniale Tool. Ich werde mich jetzt im Crossassemblern versuchen und schauen ob ich damit klarkomme. Fragen und Anregungen habe ich trotzdem schon...

    1. Gibt es eine Übersicht der Befehle, die mit Relaunch64 verarbeitet werden können. Sowas wie !to... oder !by...! Wenn man nicht weiß, was es alles für Befehle gibt, macht man sich u.U. zu viel arbeit oder kommt ggf. gar nicht weiter. Oder ist das von Assembler zu Assembler unterschiedlich (also benötigt ACME andere Befehle als andere Assembler)???

    2. Gibt es Spriteeditoren, Charset-Editoren und/oder Grafikprogramme für den C64 die unter Win laufen (gibt es Links?)? Könnte man die nicht auch mit einem Klick anwählbar machen? So dass mit der Plattform "Relaunch64" alle wichtigen Tools aufrufbar sind.

    Äh, ich glaube das war's erstmal...ich hoffe, die Vorschläge/Fragen sind nicht allzu dumm oder abwegig. Habt Nachsicht mit einem Crossassembler-Neuling! ;)

  • zu deiner ersten frage:

    relaunch kann alles verarbeiten, weil es im grunde nur ein etwas umfangreicherer text-editor ist. die befehle hängen vom verwendeten cross-assembler ab. links zu den verschiedenen crossassemblern findest du auch in der relaunch-hilfe.

    zu den anderen tools:

    ein guter char-editor:
    Bitte melde dich an, um diesen Link zu sehen.
    (cunei-form)

    sprite-editoren:
    sprite-pad/sprite-painter
    Bitte melde dich an, um diesen Link zu sehen.


    bei relaunch64 kannst du mit F2 (menü extras) den programmstarter starten. hier kannst du verschiedene tools reinsetzen und per mausklick starten. somit kannst du bspw. direkt über relaunch andere c64-tools starten.

  • HI!

    So wie es scheint, hat sich das "arbeiten" mit Crossassembler eh gerade erledigt. ;(

    Was ist, wenn man größere Files assembliert? Der Emulator stürzt dann einfach ab, weil laden nur mit Cartridge möglich ist. Prg-files kann man aber nicht mit Cartridge laden.

    Wenn man beispielsweise ein File x hat, das von $2000 bis $4711 geht und der Bereich von $3000 bis $3800 mit File y überschrieben werden soll, sagt mir ACME
    Warning: Segment starts inside another
    Is schon klar...soll aber so sein! Weitermachen unmöglich. :(

    Diese beiden Punkte führen leider schon dazu, dass ich den C64 nutzen MUSS um an meinem Projekt weiterarbeiten zu können. Leider...obwohl...es gibt schlimmeres als am C64 zu sitzen, oder? ;)

    Außerdem erfährt man nirgends, an welcher Speicheradresse der Code endet. Wäre ja u.U. sehr interessant, damit man nicht in Bereiche codet, die für was anderes bestimmt sind.

    Aber all diese Sachen haben weniger mit Relaunch64 zu tun als vielmehr mit ACME und den Emulator.

    Das Einzige was mir bei Relaunch64 bisher fehlt (oder ich hab's nicht gefunden) ist eine Merge-Funktion, mit der man Sourcecode importiert und dem bestehenden Code hinzufügt (habe ich "umständlich" über kopieren und einfügen machen müssen).

  • doch, prg mit cartridge im emu laden geht (siehe auch sample oder hilfe).

    man muss direkt nach dem emu-start schnell F3 drücken (normal-modus), dann wird das prg gestartet.


    zu den segmenten weiß ich nicht genau, ob man den fehler unterdrücken kann. müsste man mal in der acme-hilfe schauen.

    sonst ggf. die datei x splitten, damit y dazwischen passt.

  • Na klar geht es mit Cartridge...aber nur wenn ich F3 drücke. Folge: Die Cartridge ist aus und wird dann über (ich meine) $d000 geladen stürzt der Emu ab.

    Apropos Segmente. Ich habe da ein File das genau von $4800 bis $4d00 geht. Ab $4d00 soll dann der Code beginnen.
    Wenn ich nun aber assembliere kommt wieder diese Segment-Warnung. Komischerweise kommt diese Warnung nicht mehr wenn ich das Segment um 2 Bytes (!) nach vorne schiebe (also $47fe bis $4cfe). Verstehen muß man das nicht, oder? :D

    Dieses Crossassembling ist ja ganz nett, wenn man mal was kleines coden will...aber für größeres unbrauchbar. Oder hat da jemand andere Erfahrung gemacht???

  • Hi,

    versuche mal :

    *=$4800
    !bin "mycode",,2


    Du hast ein Abbild des C64 Files auf der Platte. Dieser beinhaltet 2 Byte, die vom C64 als Ladeadresse benoetigt werden. Diese interpretiert ACME als Code, da er diese nicht benoetigt. Mit ,,2 muessten die "geskipt" werden.

    Genauer Syntax : !bin "name",bytes,skip-bytes

    Gruesse
    Michael

    If we're evil or divine - we're the last in line. - Ronnie James Dio (1984) -
    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. |