Einzelnen Beitrag anzeigen
  #50  
Alt 26.01.2021, 11:34
bataais bataais ist offline
SPARC
 
Registriert seit: 01.10.2013
Beiträge: 238
Abgegebene Danke: 129
Erhielt 309 Danke für 132 Beiträge
Aktivitäten Langlebigkeit
0/20 11/20
Heute Beiträge
0/3 ssssss238
AW: Erkennung Saitek C, D, D+ und D++

Die Version D++ gab es scheinbar nur inoffiziell, und nur als Modul.

In einem ROM-Vergleich zwischen D+ und D++ zeigt sich, dass nur 7 bytes geändert sind (1 davon Checksum).

Im Netz wurde das mal genauer in Assembler untersucht, leider nicht mehr auffindbar, hab mir damals aber eine Notiz gemacht..:


Code:
Start Address: 1612h

D++
0000   A5 4D      LDA $4D
0002   C5 CD      CMP $CD
0004   90 07      BCC $000D
(If the C flag is 0, then A (unsigned) < NUM (unsigned) and BCC will branch)

D+
0000   A5 CD      LDA $CD
0002   C5 4D      CMP $4D
0004   B0 07      BCS $000D
(If the C flag is 1, then A (unsigned) >= NUM (unsigned) and BCS will branch)


    CMP NUM		Compare sets flags as if a subtraction had been carried out. If the value in the accumulator is equal or greater than the compared value, the Carry will be set.

is very similar to:

    SEC			set carry flag
    SBC NUM		Subtract memory from accumulator with borrow; A - M - C -> A


 A surprisingly common sequence in 6502 code is:

    LDA NUM1
    CMP NUM2
    BCC LABEL
    BEQ LABEL

(or something similar) which branches to LABEL when NUM1 <= NUM2. (In this case NUM1 and NUM2 are unsigned numbers.) However, consider the following sequence:

    LDA NUM2
    CMP NUM1
    BCS LABEL

which branches to LABEL when NUM2 >= NUM1, which is the same as NUM1 <= NUM2. Not only that, it's shorter and (in many cases) faster.
Ich habe nun die Änderungen in den Turbo King II und Corona II ROMs eingebaut, und sie funktionieren im CB-Emu.

Auch Micha's Stellungstest bestehen sie mit der Lösezeit für D++.
(Jedoch spielt Corona II noch einen anderen Zug zuerst, scheint eine ältere D+ als TKII zu sein.)

Bei Interesse könnte ich die geänderten ROMs hier publizieren und Franz/hap könnten sie in die Emu's einbauen

Gruss,
bataais
Mit Zitat antworten
Folgende 3 Benutzer sagen Danke zu bataais für den nützlichen Beitrag:
berger (29.07.2022), germangonzo (26.01.2021), mclane (27.01.2021)