Sauhund, du hast doch mal eine Schnittstelle angekündigt vom RomBasic zum cc65.
Gibt es da schon etwas neues? Oder geht es mit dem cc65 nicht.
mfg
Du bist in Begriff, Forum64 zu verlassen, um auf die folgende Adresse weitergeleitet zu werden:
Bitte beachte, dass wir für den Inhalt der Zielseite nicht verantwortlich sind und unsere Datenschutzbestimmungen dort keine Anwendung finden.
letzter Beitrag von sauhund am
Sauhund, du hast doch mal eine Schnittstelle angekündigt vom RomBasic zum cc65.
Gibt es da schon etwas neues? Oder geht es mit dem cc65 nicht.
mfg
Man man man man man man man
Ich glaube, selbst Sauhund schüttelt sowas nicht innerhalb 4 Nächte aus dem Ärmel.
Ich glaube, selbst Sauhund schüttelt sowas nicht innerhalb 4 Nächte aus dem Ärmel.
Theoretisch vielleicht schon, aber praktisch hat er sicher auch was anderes zu tun.
lol also
a) hab ich garnix "angekündigt" ich hab gesagt ich bastel grad an nem wrapper für die floating point routinen. alles andere im basic rom werde ich fein weiter ignorieren, da es meiner meinung wenig sinn macht irgendwelche der basic befehle direkt aufzurufen, ausser vielleicht mal bei nem vereinzelten supersonderfall den man aber auch dann nicht mit so nem generischen wrapper erschlagen kann und will. und besagten wrapper werde ich dann irgendwann mal posten, rechne aber eher nicht so bald damit
b) wenn du wirklich meinst sowas zu brauchen, ist das wie dir ja auch schon mehrere erklärt haben kein hexenwerk, WENN du dich denn auch mal damit beschäftigst. allerdings muss man dazu die runtime von cc65 und c allgemein zumindest rudimentär verstehen, sonst wird das nix. das kommt sicher auch noch irgendwann mal, eher gegen ende, von skoes erklärerei dran. jetzt hier irgendwelchen fertigen code für irgendeine einzelne funktion zu posten halte ich für wenig sinnvoll solange nicht das wissen da ist das nötig ist um solch ein beispiel dann für andere funktionen umzustricken.
ch hab gesagt ich bastel grad an nem wrapper für die floating point routinen. alles andere im basic rom werde ich fein weiter ignorieren, da es meiner meinung wenig sinn macht irgendwelche der basic befehle direkt aufzurufen
Befehle machen wirklich keinen Sinn. Wer will schon POKE, FOR oder PRINT aufrufen. Aber alle Funktionen machen auf jeden Fall Sinn: +,-,*,/,Sin(), Cos(),Tan(),Rnd(),Ti(),Ti$() ...
Was aber schon einen gewissen Reiz haben könnte, das ist ein GOSUB Wrapper für CC65. Man könnte kleine, feine Basic Lösungen als eine Sammlung von Unterprogrammen halten und per CC65 aufrufen ...
Verstehe ich das richtig? Sowas wie Inline-Basic im c-Quelltext?
Kannst Du ein Beispiel nennen, wo das in Deinen Augen Sinn machen könnte?
Verstehe ich das richtig? Sowas wie Inline-Basic im c-Quelltext?
Inline Basic wird nicht gehen, dann müsste man einen Tokenizer implementieren und es würde zuviel Platz brauchen.
Ich denke an ein cc65 Programm was für eine höhere Adresse kompiliert wird, zb. ab $6000 bis $e000. Man könnte so beliebige kleine Basic Programme nachladen (Variablen Obergrenze auf $6000 + NEW).
Ein kleine Routine im Kasettenpuffer blendet das Basic ROM ein, ruft den Basic Interpreter auf und startet das Basic Unterprogramm. Nach der Rückkehr wird das ROM wieder ausgeblendet und zum CC65 Programm zurückgekehrt.
-------
Man müsste "nur" die ChrGet Pointer setzen auf die richtige Zeilennummer. Dau könnte müsste man sich nur von $0801 an Zeile für Zeile durchhangeln.
Vielleicht geht es sogar noch einfacher, die GOSUB Routine im ROM sucht sich ja auch die Zeile schon selber.
Für die meisten BASIC-Routinen macht so ein Wrapper schon allein deswegen keinen Sinn, weil der Wrapper oft größer wäre, als wenn man die Routine gleich komplett selber machen würde.
POKE, FOR oder PRINT
Das gibt es schon beim cc65 als Erweiterung.
mfg
a) hab ich garnix "angekündigt" ich hab gesagt ich bastel grad an nem wrapper für die floating point routinen. alles andere im basic rom w...
Ich dachte dieses ist mal eine Herausforderung für die Spezialisten.
Warum sieht man das von der toternsten Seite, ist doch alles nur Hobby.
Mit uns kann man eh draussen nichts mehr richtig anfangen. Also hier austoben.
allerdings muss man dazu die runtime von cc65 und c allgemein zumindest rudimentär verstehen, sonst wird das nix.
Warum soll man dann nicht die Spezialisten fragen?
Ich kann auch nur da helfen wo ich kann. Nicht hier, aber im sozialen Bereich(obdachlose betreuen, Frühstück ausgeben für sozial Schwache usw). Ich möchte auch nicht allzuweit einsteigen in "C", man kann zwar alles essen, man braucht aber nicht alles zu Wissen.
mfg
POKE, FOR oder PRINT
Das gibt es schon beim cc65 als Erweiterung.
Hab ich nicht geschrieben dass diese Befehle keinen Sinn machen ...
POKE, FOR oder PRINT
Das gibt es schon beim cc65 als Erweiterung.
Das sind aber nur Makros und keine Erweiterungen, und wie Diddl sagte: Macht auch keinen Sinn. Wer C lernen will, sollte sich nicht mit Makros abgeben, die C wie BASIC aussehen lassen, zumal diese nur Einschränkungen gegenüber den dadurch versteckten C-Konstrukten bieten.
Also:
FOR I=1 TO 10 ... NEXT I sollte sein: for (i=1;i<=10;i++) { ... }
POKE (A, B) sollte sein: *A = B;
B = PEEK (A) sollte sein: B = *A;
Für die meisten BASIC-Routinen macht so ein Wrapper schon allein deswegen keinen Sinn, weil der Wrapper oft größer wäre, als wenn man die Routine gleich komplett selber machen würde.
Was macht auf dem c64 schon Sinn, nur spass an der Freude wenn es klappt, ich hab sie wenigstens wenn das programm klappt,
mfg
Was macht auf dem c64 schon Sinn, nur spass an der Freude wenn es klappt.
Sinn ist halt relativ. Aber dennoch ist das erste was man am C64 macht, wenn man nicht gerade BASIC oder I/O macht: Alle ROMs abschalten. Da ist eh kaum etwas brauchbares drin.
Das gibt es schon beim cc65 als Erweiterung.
... eben so eine Makromanische Beigabe
An deiner Aussage sieht man schon wie verkniffen du das Siehst ...Es ist keine Erweiterung... prost Mahlzeit....
Ernst geh bei Seite, der Spass kommt.
mfg
Da ist eh kaum etwas brauchbares drin.
Eben manche schalten zu Früh ab....
mfg
Du solltest dich lieber mit den Hardwareregistern anstelle der ROM-Inhalte auseinandersetzen. Davon hat man eindeutig mehr.
Kannst Du ein Beispiel nennen, wo das in Deinen Augen Sinn machen könnte?
Bei den Tollen Grafikkroutinen vom Plus4. Wer diese kennt weiss was das heisst Grafik auf dem 8Bitter.
Beim c64 kannst noch niche mal enen Punkt setzen.
Ich kenn zb auf dem c64 nur Programmierer von Programmen, wo ein Rasterlinienprogramm das andere jagt, wie eintönig.
Darum soll mir einer helfen dahin zukommen.
Also mir sind tausende von Demos mit Punkten, Linien, gefüllten Flächen etc etc bekannt. Nur weil etwas nicht im ROM ist, heisst das noch lange nicht, dass die Maschine das nicht kann.