Open pdr0663 opened 6 months ago
Hi Paul,
Sorry for the delay in responding. I'm slowly releasing the schematics as part of this https://www.youtube.com/watch?v=mo9VvPProoY series.
With regards to the initializing maxStep to 24, that is where the reset code sits. Locations 0-23 are for the instruction itself, but each instruction has a copy of the reset code which starts at 24.
Hope that helps
Regards Matt.
On Wed, May 15, 2024 at 10:55 AM pdr0663 @.***> wrote:
Dr Matt,
Thanks for your series on the 6502. As a hobby, I'm designing my own processor, and I'm learning from your code here, how to generate the microcode. You have some schematics here, but I can't see the full schematics to which the code applies. Can you publish the complete set here?
I'm also intrigued as to why the g_maxStep array is initialized with "24" (0b11000). There are a number of instructions with more that 8 microcode steps, so this 5-bit quantity will extend to 6 bits, and the preset ones will change. Is that intentional? What is the purpose of pre-setting these bits? I also can't quite follow how you deal with the flags. I'd imagine that the flags would be inputs to the control ROM, and each microcode step would need to be extended across possible flag values.
Paul
— Reply to this email directly, view it on GitHub https://github.com/Turing6502/SAP6502/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/AW74L33ZRH4CSWGDTAHJADDZCKXAPAVCNFSM6AAAAABHXFHOEKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGI4TMNRUG4YTMNI . You are receiving this because you are subscribed to this thread.Message ID: @.***>
Dr Matt,
Thanks for your series on the 6502. As a hobby, I'm designing my own processor, and I'm learning from your code here, how to generate the microcode. You have some schematics here, but I can't see the full schematics to which the code applies. Can you publish the complete set here?
I'm also intrigued as to why the g_maxStep array is initialized with "24" (0b11000). There are a number of instructions with more than 8 microcode steps, so this 5-bit quantity will extend to 6 bits, and the preset ones will change. Is that intentional? What is the purpose of pre-setting these bits? I also can't quite follow how you deal with the flags. I'd imagine that the flags would be inputs to the control ROM, and each microcode step would need to be extended across possible flag values.
Paul