Einzelnen Beitrag anzeigen
  #6  
Alt 10.06.2025, 14:05
fhub fhub ist offline
Lebende Foren Legende
 
Registriert seit: 19.04.2010
Beiträge: 2.879
Abgegebene Danke: 578
Erhielt 7.000 Danke für 1.581 Beiträge
Aktivitäten Langlebigkeit
9/20 15/20
Heute Beiträge
1/3 sssss2879
AW: Re: THE PATCH FOR ALL CHESS COMPUTERS WITH H8 BUG

Hi Mychess,
 Zitat von Mychess Beitrag anzeigen
Question 2 : Both are correct, this byte is a dummy byte for checksum control when you power on the computer.
In the new version, it is modified to take account of the patch for H8 bug.
ok, but there's still one thing that I don't understand with your Fun-level bugfix:
66d0 : 7f 52 72 60 41 50 7f 52 72 70 5a 00 50 62
I've disassambled the code at this address with the debugger and got:
Code:
66D0: 7F52 7260 bclr    #6, @h'ff52
66D4: 4150      bf      h'6726
66D6: 7F52 7270 bclr    #7, @h'ff52
66DA: 5A00 5062 jmp     h'5062
Since I don't understand H8 assembly code I've searched the Internet for the H8 instruction set and found, this 'bf' (at 66D4) means 'branch if false' - but I don't know 'if WHAT is false' (I guess it's usually any condition/compare before this command)!?

Now I wonder why did you put this 'checksum correction' byte(s) 41 50 WITHIN your bugfix code - couldn't it happen that this 'WHAT' condition is indeed false when this code is executed, and in this case the program would jump/branch to an address (6726) with no valid code?
So why didn't you just put these correction bytes (41 50) at the end of your bugfix code, which would definitely never be executed?

Regards,
Franz
__________________
Meine Webseite: https://fhub.jimdofree.com/

Geändert von fhub (10.06.2025 um 14:31 Uhr)
Mit Zitat antworten
Folgende 2 Benutzer sagen Danke zu fhub für den nützlichen Beitrag:
kamoj (10.06.2025), Mychess (10.06.2025)