Mein Programm möchte wissen, auf welchem Rechner es läuft.
Gibt es eine Möglichkeit, c64 breadboard und c64c über eine Basic-Abfrage, e.g. peek() zu unterscheiden?
Anscheinend sind wohl nur die SID-Chips unterschiedlich.
You need to be a member in order to leave a comment
Already have an account? Sign in here.
Sign In NowSign up for a new account in our community. It's easy!
Register a new accountMein Programm möchte wissen, auf welchem Rechner es läuft.
Gibt es eine Möglichkeit, c64 breadboard und c64c über eine Basic-Abfrage, e.g. peek() zu unterscheiden?
Anscheinend sind wohl nur die SID-Chips unterschiedlich.
Ein Erkennen des SIDs per Software geht wohl nur bei Nachbauten.
? PEEK (65408) ergibt 170 (V1) oder 0 (V2) bei älteren KERNAL-Versionen und 3 (V3) bei neueren (C64C/G) ob das wirklich genau ist?
Ich habe mal die KI befragt die meint:
10 S=54272:REM SID BASIS
20 FOR I=0 TO 24:POKE S+I,0:NEXT:REM RESET
30 POKE S+14,255:POKE S+15,255:REM FREQUENZ VOICE 3 MAX
40 POKE S+18,33:REM MIX: SAEGEZAHN + DREIECK + GATE
50 FOR I=1 TO 500:V=PEEK(S+28):IF V>0 THEN GOTO 100
60 NEXT I
70 PRINT "ERGEBNIS: MOS 6581 (OLD SID)"
80 PRINT "GRUND: KEIN SIGNAL BEI WELLEN-MIX (TYPISCH 6581)":END
100 PRINT "ERGEBNIS: MOS 8580 (NEW SID)"
110 PRINT "GRUND: STABILES LOGISCHES 'AND' ERKANNT"
funktioniert zumindest im Vice nicht.
Ich denke das BASIC auch zu langsam ist.
Geht auch auf dem Rechner nicht.
Ich habe es mal damit probiert:
base:detecting_sid_type_-_safe_method [Codebase64 wiki]
Leider auch kein zuverlässiges Ergebnis!
Geht auch auf dem Rechner nicht.
Ich habe es mal damit probiert:
https://codebase64.net/doku.php?id=ba…e_-_safe_method
Leider auch kein zuverlässiges Ergebnis!
Auf dem basiert der BASIC Code denke ich.
Ich bin mit der oben zitierten Methode nun doch zum Ziel gekommen! Das Ergebnis ist 3 für den 6581 und 2 für den 8580 SID Chip.
Don’t have an account yet? Register yourself now and be a part of our community!