Hallo,
ich würde gerne mal Eure Kommentare zu folgender Idee hören:
Bei Gelegenheit (momentan eher wenig Zeit, eine Diss wartet) würde ich mich gerne an einer Scheme-Implementierung für den CeVi versuchen. Scheme ist ein Lisp-Dialekt mit dem Vorteil, dass der Standard (http://www.schemers.org/Documents/Standards/R5RS/r5rs.pdf) relativ klein ist (nur 50 Seiten, inklusive formaler Syntax, Referenzen und Index!).
Außerdem ist der Standard relativ flexibel: Er schreibt beispielsweise nicht (wie C) bestimmte Zahlen-Formate vor. Es sollte also möglich sein, eine komplett Standard-konforme Implementierung zu bekommen.
Würde das wohl zunächst als .crt für den Vice versuchen, das BASIC- und Kernal-ROM komplett ersetzt. Wenn ich irgendwann 'n Euro für MMC-Replay oder 1541 Ultimate übrig habe, müsste eine .crt-Datei damit doch auch auf dem Original-CeVi laufen können, oder?
Wenn man das Orginal-Kernal eh' nicht verwendet: Spricht irgendetwas dagegen, die (etwas seltsame) Trennung von PETSCII und Screen-Code aufzuheben und stattdessen durchgehend ISO 8859-15 zu verwenden? Natürlich muss dann das Character-ROM ersetzt werden, aber das ist ja wohl nicht so schwer, habe ich gehört.
An Zahlen-Formaten würde ich – neben den vom CeVi nativ unterstützten 8-Bit signed und unsigned – Integer und Brüche beliebiger Größe (naja, beim C 64 ist der Speicher wohl immer ein spürbares Limit) implementieren wollen. Außerdem braucht man natürlich irgendeine Form von Fix- oder Fließ-Punkt-Arithmetik (laut Standard übrigens nicht unbedingt ...).
I/O (inklusive Disketten-Operationen) kann man auf eine zweite Phase verschieben, erstmal kann man sich ja mit Vice-Snapshots behelfen.
Grüße,
hepta_sean