Update to hardware revision 7 (#176)

* Add jumpers for write protect and EPROMs

* Update to latest hardware revision 7
This commit is contained in:
Terence Boldt 2024-06-24 22:17:50 -04:00 committed by GitHub
parent 1e73e8d886
commit c0243f1e4d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
19 changed files with 57715 additions and 20043 deletions

View File

@ -22,9 +22,10 @@ body:
label: Hardware Version
description: What version of the hardware are you running?
options:
- Seventh Prototype (lastest classic hardware)
- RPi Pico
- Sixth Prototype (lastest classic hardware)
- Fifth Prototype (classic hardware without jumper)
- Sixth Prototype (classic hardware power jumper)
- Fifth Prototype (classic hardware with EEPROM)
- Fourth Prototype (classic hardware with EPROM)
validations:
required: true
@ -34,9 +35,9 @@ body:
label: Firmware Version
description: What version of the firmware are you running? (shown on boot screen)
options:
- 8010 (initial RPi Pico hardware)
- 0010 (classic hardware)
- 000F
- 0011 / 8011 (add clock driver)
- 0010 / 8010 (initial RPi Pico hardware)
- 000F (first version showing firmware rev on boot)
- Older (not shown on boot, pre-2022-Feb-07)
validations:
required: true
@ -46,6 +47,7 @@ body:
label: Driver Version
description: What version of the driver are you running? Check with `RPI a2version`
options:
- 002E (fix driver crash on null drive)
- 002D (add support for RPi Pico hardware)
- 002C (fix nano editor)
- 002B (fix keyboard delay)
@ -67,8 +69,8 @@ body:
label: Shell Version
description: What version of the shell are you running?`
options:
- 800F (initial RPi Pico support)
- 000F (classic hardware support)
- 0010 / 8010 (support latest firmware)
- 000F / 800F (add pico and classic hardware support)
- 000E (fix hang on exit)
- 000D (added version info)
- Older (pre-2022-Mar-01)

View File

@ -1,5 +1,5 @@
## Setup starting from scratch
1. Have PCBs made from [PCBWay](https://www.pcbway.com/project/shareproject/Apple2_IO_RPi_v6_bfa4be82.html) or from the gerber and drill files in the Hardware folder or email me for a blank or fully assembled board
1. Have PCBs made from [PCBWay](https://www.pcbway.com/project/shareproject/Apple2_IO_RPi_v7_65457a66.html) or from the gerber and drill files in the Hardware folder or email me for a blank or fully assembled board
2. Solder chips, header and capacitors in place
3. If you have an EPROM programmer, it is preferred to pre-populate the EEPROM with the contents of AT28C68B.bin
4. Attach Raspberry Pi Zero 2 W facing outward from the card

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,12 @@
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(6.0.2-0)*
G04 #@! TF.CreationDate,2022-03-01T05:34:48-05:00*
G04 #@! TF.ProjectId,Apple2IORPi,4170706c-6532-4494-9f52-50692e6b6963,0.6*
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,8.0.3*
G04 #@! TF.CreationDate,2024-06-18T13:39:18-04:00*
G04 #@! TF.ProjectId,Apple2IORPi,4170706c-6532-4494-9f52-50692e6b6963,0.7*
G04 #@! TF.SameCoordinates,Original*
G04 #@! TF.FileFunction,Soldermask,Bot*
G04 #@! TF.FilePolarity,Negative*
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW (6.0.2-0)) date 2022-03-01 05:34:48*
G04 Created by KiCad (PCBNEW 8.0.3) date 2024-06-18 13:39:18*
%MOMM*%
%LPD*%
G01*
@ -20,12 +20,9 @@ G04 APERTURE LIST*
G04 APERTURE END LIST*
D10*
X187400001Y-119380000D02*
X187400001Y-111760000D01*
X187400001Y-111760000D02*
X122630001Y-111760000D01*
X122630001Y-111760000D02*
X122630001Y-119380000D01*
X122630001Y-119380000D02*
X122630001Y-111760000D01*
X187400001Y-111760000D01*
X187400001Y-119380000D01*
G36*
X187400001Y-119380000D02*
@ -35,11 +32,6 @@ X122630001Y-111760000D01*
X187400001Y-111760000D01*
X187400001Y-119380000D01*
G37*
X187400001Y-119380000D02*
X122630001Y-119380000D01*
X122630001Y-111760000D01*
X187400001Y-111760000D01*
X187400001Y-119380000D01*
G36*
G01*
X184860001Y-118808500D02*
@ -893,4 +885,16 @@ D11*
X117500400Y-107238800D03*
D12*
X117500400Y-104698800D03*
D11*
X178700000Y-74460000D03*
D12*
X178700000Y-77000000D03*
D11*
X187500000Y-74460000D03*
D12*
X187500000Y-77000000D03*
D11*
X183350000Y-74460000D03*
D12*
X183350000Y-77000000D03*
M02*

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,11 @@
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(6.0.2-0)*
G04 #@! TF.CreationDate,2022-03-01T05:34:48-05:00*
G04 #@! TF.ProjectId,Apple2IORPi,4170706c-6532-4494-9f52-50692e6b6963,0.6*
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,8.0.3*
G04 #@! TF.CreationDate,2024-06-18T13:39:18-04:00*
G04 #@! TF.ProjectId,Apple2IORPi,4170706c-6532-4494-9f52-50692e6b6963,0.7*
G04 #@! TF.SameCoordinates,Original*
G04 #@! TF.FileFunction,Profile,NP*
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW (6.0.2-0)) date 2022-03-01 05:34:48*
G04 Created by KiCad (PCBNEW 8.0.3) date 2024-06-18 13:39:18*
%MOMM*%
%LPD*%
G01*

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,12 @@
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(6.0.2-0)*
G04 #@! TF.CreationDate,2022-03-01T05:34:48-05:00*
G04 #@! TF.ProjectId,Apple2IORPi,4170706c-6532-4494-9f52-50692e6b6963,0.6*
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,8.0.3*
G04 #@! TF.CreationDate,2024-06-18T13:39:18-04:00*
G04 #@! TF.ProjectId,Apple2IORPi,4170706c-6532-4494-9f52-50692e6b6963,0.7*
G04 #@! TF.SameCoordinates,Original*
G04 #@! TF.FileFunction,Soldermask,Top*
G04 #@! TF.FilePolarity,Negative*
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW (6.0.2-0)) date 2022-03-01 05:34:48*
G04 Created by KiCad (PCBNEW 8.0.3) date 2024-06-18 13:39:18*
%MOMM*%
%LPD*%
G01*
@ -20,12 +20,9 @@ G04 APERTURE LIST*
G04 APERTURE END LIST*
D10*
X187400001Y-119380000D02*
X187400001Y-111760000D01*
X187400001Y-111760000D02*
X122630001Y-111760000D01*
X122630001Y-111760000D02*
X122630001Y-119380000D01*
X122630001Y-119380000D02*
X122630001Y-111760000D01*
X187400001Y-111760000D01*
X187400001Y-119380000D01*
G36*
X187400001Y-119380000D02*
@ -35,11 +32,6 @@ X122630001Y-111760000D01*
X187400001Y-111760000D01*
X187400001Y-119380000D01*
G37*
X187400001Y-119380000D02*
X122630001Y-119380000D01*
X122630001Y-111760000D01*
X187400001Y-111760000D01*
X187400001Y-119380000D01*
G36*
G01*
X123900001Y-118808500D02*
@ -893,4 +885,16 @@ D11*
X117500400Y-107238800D03*
D12*
X117500400Y-104698800D03*
D11*
X178700000Y-74460000D03*
D12*
X178700000Y-77000000D03*
D11*
X187500000Y-74460000D03*
D12*
X187500000Y-77000000D03*
D11*
X183350000Y-74460000D03*
D12*
X183350000Y-77000000D03*
M02*

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +1,12 @@
M48
; DRILL file {KiCad (6.0.2-0)} date Tuesday, March 01, 2022 at 05:32:59 am
; DRILL file {KiCad 8.0.3} date 2024-06-18T13:39:09-0400
; FORMAT={-:-/ absolute / inch / decimal}
; #@! TF.CreationDate,2022-03-01T05:32:59-05:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,(6.0.2-0)
; #@! TF.CreationDate,2024-06-18T13:39:09-04:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,8.0.3
; #@! TF.FileFunction,NonPlated,1,2,NPTH
FMAT,2
INCH
%
G90
G05
T0
M30

View File

@ -1,8 +1,8 @@
M48
; DRILL file {KiCad (6.0.2-0)} date Tuesday, March 01, 2022 at 05:32:59 am
; DRILL file {KiCad 8.0.3} date 2024-06-18T13:39:09-0400
; FORMAT={-:-/ absolute / inch / decimal}
; #@! TF.CreationDate,2022-03-01T05:32:59-05:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,(6.0.2-0)
; #@! TF.CreationDate,2024-06-18T13:39:09-04:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,8.0.3
; #@! TF.FileFunction,Plated,1,2,PTH
FMAT,2
INCH
@ -39,6 +39,7 @@ X4.6765Y-2.408
X4.6765Y-2.837
X4.6765Y-3.229
X4.9Y-2.475
X4.9016Y-2.425
X4.9468Y-2.449
X4.962Y-2.938
X4.981Y-2.644
@ -107,8 +108,11 @@ X6.95Y-4.275
X7.0Y-4.199
X7.05Y-4.25
X7.103Y-4.365
X7.1457Y-2.9921
X7.15Y-4.225
X7.203Y-4.365
X7.258Y-2.5787
X7.2835Y-2.2638
X7.3543Y-2.4293
T2
X4.775Y-1.875
@ -342,5 +346,10 @@ X4.45Y-3.86
X4.45Y-3.96
X4.626Y-4.122
X4.626Y-4.222
T0
X7.0354Y-2.9315
X7.0354Y-3.0315
X7.2185Y-2.9315
X7.2185Y-3.0315
X7.3819Y-2.9315
X7.3819Y-3.0315
M30

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 MiB

After

Width:  |  Height:  |  Size: 2.3 MiB

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,14 @@
{
"board": {
"active_layer": 0,
"active_layer": 37,
"active_layer_preset": "",
"auto_track_width": true,
"hidden_netclasses": [],
"hidden_nets": [],
"high_contrast_mode": 1,
"net_color_mode": 1,
"opacity": {
"images": 0.6,
"pads": 1.0,
"tracks": 1.0,
"vias": 1.0,
@ -67,6 +69,12 @@
"visible_layers": "00010f0_80000001",
"zone_display_mode": 1
},
"git": {
"repo_password": "",
"repo_type": "",
"repo_username": "",
"ssh_key": ""
},
"meta": {
"filename": "Apple2IORPi.kicad_prl",
"version": 3

View File

@ -1,15 +1,19 @@
{
"board": {
"3dviewports": [],
"design_settings": {
"defaults": {
"board_outline_line_width": 0.049999999999999996,
"copper_line_width": 0.19999999999999998,
"apply_defaults_to_fp_fields": false,
"apply_defaults_to_fp_shapes": false,
"apply_defaults_to_fp_text": false,
"board_outline_line_width": 0.05,
"copper_line_width": 0.2,
"copper_text_italic": false,
"copper_text_size_h": 1.5,
"copper_text_size_v": 1.5,
"copper_text_thickness": 0.3,
"copper_text_upright": false,
"courtyard_line_width": 0.049999999999999996,
"courtyard_line_width": 0.05,
"dimension_precision": 4,
"dimension_units": 3,
"dimensions": {
@ -20,13 +24,13 @@
"text_position": 0,
"units_format": 1
},
"fab_line_width": 0.09999999999999999,
"fab_line_width": 0.1,
"fab_text_italic": false,
"fab_text_size_h": 1.0,
"fab_text_size_v": 1.0,
"fab_text_thickness": 0.15,
"fab_text_upright": false,
"other_line_width": 0.09999999999999999,
"other_line_width": 0.1,
"other_text_italic": false,
"other_text_size_h": 1.0,
"other_text_size_v": 1.0,
@ -49,7 +53,83 @@
}
},
"diff_pair_dimensions": [],
"drc_exclusions": [],
"drc_exclusions": [
"solder_mask_bridge|124535001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|124535001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|127075001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|127075001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|127075001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|127075001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|129615001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|129615001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|129615001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|129615001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|132155001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|132155001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|132155001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|132155001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|134695001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|134695001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|134695001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|134695001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|137235001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|137235001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|137235001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|137235001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|139775001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|139775001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|139775001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|139775001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|142315001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|142315001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|142315001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|142315001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|144855001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|144855001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|144855001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|144855001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|147395001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|147395001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|147395001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|147395001|115570000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|149935001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|149935001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|149935001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|152475001|111760000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|152475001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|152475001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|152475001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|155015001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|155015001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|157555001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|157555001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|160095001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|160095001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|162635001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|162635001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|165175001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|165175001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|167640000|111760000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|167715001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|167715001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|170255001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|170255001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|172795001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|172795001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|175335001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|175335001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|177875001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|177875001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|180415001|111760000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|180415001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|180415001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|180415001|115570000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|182955001|111760000|f595ab14-1c60-4f62-967e-ec0150fa33cb|1d9dc91c-3457-4ca5-8e42-43be60ae0831",
"solder_mask_bridge|182955001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a",
"solder_mask_bridge|182955001|115443000|f595ab14-1c60-4f62-967e-ec0150fa33cb|3188df11-1cf2-4d20-a1e5-fe4b55a2ec85",
"solder_mask_bridge|182955001|115570000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|80b9a57f-3326-43ca-b6ca-5e911992b3c4",
"solder_mask_bridge|185495001|115443000|ec47a960-a4ae-4eba-b6e0-bb37e69c7525|16f69f5e-9e40-486f-9c42-86872301862a"
],
"meta": {
"filename": "board_design_settings.json",
"version": 2
@ -57,20 +137,28 @@
"rule_severities": {
"annular_width": "error",
"clearance": "error",
"connection_width": "warning",
"copper_edge_clearance": "error",
"copper_sliver": "warning",
"courtyards_overlap": "error",
"diff_pair_gap_out_of_range": "error",
"diff_pair_uncoupled_length_too_long": "error",
"drill_out_of_range": "error",
"duplicate_footprints": "warning",
"extra_footprint": "warning",
"footprint": "error",
"footprint_symbol_mismatch": "warning",
"footprint_type_mismatch": "error",
"hole_clearance": "error",
"hole_near_hole": "error",
"holes_co_located": "warning",
"invalid_outline": "error",
"isolated_copper": "warning",
"item_on_disabled_layer": "error",
"items_not_allowed": "error",
"length_out_of_range": "error",
"lib_footprint_issues": "warning",
"lib_footprint_mismatch": "warning",
"malformed_courtyard": "error",
"microvia_drill_out_of_range": "error",
"missing_courtyard": "ignore",
@ -80,9 +168,14 @@
"padstack": "error",
"pth_inside_courtyard": "ignore",
"shorting_items": "error",
"silk_edge_clearance": "warning",
"silk_over_copper": "warning",
"silk_overlap": "warning",
"skew_out_of_range": "error",
"solder_mask_bridge": "error",
"starved_thermal": "error",
"text_height": "warning",
"text_thickness": "warning",
"through_hole_pad_without_hole": "error",
"too_many_vias": "error",
"track_dangling": "warning",
@ -101,24 +194,106 @@
"allow_microvias": false,
"max_error": 0.005,
"min_clearance": 0.0,
"min_copper_edge_clearance": 0.024999999999999998,
"min_connection": 0.0,
"min_copper_edge_clearance": 0.025,
"min_hole_clearance": 0.25,
"min_hole_to_hole": 0.25,
"min_microvia_diameter": 0.19999999999999998,
"min_microvia_drill": 0.09999999999999999,
"min_microvia_diameter": 0.2,
"min_microvia_drill": 0.1,
"min_resolved_spokes": 2,
"min_silk_clearance": 0.0,
"min_text_height": 0.8,
"min_text_thickness": 0.08,
"min_through_hole_diameter": 0.3,
"min_track_width": 0.17779999999999999,
"min_via_annular_width": 0.049999999999999996,
"min_via_diameter": 0.39999999999999997,
"min_track_width": 0.1778,
"min_via_annular_width": 0.05,
"min_via_diameter": 0.4,
"solder_mask_to_copper_clearance": 0.0,
"use_height_for_length_calcs": true
},
"teardrop_options": [
{
"td_onpadsmd": true,
"td_onroundshapesonly": false,
"td_ontrackend": false,
"td_onviapad": true
}
],
"teardrop_parameters": [
{
"td_allow_use_two_tracks": true,
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_on_pad_in_zone": false,
"td_target_name": "td_round_shape",
"td_width_to_size_filter_ratio": 0.9
},
{
"td_allow_use_two_tracks": true,
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_on_pad_in_zone": false,
"td_target_name": "td_rect_shape",
"td_width_to_size_filter_ratio": 0.9
},
{
"td_allow_use_two_tracks": true,
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_on_pad_in_zone": false,
"td_target_name": "td_track_end",
"td_width_to_size_filter_ratio": 0.9
}
],
"track_widths": [],
"tuning_pattern_settings": {
"diff_pair_defaults": {
"corner_radius_percentage": 80,
"corner_style": 1,
"max_amplitude": 1.0,
"min_amplitude": 0.2,
"single_sided": false,
"spacing": 1.0
},
"diff_pair_skew_defaults": {
"corner_radius_percentage": 80,
"corner_style": 1,
"max_amplitude": 1.0,
"min_amplitude": 0.2,
"single_sided": false,
"spacing": 0.6
},
"single_track_defaults": {
"corner_radius_percentage": 80,
"corner_style": 1,
"max_amplitude": 1.0,
"min_amplitude": 0.2,
"single_sided": false,
"spacing": 0.6
}
},
"via_dimensions": [],
"zones_allow_external_fillets": false,
"zones_use_no_outline": true
},
"layer_presets": []
"ipc2581": {
"dist": "",
"distpn": "",
"internal_id": "",
"mfg": "",
"mpn": ""
},
"layer_presets": [],
"viewports": []
},
"boards": [],
"cvpcb": {
@ -305,15 +480,21 @@
"bus_label_syntax": "error",
"bus_to_bus_conflict": "error",
"bus_to_net_conflict": "error",
"conflicting_netclasses": "error",
"different_unit_footprint": "error",
"different_unit_net": "error",
"duplicate_reference": "error",
"duplicate_sheet_names": "error",
"endpoint_off_grid": "warning",
"extra_units": "error",
"global_label_dangling": "warning",
"hier_label_mismatch": "error",
"label_dangling": "error",
"lib_symbol_issues": "warning",
"missing_bidi_pin": "warning",
"missing_input_pin": "warning",
"missing_power_pin": "error",
"missing_unit": "warning",
"multiple_net_names": "warning",
"net_not_bus_member": "warning",
"no_connect_connected": "warning",
@ -323,6 +504,7 @@
"pin_to_pin": "warning",
"power_pin_not_driven": "error",
"similar_labels": "warning",
"simulation_model_issue": "ignore",
"unannotated": "error",
"unit_value_mismatch": "error",
"unresolved_variable": "error",
@ -340,7 +522,7 @@
"net_settings": {
"classes": [
{
"bus_width": 12.0,
"bus_width": 12,
"clearance": 0.1778,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
@ -354,10 +536,10 @@
"track_width": 0.1778,
"via_diameter": 0.762,
"via_drill": 0.50038,
"wire_width": 6.0
"wire_width": 6
},
{
"bus_width": 12.0,
"bus_width": 12,
"clearance": 0.1778,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
@ -366,16 +548,15 @@
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "3V3",
"nets": [],
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.3556,
"via_diameter": 0.762,
"via_drill": 0.50038,
"wire_width": 6.0
"wire_width": 6
},
{
"bus_width": 12.0,
"bus_width": 12,
"clearance": 0.254,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
@ -384,18 +565,15 @@
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "5V",
"nets": [
"Net-(J1-Pad2)"
],
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.8128,
"via_diameter": 0.762,
"via_drill": 0.7112,
"wire_width": 6.0
"wire_width": 6
},
{
"bus_width": 12.0,
"bus_width": 12,
"clearance": 0.254,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
@ -404,34 +582,116 @@
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "Ground",
"nets": [],
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.8128,
"via_diameter": 0.762,
"via_drill": 0.7112,
"wire_width": 6.0
"wire_width": 6
}
],
"meta": {
"version": 2
"version": 3
},
"net_colors": null
"net_colors": null,
"netclass_assignments": null,
"netclass_patterns": [
{
"netclass": "5V",
"pattern": "Net-(J1-Pad2)"
}
]
},
"pcbnew": {
"last_paths": {
"gencad": "",
"idf": "",
"netlist": "Apple2IORPi.net",
"plot": ".",
"pos_files": "",
"specctra_dsn": "",
"step": "",
"svg": "",
"vrml": ""
},
"page_layout_descr_file": ""
},
"schematic": {
"annotate_start_num": 0,
"bom_export_filename": "",
"bom_fmt_presets": [],
"bom_fmt_settings": {
"field_delimiter": ",",
"keep_line_breaks": false,
"keep_tabs": false,
"name": "CSV",
"ref_delimiter": ",",
"ref_range_delimiter": "",
"string_delimiter": "\""
},
"bom_presets": [],
"bom_settings": {
"exclude_dnp": false,
"fields_ordered": [
{
"group_by": false,
"label": "Reference",
"name": "Reference",
"show": true
},
{
"group_by": true,
"label": "Value",
"name": "Value",
"show": true
},
{
"group_by": false,
"label": "Datasheet",
"name": "Datasheet",
"show": true
},
{
"group_by": false,
"label": "Footprint",
"name": "Footprint",
"show": true
},
{
"group_by": false,
"label": "Qty",
"name": "${QUANTITY}",
"show": true
},
{
"group_by": true,
"label": "DNP",
"name": "${DNP}",
"show": true
},
{
"group_by": false,
"label": "#",
"name": "${ITEM_NUMBER}",
"show": false
},
{
"group_by": false,
"label": "Description",
"name": "Description",
"show": false
}
],
"filter_string": "",
"group_symbols": true,
"name": "",
"sort_asc": true,
"sort_field": "Reference"
},
"connection_grid_size": 50.0,
"drawing": {
"dashed_lines_dash_length_ratio": 12.0,
"dashed_lines_gap_length_ratio": 3.0,
"default_line_thickness": 6.0,
"default_text_size": 50.0,
"field_names": [],
@ -442,6 +702,11 @@
"intersheets_ref_suffix": "",
"junction_size_choice": 3,
"label_size_ratio": 0.25,
"operating_point_overlay_i_precision": 3,
"operating_point_overlay_i_range": "~A",
"operating_point_overlay_v_precision": 3,
"operating_point_overlay_v_range": "~V",
"overbar_offset_ratio": 1.23,
"pin_symbol_size": 0.0,
"text_offset_ratio": 0.08
},
@ -450,7 +715,7 @@
"meta": {
"version": 1
},
"net_format_name": "Pcbnew",
"net_format_name": "KiCad",
"ngspice": {
"fix_include_paths": true,
"fix_passive_vals": false,
@ -463,14 +728,19 @@
"page_layout_descr_file": "",
"plot_directory": "./",
"spice_adjust_passive_values": false,
"spice_current_sheet_as_root": false,
"spice_external_command": "spice \"%I\"",
"spice_model_current_sheet_as_root": true,
"spice_save_all_currents": false,
"spice_save_all_dissipations": false,
"spice_save_all_voltages": false,
"subpart_first_id": 65,
"subpart_id_separator": 0
},
"sheets": [
[
"89e83c2e-e90a-4a50-b278-880bac0cfb49",
""
"Root"
]
],
"text_variables": {}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -18,7 +18,7 @@ The purpose of this project is to provide I/O for an Apple II series 8 bit compu
## Project Status
### Classic Hardware
So far, this is still a project and not a finished product. The current prototype is on the sixth revision. I have sold about 60 boards including previous prototypes. There are more than 100 in the wild between self made and ones purchased in places like eBay that were made by others. The sixth prototype is functionally equivalent to the fifth, other than a new jumper to select internal/external power.
So far, this is still a project and not a finished product. The current prototype is on the seventh revision. I have sold about 60 boards including previous prototypes. There are several hundred in the wild between self made and ones purchased in places like eBay that were made by others. The seventh prototype is functionally equivalent to the sixth other than support for write-protect and reintroducing EPROM support. The fifth revision was similar and compatible with the sixth, other than a new jumper to select internal/external power on the sixth.
The card enables the Apple II to boot from and write to virtual hard drive images stored on the RPi in any slot (except slot 3), execute Linux commands from Applesoft BASIC and run a bash shell with VT100 emulation. The code has very few tests and is incomplete. Note that currently the firmware assumes an 80 column card is in slot 3 and than you have lowercase support. Most development has been done with an enhanced Apple //e with the card in slot 7. If you have other drive controllers earlier in the boot cycle, you can still boot from the Apple2-IO-RPi. For example, if the card was in slot 4, you could type `PR#4` from the BASIC prompt to boot the card. Note that the Raspberry Pi Zero W (and W 2) consume 170 - 250 mA and there is only 500 mA available to all expansion slots according to Apple. It is not recommended to have a lot of other cards in the system at the same time. With the sixth revision of the prototype, it is possible to remove the power jumper and run the RPi on an external USB power source. If configured for external power, note that the card's firmware will hang on boot without USB power on as the latch chips are powered by the 3.3V output of the RPi.