Building a Homebrew 8088 Computer Part 2

The 0: at the top shows the segment, which is 0x0000. On lines 2-4, the four left-most digits are the offsets. Everything to their right is memory.

Click here for the GitHub repository.

The pictures here were taken before I completed the current version. As you can see, it had a premature version number in the picture, and it doesn’t show the full screen of memory contents.

It shouldn’t have taken me nearly this long, but I finally got around to posting the code for MemDump, a program I wrote for my 8088 computer (back in July, last year *eyeroll*) to display the contents of memory. I have used it extensively so far to see if my interrupts and Interrupt Vector Table (IVT) are installed correctly in low memory. It displays the title, and current segment of memory on the first line. Lines 2-4, it displays the 4 hex characters of the offset, and then 16 characters of memory to the right of the offset.

Here you can see the larger system as a whole.

Due to the small limitations of the 20×4 line LCD screen, I had to cram a lot of information into a small space. I would have liked to have inserted a space or some delimiting character between the right-most character of the offsets and the 16 hexadecimal characters of the memory on the right.

However, I did not have a space to spare, and I didn’t want to decrease the number of hex characters per line, since 16 is a nice number, so I left it.

The final goal is to have it scroll up or down when the user presses the up or down arrows. I haven’t decided if I will limit the program to a maximum of 64 KB, which is the maximum memory per segment, or if I will make it automatically update the segment as the user scrolls past its boundaries.

I plan on releasing the schematics and an update on my 8088 project soon. Right now, this program will only run on my computer, but with the schematics, others will be able to build a compatible model.

Leave a Reply

Your email address will not be published. Required fields are marked *