Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
boards:sbc:mpu302 [2025/05/16 07:36] – Revision from 2025-05-16 boards:sbc:mpu302 [2026/06/15 12:32] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +/* Imported from Wayback Machine
 +   Original URL : https://retrobrewcomputers.org/doku.php?id=boards:sbc:mpu302
 +   Snapshot date: 2026-01-20
 +   Generator    : wayback-archiver
 +*/
 +
 +====== MPU302, Repurposed SPX MPU board for CP/M-68K ======
 +
 +[[https://www.retrobrewcomputers.org/lib/exe/fetch.php?tok=cf6313&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/plasmo/cpm68k_mpu302/dsc_29550813.jpg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/plasmo/cpm68k_mpu302/dsc_29550813.jpg?600|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_plasmo_cpm68k_mpu302_dsc_29550813.jpg}}]]
 +
 +A detailed writeup about the reverse engineering of MPU302 is published on [[https://hackaday.io/project/28504-reverse-engineering-soneplex-spx-mpu-sbc|Hackaday]]
 +
 +===== Guide for operating CP/M68K v1.3 on MPU302 =====
 +
 +==== Powering up ====
 +
 +Powering the board requires a 25-pin [[boards:sbc:mpu302:db25nullmodem|null modem cable]] between the CRAFT connector and a PC. Set baud rate to 38400, 8N1, RTS/CTS hardware handshake.
 +
 +Hook up 5V & ground to the points indicated by the arrows. The '+5V' arrow points to a gold-plated wire-wrap post soldered to the banded end of the capacitor. The power consumption is about 250mA.
 +
 +[[https://www.retrobrewcomputers.org/lib/exe/fetch.php?tok=18614a&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/plasmo/cpm68k_mpu302/power_up.jpg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/plasmo/cpm68k_mpu302/power_up.jpg?600|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_plasmo_cpm68k_mpu302_power_up.jpg}}]]
 +
 +Immediately at power on, this message (**bold**) will be displayed:
 +
 +**AMBug v2.07a–Hardware handshake with CTS/RTS, 8/30/2017\\
 +RAM at $0 and alias at $200000, boot ROM at $600000. Type “he” for help\\
 +>**
 +
 +The front panel LED will alternate between red-orange-green once every second. At this point the AMbug monitor is running.
 +
 +To boot CP/M68k, type 'bo' at > prompt, and this message will be displayed:
 +
 +**Boot CP/M 68K v1.3 CP/M-68K V1.3 COPYRIGHT (C) 1982, 1984, 1985 Digital Research A>**
 +
 +There are 3 “disks” on the board:
 +
 +Drive A contains the CP/M68K v1.3 distribution files, Drive A resides on flash and is read only.
 +
 +Drive B contains the BASIC compiler and associated BASIC library. Drive B also reside on flash and is read only.
 +
 +Drive C resides on super-capacitor-backed RAM. It is read/write-able.
 +
 +Content of Drive A:
 +
 +<code code>
 +A: CPM      REL : SD       REL : CPM      SYS : DDT68000 68K : README   TXT
 +A: CB68     68K : AS68INIT     : CLIB         : CLINK    SUB : CLINKE   SUB
 +A: CLINKF   SUB : LIBE       : LIBF       : S        O   : ASSERT   H
 +A: CTYPE    H   : ERRNO    H   : MORE       : OPTION     : OSATTR   H
 +A: OSIF       : OSIFERR  H   : PORTAB     : CB68     L68 : SETJMP   H
 +A: SIGNAL     : STDIO    H   : C        SUB : CE       SUB : FORMAT   S
 +A: INIT       : LOADR    O   : OVHDLR     : TERM       : TERMA    S
 +A: XFER86     : BDOS       : BIOS       : BIOS       : BIOSA    O
 +A: BIOSA    S   : BIOSTYPS H   : BOOTER     : BOOTER     : CBIOS    S
 +A: CONFIG     : ELDBIOS  S   : ERGBIOS  S   : LDBIOS     : LDBIOSA  O
 +A: LDBIOSA  S   : LOADBIOS H   : LOADBIOS SUB : NOBIOSHI S   : NOBIOSLO S
 +A: NORMBIOS H   : NORMBIOS SUB : PUTBOOT  S   : VT52       : VT52     O
 +A: CB68     DOC : SHORT    BAS : ASCIIART BAS : CPMLDR   SYS : CPMLIB
 +A: LCPM     SU  : LCPM10   SUB : LDRLIB       : MAKELDR  SUB : RELCPM   SUB
 +A: RELOC    68K : PIP      68K : INIT     68K : COPY     68K : STAT     68K
 +A: DDT      68K : AS68     68K : DUMP     68K : LO68     68K : ED       68K
 +A: CP68     68K : AR68     68K : FIND     68K : MORE     68K : NM68     68K
 +A: C068     68K : C168     68K : LINK68   68K : SENDC68  68K : SIZE68   68K
 +A: XFER86   68K : FORMAT   68K : TERM     68K : CONFIG   68K : PUTBOOT  68K
 +A: AS68SYMB DAT
 +</code>
 +
 +Content of drive B:
 +
 +<code code>
 +B: CONC     SUB : CLINKONC SUB : BASIC    SUB : BLINK    SUB : SETUPC   SUB
 +B: ME       TXT : ME       68K : ASM      SUB : GKERMIT  68K : NEWSIZE  S
 +B: FCOMP    S   : FCOPY    S   : TPALEN     : GKREADME TXT : BIOS     H
 +B: ED         : PORTAB     : STDIO    H   : BIOS     S
 +</code>
 +
 +Drive C: is a RAM disk. It's content is preserved with super capacitor for at least a week. After a week of inactivity, it may need to be initialized with
 +
 +**init c:**
 +
 +===== Software updates =====
 +
 +Software changes fairly often, so this is a dedicated page for [[boards:sbc:mpu302:mpu302updates|software updates]].
 +
 +===== Documentation =====
 +
 +==== Schematics ====
 +
 +SPX-MPU is a 6-layer pc board with power/ground layers in the middle. On some pc boards it is easy to see the inner layers clearly. This is how schematics are derived:
 +
 +Remove all components.
 +
 +Take high resolution photos of the bare board, component side and solder side.
 +
 +Overlay the component layer with the solder layer in Photoshop
 +
 +Manually trace the signals, switching layer in Photoshop as the trace switches side. Use continuity meter to verify connections where needed.
 +
 +There are two sheets of C size schematics and one size B schematic. Please note these are schematics of the original pc board. They do not reflect subsequent engineering changes.
 +
 +[[https://retrobrewcomputers.org/lib/exe/fetch.php?media=builderpages:plasmo:spx-mpu:adc_mpu_scm.pdf|CPU/memory]] schematic (updated 11/25/17),
 +
 +[[https://retrobrewcomputers.org/lib/exe/fetch.php?media=builderpages:plasmo:spx-mpu:adc_io_scm.pdf|I/O schematic]] (updated 11/25/17).
 +
 +[[https://retrobrewcomputers.org/lib/exe/fetch.php?media=builderpages:plasmo:spx-mpu:adc_reset_scm.pdf|Reset logic schematic]] (updated 11/25/17).
 +
 +==== Connector Definitions ====
 +
 +[[builderpages:plasmo:spx-mpu:mpuconn:db25f|DB25F]] (CRAFT) connector located at the front panel
 +
 +[[builderpages:plasmo:spx-mpu:mpuconn:din96|96-pin DIN41612]] connector
 +
 +[[builderpages:plasmo:spx-mpu:mpuconn:array4x16|4×16 array]] test pads (note: this is an array of solder pads, 4 rows by 16 columns, located next to the hexadecimal rotary switch)
 +
 +==== Engineering Changes ====
 +
 +There are three groups of engineering changes to the original SPX-MPU board.
 +
 +=== Backup AMbug Monitor ===
 +
 +The board contains two AMbug monitors. The primary one resides on a pair of 29F010 flash, UB2, UB3. The backup monitor reside on the first sector (128K byte sector) of UD3, UE3. If the primary monitor is corrupted, the backup monitor can be activated by unsoldering and swapping two existing jumper wires as shown below. (A procedure on how to reprogram the primary AMbug will be written…)
 +
 +[[https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=builderpages:plasmo:cpm68k_mpu302:backup_debugger.jpg|{{builderpages:plasmo:cpm68k_mpu302:backup_debugger.jpg?600x310|backup_debugger.jpg}}]]
 +
 +=== Enable CP/M-68K ===
 +
 +Hardware handshake engineering changes are not necessary with AMbug version 2.07c
 +
 +=== Enable hardware expansion ===
 +
 +[[https://www.retrobrewcomputers.org/lib/exe/fetch.php?tok=c6292c&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/boards/sbc/mpu302/cpm_no10_ecide_comp.jpg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/boards/sbc/mpu302/cpm_no10_ecide_comp.jpg?400x453|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_boards_sbc_mpu302_cpm_no10_ecide_comp.jpg}}]]
 +
 +Two engineering changes are required to enable expansion board to the 96-pin DIN41612 connector:
 +
 +5V power to the spare pin B32
 +
 +Lower resistance of the control port.
 +
 +===== Expansion Daughterboard =====
 +
 +{{[[lib:plugins:ckgedit:fckeditor:userfiles:image:boards:other:idecf2din:dsc_30871016.jpg]] IDE daughterboard. The CF IDE daughter board plugs into the DIN41612 connector. The BIOS detects the presence of the daughterboard and will enable 4 8-megabyte drives (drive D: thru G:). The number and size of the drives can be easily changed with an updated BIOS. More information on the CF IDE daughterboard can be found [[boards:other:idecf2din:start|here]].
  
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0