Difference between revisions of "Z80 in 3 Chips"

From Land Boards Wiki
Jump to navigation Jump to search
Line 99: Line 99:
  
 
[[file:EightBitFrontPanel720px.JPG]]
 
[[file:EightBitFrontPanel720px.JPG]]
 
* Card waits on USB connection
 
* Run PuTTY
 
** Baud rate is auto-detected by PSoC
 
* LEDs are cycled
 
* Message
 
<pre>
 
Z80_PSoC - Running Front Panel
 
 
SW25 SW26 SW27 SW28 SW29 SW30 SW31 SW32
 
Run  Mon  N/A  N/A  N/A  LDAD STOR INCA
 
 
SW17 SW18 SW19 SW20 SW21 SW22 SW23 SW24
 
A15  A14  A13  A12  A11  A10  A9  A8
 
 
SW9  SW10 SW11 SW12 SW13 SW14 SW15 SW16
 
A7  A6  A5  A4  A3  A2  A1  A0
 
 
SW1  SW2  SW3  SW4  SW5  SW6  SW7  SW7
 
D7  D6  D5  D4  D3  D2  D1  D0
 
 
Press SW25 (upper left button) to exit Front Panel and run Z80
 
Press SW26 to run Monitor/Test Code</pre>
 
* After PuTTY is running, card boots into Front Panel Control
 
* SRAM can be examined/changed in SRAM from the Front Panel
 
* Options to run Z80 or PSoC Monitor
 
** SW32 (Upper right) = Increment address, read
 
** SW31 = Store data, increment address, read data
 
** SW30 = Load Address, read memory
 
** SW29 = TBD
 
** SW28 = TBD
 
** SW27 = TBD
 
** SW26 = Run Monitor
 
** SW25 (Upper Left) = Run Z80
 
  
 
=== Z80_PSoC Monitor ===
 
=== Z80_PSoC Monitor ===

Revision as of 09:27, 7 September 2022

Features

Z80 P865-cropped-720px.jpg

  • Z80
    • 12.5 MHz operation
  • 512KB SRAM
  • PSoC5LP
    • Z80_PSoC Datasheet - generated from PSoC Creator
    • PSoC5 LP emulates standard Z80 peripheral chips
      • Serial port with USB
    • Memory Management Unit (MMU)
      • Controls 512KB SRAM
    • Loader moves EPROM code to SRAM
    • Controls CPU reset
  • Optional MCP23017 16-bit port expander
    • I2C Addresses 0x24
  • Optional Front Panel
    • I2C Addresses 0x20-0x23
  • SPI interface for SDHC card

Stackup (top to bottom)

Z80 PSOC P936-CROPPED-720PX.jpg

Connectors

H1 - I2C Interface

  • Connects to Front Panel Card via I2C

Conn H1.PNG

H2 - ISP Download

  • Connects to PSoC programmer

Conn H2.PNG

H3- Serial Port or SPI (SD Card)

Conn H3.PNG

H4 - I/O

Conn H4.PNG

J1 - USB B

  • 5V card Power
  • USB to Serial comm port

J2, J3 - I/O Ports

  • J3 connects to JOYPAD on GPA connector

Conn J2 J3.PNG

J4 - Audio Out

  • DAC is the Analog function generator in the PSoC

Conn J4.PNG

J5 - Z80 Signals

  • Useful for monitoring the CPU lines

Conn J5.PNG

Software

Configuration

  • Hardware/Software options are set in the PSoC "Hardware_Config.h" file

Operation

  • Card

Front Panel

EightBitFrontPanel720px.JPG

Z80_PSoC Monitor

Land Boards, LLC - Z80_PSoC monitor
I - Initialize SD Card
B - Blink LED
F - Read Front Panel
Rxxxxxxxx - Read sector xxxxxxxx from the SD Card
N - Read next sector from the SD Card
W - Write to the SD Card at 2GB - 1 sector
X - eXit Monitor and run Z80
? - Print this menu
  • Type to check the SD card
R4000
  • Result:

Z80 PSoC Monitor D Command.PNG

  • Type X to exit and run Z80

Multiboot Multicomp (MULTIBOOT_CPM)

  • CP/M Multiboot - Runs MultiComp 512KB SRAM version
  • Insert "M/CPM 512KB" SD card
  • Insert USB B cable
  • Run PuTTY
    • 115,200 baud
  • Card will power up and cycle through all the LEDs on the Front Panel
  • Press SW25 (upper left button) on Front Panel For 8 Bit Computers to run Multiboot software
  • PuTTY will display
Press [SPACE] to activate console
  • Press SPACE
  • Press H for help menu
>
  Available Commands:

  :ccxxxxiibbbbbb       Load Intel-Hex file record
  Rxxxx         Run from address xxxx
  Sddd          System boot
  Iddd          Init: Format directory
  Pddd[,xxxx]   PutSys: write system image[,loadaddress]
                (No address: re-use last loadaddress)
  Gddd[,xxxx]   GetSys: load system track

  Dxxxx[,yyyy]  Dump memory from xxxx [,to yyyy]
                D (no address) shows next block
  Cxxxx         Change/show memory at xxxx
                CR advances "," quits

  ddd is a decimal volume number,
  xxxx, yyyy is a hexadecimal address.
  Leading zeros may be omitted.
  ESC or ^C aborts.

Mount Primary Volume

Mount Additional Volumes

  • Mount additional drives using mount command
    • mount d vol
      • Ex: mount b: 9 will mount ZCPR3 Utilities A-O as drive b:
      • Can (re-)mount different volume to same drive with same command
  • Additional Volumes

Z80 BASIC Ver 4.7b

Running Grants Code scaled.png

Reference Designs

Hackaday Page

Videos

Assembly Sheet