Beiträge von Endurion

    Jetzt erst die WIP ziehen!

    Hab den Crash gefixt, eine entsprechende Meldung reingesetzt, wenn keine Build-Info oder Dokument vorhanden ist, die Ausgaben in Output weg, und der Insert-Button bleibt jetzt auch (phew)

    Ach ja. VICE hat ab irgendeiner Version die Parameter für True Drive umbenannt. Und geschickterweise dann einen Fehler beim Aufruf geworfen (Unknown option '+truedrive')


    Ab 3.6 muss es für True Drive On: "-drive8truedrive +virtualdev8" heissen, und für Off "+drive8truedrive -virtualdev8"


    Das Floppy-Icon gehört überarbeitet, da gebe ich dir total recht.

    Vielleicht wäre eine Idee die Startadresse für BASIC mit einer auffälligeren Farbe zu hinterlegen, wenn sie nicht dem Standard entspricht.

    (Was bei VIC20 grandios ist, der hat pro RAM-Config einen eigenen Standard)

    Da bin ich auch eben überfragt. Bei einem kurzen Test sind in der exportierten Datei keine Extra-Bytes dran. Die würden ja nur geschrieben, wenn das Häkchen bei Prefix Load Address drin ist.

    Hast du die Datei direkt in ein Disk-Image importiert und es fehlen daher die 2. Adress-Bytes?

    Drachen: Prüf bitte mal, ob in deiner Dialekt-Datei ein Eintrag

    Machines=MEGA65

    vorhanden ist. Den hatte ich im letzten Stable Release schon eingeführt. Ohne klappt das Tokenisieren nicht mehr.


    C64-Nitram:

    Uiuiui, jetzt geht's aber rund hier :)


    Hab gleich ein paar der Dinge angepasst:

    * File-Manager-Export macht jetzt brav Kleinschrift

    * Bei den Binär-Datei-Import mit der .prg-Option gibt es jetzt eine Checkbox zum Abwählen der Option

    * Der Crash beim Navigieren von geschlossenen Dokumenten sollte auch weg sein


    Am Graphic-Screen-Editor wird gerade geschraubt, nicht erschrecken!


    Rückfrage: Wenn du IMPORT als Charset meinst, meinst du eigentlich einen Export aus dem File-Manager direkt in einen Charset-Editor?


    Neue WIP kommt gleich!

    Edit: WIP ist da!

    Ein .BAS-File kann man nicht direkt als .PRG speichern, da muss man ja "übersetzen", d.h. tokenisieren etc.


    Also klar könnte man ein Save as .PRG machen, das würde im Grunde ja nichts anderes machen als Compile/Build, nur eben zu einem Pfad, den man dann aber auch jedesmal angeben müsste. Meinst du so etwas?


    Lynx: So eine Art "output folder"? Wäre auch eine Option.

    Generell scheint ein "Write Into Target (Disk) Image" aber ein häufigeres Thema zu sein, das man vielleicht etwas simpler umsetzen könnte als mit Build Events. Muss ich mal grübeln, wie man das macht.

    Und ggf. auch so, dass es ohne Solution Explorer klappt (e.g. die Einstellungen in den Metadaten im .bas-File gespeichert werden)

    Im Grunde merkt sich C64Studio nicht, ob ein BASIC-File jetzt aus einem Disk-Image rausgezogen wurde (Open As). Die Datei steht erstmal so nur für sich.

    Das sehe ich auch etwas komplexer an, wenn man sich das merken soll, und beim Speichern automatisch wieder ins Image speichern.

    Was, wenn es in der Zwischenzeit im File Manager geändert wurde? Oder da schon eine Datei mit dem Namen existiert? Oder das Image verschoben/gelöscht wurde?



    Es gibt zwei Varianten, die aber alle etwas anders an das Thema gehen, wie es dir vorschwebt:


    1)

    Du willst das BASIC-File alleine in ein .d64 schreiben:

    Rechtsklick auf das .bas-File im Solution Explorer, Reiter "Compile Target".

    Hier in "Target File" einen .d64-Dateinamen angeben, als "Target Type" dann "D64" auswählen.

    Beim Bauen und starten wird dann jedesmal ein neues .d64 angelegt mit deinem Programm drin.


    2)

    Du willst das BASIC-File in ein existierendes .d64 schreiben, aber die bereits vorhandene Datei soll ersetzt werden. Das ist aufwändiger, das muss man über Build Events lösen.


    Rechtsklick auf das .bas-File im Solution Explorer, Reiter "Build Events".

    Build Event "Post Build" auswählen.

    So etwas eintragen:

    $(MediaManager) -d64 output.d64 -delete TEST

    $(MediaManager) -d64 output.d64 -import $(BuildTargetFilename) -renameto TEST


    Das löscht eine vorhandene Datei "TEST" und (re-)importiert das Ergebnis als "TEST" neu. Ein nicht vorhandenes output.d64 wird neu angelegt.


    Damit der Emulator auch mit dem output.d64 aufgerufen wird, im Reiter "Debug" als "Debug File" dann output.d64 angeben, und als "Debug File Type" D64 Disk Image.

    Der erste Editor gefällt mir überhaupt nicht, so wie er konstruiert ist, - und - die beiden weiteren Entwicklungsumgebungen haben zwar hilfreiche integrierte Tools, aber sind sehr proprietär (kein Open-Source) mit unschönen Limitierungen.

    Einspruch: Noch Open-Sourcer als C64Studio geht gar nicht: https://github.com/GeorgRottensteiner/C64Studio

    Eine richtig freie Lizenz dran.


    Welche Limitierungen sind das denn?


    JohannDark: Welche Meldungen hat ACME denn ausgespuckt?

    Ich lege extra schon beim Schreiben temporär eine neue Datei an und benenne die erst um, wenn das alles durch ist.

    Insofern verwundert es mich, wie die verschwinden konnte.


    Ein Gedanke wäre, zumindest nach dem Speichern eine Kopie als Backup zurückzulassen. Je nachdem, was man alles eingestellt hat, kann das schon richtig lästig werden.

    Huch, das klingt nach verschwundener Settings-Datei!

    Das würde mich auch interessieren, wie das passiert ist. Möglicherweise war beim Start ein Fehler in der Datei.

    Oder hast du evtl. lokal eine settings.dat-Datei liegen? Dann geht C64Studio in den Portable-Modus. Dann genügt möglicherweise schon das Löschen der lokalen Datei und es greift wieder die globale in %APPDATA%


    Du kannst die Farben auf jeden Fall auf Default stellen lassen. Ist nicht ganz das Gleiche, aber ein Anfang.

    Prüf bitte sicherheitshalber, ob die Tokens von C64Studio sauber tokenisiert werden. C64Studio lädt die Token-Files einmal beim Starten rein. Änderungen danach sieht es nicht.

    Im Sample-Projects-Ordner sind ein paar Projekte, zum Beispiel "Include Map" wäre hier etwas.


    Da wird ein Zeichensatz eingesetzt mit


    ;place the charset data at $3000

    * = $3000

    !media "sample.charsetproject",CHAR



    Das hat den Vorteil, dass du einfach im Projekt malen kannst, Rebuild und es ist drin.


    Dieses eine Projekt benutzt auch noch ein Map-Projekt, wo ein Screen aus Tiles zusammengebaut wird.