-
A new PCB is on its way
05/30/2018 at 16:29 • 1 commentI have reworked the Alpha PCB - some errors are fixed, the system bus connector is added. The batch of 10 pieces should arrive next week...
-
New monitor for Alpha
05/26/2018 at 09:55 • 0 commentsToday I have added the MON85 monitor by Dave Dunfield. Not the original one, but the improved version by Roman Borik.
You can find all of the source codes and ready made images on GitHub.
MON85 improvements:
- Support for undocumented 8085 instructions DSUB B, ARHL, RDEL, LDHI d8, LDSI d8, LHLX D, SHLX D, JNK a16, JK a16, RSTV
- Command R displays all flags of F register (SZKA3PVC). If flag is not set dash '-' is displayed.
- Added restart vector RST 8 (0040h) for possibility to handle RSTV call.
- Changed TRACE mode. After entering TRACE mode, instruction on actual PC and content of registers (if it is switched on) are displayed. Entering a space ' ' executes this instruction, and returns to the 'T>' prompt with the next instruction.
- Instructions LXI, DAD, INX, DCX displays argument 'SP' rather than 'S'.
- Commands that requires 1 byte parameter raises error if entered value not fit to 1 byte.
- Command 'C' checks overlap of source and destination block and for copying uses appropriate direction.
- Command 'F' checks <start> and <end> parameters and raises error, if <end> is lower than <start>.
- Added command 'H' to send out memory content in Intel HEX format.
- Sending of LF and CR characters were reversed and are sent in the usual order - CR first and followed by LF.
-
Monitor v3
05/19/2018 at 08:52 • 0 commentsI have added the next version of monitor (v3).
This version has a big feature: you can debug your software via breakpoints and register alteration.
The whole breakpoint magic is done by RST 4 instruction. Monitor command X takes an address, save the value from this address and replace the original instruction by RST 4.
RST 4 led to breakpoint routine, which save all registers, including SP and PC, and returns to the monitor. You can see or alter values of all registers using the command R. After all, press C to continue program...
You can download Monitor v3 from GitHub. There is the source code as well as the bundled version with Tiny Basic (HEX or BIN). Enjoy.
-
A hard day for my PPIs
05/08/2018 at 16:33 • 0 commentsThe goal was simple: blink a LED, connected to PPI 82C55.
The program is straightforward: set all ports to output, change PC7 to 0, wait a moment, change PC7 to 1, wait a moment. Repeat.
But...
At first everything went OK: voltmeter shows me 0 V and 5 V at 1 sec frequency. Then I have connect a LED.
And nothing happened.
PC7 stays at 5V.
Okay, let change PC7 to whole PC port. Blink, blink, voltmeter OK, connect LED... and died. The whole PC port was now dead. Some of pins were 0, some 1.
No short connections. No "Vcc on GND". No such errors. But PPI was dead.
Another chip, everything OK on the voltmeter, so connect wires (not any LED, just wires!), let's measure voltage on the other ends of wires... nothing... dead. The whole PPI seems to be dead!
OMG OMG OMG!
I throwed the NEC 82C55AP to the recyc... okay, not recycle bin, maybe the problem is outside the PPI. So I pulled out older Intersil 82C55, connect it...
... and everything is blinking, flashing and working!
(Programmed in BASIC this time... Isn't it sweet?!)
Two days ago: I pulled out the Intersil one, connected the NEC one, everything is working now... Hooray!