(no title)
ajenner | 5 years ago
"000" - this is just a line number "A CD F H J L OPQR U" - these are the actual bits from the ROM. "R -> tmpb" - this is a move operation (each microcode instruction can do a move as well as something else) copying the value from "R" (a register described by the word length bit and either the R field or the RM field of the modrm byte depending on the direction bit) to "tmpb" (an internal register not accessible from the user-level ISA). "4 none WB,NX" - a type 4 instruction (bookkeeping) that tells the CPU that the next instruction is the last one in the microcode burst (NX) unless a write back (WB) to memory is needed. "0100010??.00" - this is the bit pattern by which this line of microcode is addressed. This one means opcodes 0x88-0x8b. "MOV rm<->r" - a comment added to say what this set of opcodes actually corresponds to x86 assembler, or what it does if it's a subroutine.
bogomipz|5 years ago
One last question do the individual files. There seems to be 3 distinct file groups:
0b.txt - 8t.txt
l0.txt - l3.txt
r0.txt-r3.txt
Do each of these represent different ROMs or different logical parts of the two ROMs? Or am I reading too much into the naming convention?
By the way - brilliant work. This is really a fascinating read.
ajenner|5 years ago
Thanks - glad you enjoyed it!