Compare commits

...

58 Commits
v0.1 ... main

Author SHA1 Message Date
Christopher RYU
9cf7d60e07 Syntax and brevity 2023-08-22 18:34:14 +09:00
Christopher RYU
322fd4077f Dick Huston wrote the Apple controller firmware. 2023-08-22 18:33:00 +09:00
Christopher RYU
6ada2b2cbe Re-render. 2023-08-08 17:29:15 +09:00
Christopher RYU
ea7c90dfce Add pull-up resistors where appropriate. 2023-07-30 19:53:06 +09:00
Christopher RYU
67ce44a530 Revise DIP switch documentation. 2023-07-30 05:38:22 +09:00
Christopher RYU
c473345ca5 Add CMOS construction notes. 2023-07-29 17:47:11 +09:00
Christopher RYU
819d7f47a0 Oops, flip transistor around. 2023-07-29 17:37:44 +09:00
Christopher RYU
c458ee9cb5 Use CMOS parts where appropriate (verified!) 2023-07-29 17:33:56 +09:00
Christopher RYU
b90fc42787 Nuke erroneously added files. 2023-07-29 06:35:24 +09:00
Christopher RYU
16b28f852f Sync. 2023-07-29 06:33:03 +09:00
Christopher RYU
710d10a0af Rename two files. 2023-07-29 06:32:37 +09:00
Christopher RYU
dafa697693 Rework labels. 2023-07-29 06:16:00 +09:00
Christopher RYU
61dc141610 Reformat for readability. 2023-07-29 06:08:13 +09:00
Christopher RYU
def53563b0 Use our macro to keep this readable. 2023-07-29 06:07:45 +09:00
Christopher RYU
4f204c718f Add custom screencode macro. 2023-07-29 06:07:10 +09:00
Christopher RYU
8f415a7306 Reformat, add comments from S.Elliott@AppleFritter 2023-07-28 10:09:51 +09:00
Christopher RYU
49fa0c2180 Use screen code macro for readability. 2023-07-28 08:26:15 +09:00
Christopher RYU
8143c80334 Add minimal calibration procedure. 2023-07-27 14:17:21 +09:00
Christopher RYU
eb26141a55 Add original user documentation. 2023-07-26 10:22:07 +09:00
Christopher RYU
a2890cb58e Update. 2023-07-20 07:22:28 +09:00
Christopher RYU
1dfc0eb9b6 Re-render. 2023-07-20 07:08:23 +09:00
Christopher RYU
3d57fce57a Checkpoint. 2023-07-20 07:07:32 +09:00
Christopher RYU
00e81100b7 Checkpoint. 2023-07-20 07:07:15 +09:00
Christopher RYU
525cd5491d Documentation cleanup. 2023-07-19 12:02:28 +09:00
Christopher RYU
19b4305c70 Re-render. 2023-07-19 12:01:04 +09:00
Christopher RYU
ee1dc4359b Add jumper for single-connector FloppyEmu support. 2023-07-19 11:59:51 +09:00
Christopher RYU
56463e208f Ignore production/* 2023-07-19 11:58:54 +09:00
Christopher RYU
45965c9640 Re-render. 2023-07-19 04:22:46 +09:00
Christopher RYU
814b73442a Adjust resistor placement. 2023-07-18 17:00:27 +09:00
Christopher RYU
40e086a8a8 Align U7 with rest of row, add decoupling cap, add calibration information. 2023-07-18 16:13:17 +09:00
Christopher Ryu
4e5cc8e495 Merge pull request 'Update jumper documentation.' (#2) from 2716 into main
Reviewed-on: https://codeberg.org/cryu/micro-sci-a2-controller/pulls/2
2023-07-18 06:35:19 +00:00
Christopher RYU
2ed74654e0 Update jumper documentation. 2023-07-18 15:31:29 +09:00
Christopher Ryu
b139c34060 Merge pull request '2716' (#1) from 2716 into main
Reviewed-on: https://codeberg.org/cryu/micro-sci-a2-controller/pulls/1
2023-07-18 06:27:18 +00:00
Christopher RYU
245af989b8 Align resistor and tighten tracks. 2023-07-18 15:22:26 +09:00
Christopher RYU
15f7b97611 Re-render. 2023-07-18 15:22:17 +09:00
Christopher RYU
fcbd642f1f Shift top IC row down a bit to make room for flat transistor ... 2023-07-18 14:44:27 +09:00
Christopher RYU
469f413875 Document more changes for v0.2 2023-07-18 14:44:17 +09:00
Christopher RYU
af63708c05 Re-render. 2023-07-18 09:47:52 +09:00
Christopher RYU
95c12f20e5 Move capacitor in case we want to reposition the transistor. 2023-07-18 09:46:53 +09:00
Christopher RYU
e53156d86b Switch to TO-220 for better clearance. 2023-07-18 09:31:36 +09:00
Christopher RYU
268c33ffeb Clean up schematic a bit. 2023-07-18 09:24:27 +09:00
Christopher RYU
c3c98ea406 Add all missing bypass capacitors. 2023-07-18 09:21:48 +09:00
Christopher RYU
8deda74495 Replace jumpers with DIP switch. 2023-07-18 08:44:13 +09:00
Christopher RYU
99844496bf Reduce resistor footprint length. 2023-07-18 08:35:39 +09:00
Christopher RYU
1621afa43a Switch from axial to radial capacitors. 2023-07-18 08:24:04 +09:00
Christopher RYU
57e7a657a2 Normalize power rail trace widths. 2023-07-18 08:19:58 +09:00
Christopher RYU
5459bf5336 Add test points, reduce size of bypass caps and move to better location. 2023-07-18 08:11:47 +09:00
Christopher RYU
1f28446a46 Use ground pours. 2023-07-18 07:30:29 +09:00
Christopher RYU
0caadf74e9 Add additional ripple-filtering capacitor per Franklin schematic. 2023-07-18 07:15:58 +09:00
Christopher RYU
44d1fb3650 Most capacitors are non-polarized. 2023-07-17 08:59:32 +09:00
Christopher RYU
2c0104d331 Clean up and modularize schematic. 2023-07-17 08:34:51 +09:00
Christopher RYU
b0e71dc415 Ignore another file. 2023-07-17 08:33:56 +09:00
Christopher RYU
88e7f1d19e Re-render. 2023-07-16 17:30:21 +09:00
Christopher RYU
22aa75f0b7 Add jumpers to select Micro-SCI / Franklin timing behavior. 2023-07-16 13:34:42 +09:00
Christopher RYU
151b864303 Clean up schematic. 2023-07-16 12:21:38 +09:00
Christopher RYU
c1569ee8c9 Remove obsolete comment. 2023-07-16 11:59:01 +09:00
Christopher RYU
92d099a7b2 v0.2: use a 2716/2732 EPROM. 2023-07-16 11:54:43 +09:00
Christopher RYU
1b3356bba9 Switch to 2716/2732. 2023-07-16 11:48:36 +09:00
19 changed files with 48061 additions and 6551 deletions

2
.gitignore vendored
View File

@ -29,3 +29,5 @@ fp-info-cache
*.xml
*.csv
*.lck
production/

File diff suppressed because it is too large Load Diff

View File

@ -55,7 +55,9 @@
"width": 0.0
}
],
"drc_exclusions": [],
"drc_exclusions": [
"text_height|60650000|69400000|d768dc85-30ba-4ddc-bd02-7ecc813bf984|00000000-0000-0000-0000-000000000000"
],
"meta": {
"version": 2
},
@ -92,11 +94,11 @@
"pth_inside_courtyard": "ignore",
"shorting_items": "error",
"silk_edge_clearance": "warning",
"silk_over_copper": "warning",
"silk_overlap": "warning",
"silk_over_copper": "ignore",
"silk_overlap": "ignore",
"skew_out_of_range": "error",
"solder_mask_bridge": "ignore",
"starved_thermal": "error",
"starved_thermal": "ignore",
"text_height": "warning",
"text_thickness": "warning",
"through_hole_pad_without_hole": "error",
@ -193,9 +195,7 @@
"equivalence_files": []
},
"erc": {
"erc_exclusions": [
"power_pin_not_driven|703580|219710|8dc986fd-9835-47b7-ac1e-9f266d82b306|00000000-0000-0000-0000-000000000000|||"
],
"erc_exclusions": [],
"meta": {
"version": 0
},

File diff suppressed because it is too large Load Diff

View File

@ -1,18 +1,46 @@
# micro-sci-a2-controller
# Micro-SCI / Franklin Apple ][ Floppy Drive Controller
This is a clone of the Micro-SCI / Franklin floppy drive controller.
v0.1 is a direct clone, reverse-engineered from a Micro-SCI board. It was cross-checked with a Franklin-branded board, as well as the (belatedly discovered) official Franklin schematic (included in doc/service_and_schematics.pdf)
Since it is a faithful clone, it requires a 2708 EPROM (or a different EPROM with a 2708 adaptor). A board slightly revised to use a 2716/2732 is available on the 2716 git branch.
v0.2 has the following enhancements over the original design:
* the 2708 EPROM has been replaced with a more-common 2716/2732 EPROM
* decoupling capacitors have been added
* footprints for all capacitors and resistors have been modernized
* firmware EPROM bank selection jumpers replaced with a DIP switch
* obsolete MPS-U51 transistor replaced with modern equivalent
* clearly-marked calibration test points have been added
* ground pours used to increase operational stability
* support for using Floppy Emu in dual-drive emulation mode with one cable
Firmware images can be built via the Makefile in the firmware subdirectory. The build framework requires cc65.
![usci](usci.png?raw=true "usci")
## Jumper block
## EPROM bank select switches (J4)
* 1-2 and 3-4: controller test firmware (0x0000)
* 1-2: 16-sector firmware (0x0100)
* 3-4: 13-sector firmware (0x0200)
* empty: firmware "put jumpers here" splash screen (0x0300)
* 1:off 2:off - firmware "put jumpers here" splash screen (0x0300)
* 1:off 2: on - 13-sector firmware (0x0200)
* 1: on 2:off - 16-sector firmware (0x0100)
* 1: on 2: on - controller test firmware (0x0000)
## Calibration procedure
* set J4 to on/on ("controller test firmware")
* connect oscilloscope to TP1
* start machine
* execute "call 50688"
* execute "AAW" (and immediately hit ESC)
* adjust R1 until waveform period is 5.4 microseconds
* connect oscilloscope to TP2
* execute "99W" (and immediately hit ESX)
* adjust R2 until waveform period is 3.8 microseconds
* card is now calibrated, power off machine and set J4 to "16-sector firmware"
## Construction notes
* J3 can be omitted if this controller is used with a FloppyEmu
* All discrete logic ICs (except U15, the 74LS373) can be CMOS (74ACT, 74HCT). As is unfortunately usual with the Apple ][, U15 must be LS due to timing issues.
* if CMOS logic is used, then Q1/R6/R7 can be omitted -- the entire logic array can remain powered up at all times. Connect pads 1 and 3 on the Q1 footprint.

Binary file not shown.

252
eprom.kicad_sym Normal file
View File

@ -0,0 +1,252 @@
(kicad_symbol_lib (version 20220914) (generator kicad_symbol_editor)
(symbol "2732" (in_bom yes) (on_board yes)
(property "Reference" "U2" (at 1.9559 29.972 0)
(effects (font (size 1.27 1.27)) (justify left))
)
(property "Value" "2732" (at 1.9559 27.432 0)
(effects (font (size 1.27 1.27)) (justify left))
)
(property "Footprint" "Package_DIP:DIP-24_W15.24mm" (at 26.67 -21.59 0)
(effects (font (size 1.27 1.27)) hide)
)
(property "Datasheet" "http://ww1.microchip.com/downloads/en/DeviceDoc/doc0014.pdf" (at 3.81 -31.75 0)
(effects (font (size 1.27 1.27)) hide)
)
(property "ki_keywords" "OTP EPROM 256 KiBit" (at 0 0 0)
(effects (font (size 1.27 1.27)) hide)
)
(property "ki_description" "OTP EPROM 256 KiBit" (at 0 0 0)
(effects (font (size 1.27 1.27)) hide)
)
(property "ki_fp_filters" "DIP*W15.24mm*" (at 0 0 0)
(effects (font (size 1.27 1.27)) hide)
)
(symbol "2732_1_1"
(rectangle (start -7.62 25.4) (end 7.62 -25.4)
(stroke (width 0.254) (type default))
(fill (type background))
)
(pin input line (at -10.16 5.08 0) (length 2.54)
(name "A7" (effects (font (size 1.27 1.27))))
(number "1" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 20.32 180) (length 2.54)
(name "D1" (effects (font (size 1.27 1.27))))
(number "10" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 17.78 180) (length 2.54)
(name "D2" (effects (font (size 1.27 1.27))))
(number "11" (effects (font (size 1.27 1.27))))
)
(pin power_in line (at 0 -27.94 90) (length 2.54)
(name "GND" (effects (font (size 1.27 1.27))))
(number "12" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 15.24 180) (length 2.54)
(name "D3" (effects (font (size 1.27 1.27))))
(number "13" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 12.7 180) (length 2.54)
(name "D4" (effects (font (size 1.27 1.27))))
(number "14" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 10.16 180) (length 2.54)
(name "D5" (effects (font (size 1.27 1.27))))
(number "15" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 7.62 180) (length 2.54)
(name "D6" (effects (font (size 1.27 1.27))))
(number "16" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 5.08 180) (length 2.54)
(name "D7" (effects (font (size 1.27 1.27))))
(number "17" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 -20.32 0) (length 2.54)
(name "~{CE}" (effects (font (size 1.27 1.27))))
(number "18" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 -2.54 0) (length 2.54)
(name "A10" (effects (font (size 1.27 1.27))))
(number "19" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 7.62 0) (length 2.54)
(name "A6" (effects (font (size 1.27 1.27))))
(number "2" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 -22.86 0) (length 2.54)
(name "~{OE}" (effects (font (size 1.27 1.27))))
(number "20" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 -5.08 0) (length 2.54)
(name "A11" (effects (font (size 1.27 1.27))))
(number "21" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 0 0) (length 2.54)
(name "A9" (effects (font (size 1.27 1.27))))
(number "22" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 2.54 0) (length 2.54)
(name "A8" (effects (font (size 1.27 1.27))))
(number "23" (effects (font (size 1.27 1.27))))
)
(pin power_in line (at 0 27.94 270) (length 2.54)
(name "VCC" (effects (font (size 1.27 1.27))))
(number "24" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 10.16 0) (length 2.54)
(name "A5" (effects (font (size 1.27 1.27))))
(number "3" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 12.7 0) (length 2.54)
(name "A4" (effects (font (size 1.27 1.27))))
(number "4" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 15.24 0) (length 2.54)
(name "A3" (effects (font (size 1.27 1.27))))
(number "5" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 17.78 0) (length 2.54)
(name "A2" (effects (font (size 1.27 1.27))))
(number "6" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 20.32 0) (length 2.54)
(name "A1" (effects (font (size 1.27 1.27))))
(number "7" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 22.86 0) (length 2.54)
(name "A0" (effects (font (size 1.27 1.27))))
(number "8" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 22.86 180) (length 2.54)
(name "D0" (effects (font (size 1.27 1.27))))
(number "9" (effects (font (size 1.27 1.27))))
)
)
)
(symbol "27C256" (in_bom yes) (on_board yes)
(property "Reference" "U2" (at 1.9559 29.972 0)
(effects (font (size 1.27 1.27)) (justify left))
)
(property "Value" "2732" (at 1.9559 27.432 0)
(effects (font (size 1.27 1.27)) (justify left))
)
(property "Footprint" "Package_DIP:DIP-24_W15.24mm" (at 26.67 -21.59 0)
(effects (font (size 1.27 1.27)) hide)
)
(property "Datasheet" "http://ww1.microchip.com/downloads/en/DeviceDoc/doc0014.pdf" (at 3.81 -31.75 0)
(effects (font (size 1.27 1.27)) hide)
)
(property "ki_keywords" "OTP EPROM 256 KiBit" (at 0 0 0)
(effects (font (size 1.27 1.27)) hide)
)
(property "ki_description" "OTP EPROM 256 KiBit" (at 0 0 0)
(effects (font (size 1.27 1.27)) hide)
)
(property "ki_fp_filters" "DIP*W15.24mm*" (at 0 0 0)
(effects (font (size 1.27 1.27)) hide)
)
(symbol "27C256_1_1"
(rectangle (start -7.62 25.4) (end 7.62 -25.4)
(stroke (width 0.254) (type default))
(fill (type background))
)
(pin input line (at -10.16 5.08 0) (length 2.54)
(name "A7" (effects (font (size 1.27 1.27))))
(number "1" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 20.32 180) (length 2.54)
(name "D1" (effects (font (size 1.27 1.27))))
(number "10" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 17.78 180) (length 2.54)
(name "D2" (effects (font (size 1.27 1.27))))
(number "11" (effects (font (size 1.27 1.27))))
)
(pin power_in line (at 0 -27.94 90) (length 2.54)
(name "GND" (effects (font (size 1.27 1.27))))
(number "12" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 15.24 180) (length 2.54)
(name "D3" (effects (font (size 1.27 1.27))))
(number "13" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 12.7 180) (length 2.54)
(name "D4" (effects (font (size 1.27 1.27))))
(number "14" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 10.16 180) (length 2.54)
(name "D5" (effects (font (size 1.27 1.27))))
(number "15" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 7.62 180) (length 2.54)
(name "D6" (effects (font (size 1.27 1.27))))
(number "16" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 5.08 180) (length 2.54)
(name "D7" (effects (font (size 1.27 1.27))))
(number "17" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 -20.32 0) (length 2.54)
(name "~{CE}" (effects (font (size 1.27 1.27))))
(number "18" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 -2.54 0) (length 2.54)
(name "A10" (effects (font (size 1.27 1.27))))
(number "19" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 7.62 0) (length 2.54)
(name "A6" (effects (font (size 1.27 1.27))))
(number "2" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 -22.86 0) (length 2.54)
(name "~{OE}" (effects (font (size 1.27 1.27))))
(number "20" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 -5.08 0) (length 2.54)
(name "A11" (effects (font (size 1.27 1.27))))
(number "21" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 0 0) (length 2.54)
(name "A9" (effects (font (size 1.27 1.27))))
(number "22" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 2.54 0) (length 2.54)
(name "A8" (effects (font (size 1.27 1.27))))
(number "23" (effects (font (size 1.27 1.27))))
)
(pin power_in line (at 0 27.94 270) (length 2.54)
(name "VCC" (effects (font (size 1.27 1.27))))
(number "24" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 10.16 0) (length 2.54)
(name "A5" (effects (font (size 1.27 1.27))))
(number "3" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 12.7 0) (length 2.54)
(name "A4" (effects (font (size 1.27 1.27))))
(number "4" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 15.24 0) (length 2.54)
(name "A3" (effects (font (size 1.27 1.27))))
(number "5" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 17.78 0) (length 2.54)
(name "A2" (effects (font (size 1.27 1.27))))
(number "6" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 20.32 0) (length 2.54)
(name "A1" (effects (font (size 1.27 1.27))))
(number "7" (effects (font (size 1.27 1.27))))
)
(pin input line (at -10.16 22.86 0) (length 2.54)
(name "A0" (effects (font (size 1.27 1.27))))
(number "8" (effects (font (size 1.27 1.27))))
)
(pin tri_state line (at 10.16 22.86 180) (length 2.54)
(name "D0" (effects (font (size 1.27 1.27))))
(number "9" (effects (font (size 1.27 1.27))))
)
)
)
)

View File

@ -1,18 +1,18 @@
all: util.bin 16.bin 13.bin legend-franklin.bin legend-usci.bin
cat util.bin 16.bin 13.bin legend-franklin.bin > firmware-franklin.bin
cat util.bin 16.bin 13.bin legend-usci.bin > firmware-usci.bin
all: technician.bin 16.bin 13.bin splash-franklin.bin splash-usci.bin
cat technician.bin 16.bin 13.bin splash-franklin.bin > firmware-franklin.bin
cat technician.bin 16.bin 13.bin splash-usci.bin > firmware-usci.bin
legend-franklin.bin:
ca65 --target apple2 -o legend-franklin.o legend.s
ld65 --config apple2-asm.cfg -o legend-franklin.bin legend-franklin.o
splash-franklin.bin:
ca65 --target apple2 -o splash-franklin.o splash.s
ld65 --config apple2-asm.cfg -o splash-franklin.bin splash-franklin.o
legend-usci.bin:
ca65 --target apple2 -DMICROSCI -o legend-usci.o legend.s
ld65 --config apple2-asm.cfg -o legend-usci.bin legend-usci.o
splash-usci.bin:
ca65 --target apple2 -DMICROSCI -o splash-usci.o splash.s
ld65 --config apple2-asm.cfg -o splash-usci.bin splash-usci.o
util.bin:
ca65 --target apple2 -o util.o util.s
ld65 --config apple2-asm.cfg -o util.bin util.o
technician.bin:
ca65 --target apple2 -o technician.o technician.s
ld65 --config apple2-asm.cfg -o technician.bin technician.o
13.bin:
ca65 --target apple2 -DSECSIZE_13 -o 13.o firmware.s

View File

@ -3,7 +3,7 @@
;
; Copyright Apple Computer Inc.
;
; Written by [a genius...Woz?]
; Written by [a genius...Woz?] (CR: Andy Hertzfeld says it was Dick Huston)
;
; Extracted from AppleWin at $C600.
;

View File

@ -1,97 +0,0 @@
; Micro-SCI Floppy Drive Controller info disassembly
PRINTVEC := $08
PRBL2 := $F94A
HOME := $FC58
COUT := $FDED
.org $c600
ldx #$20 ; controller signature
ldy #$00
ldx #$03
stx $3C
jsr HOME ; clear display, home cursor
tsx
lda $0100,x ; current address (#$c6 for slot 6)
sta PRINTVEC+1
lda #0
sta PRINTVEC
ldy #<info ; offset of data begin
LC617: lda (PRINTVEC),y
LC619: bmi doit
tax
jsr PRBL2
beq loop1
doit: jsr COUT
loop1: iny
bne LC617
LC627: beq LC627
info: .byte $8d, $bc, $ad, $ad, $cb, $c5, $d9, $c2
.byte $cf, $c1, $d2, $c4
.ifdef MICROSCI
; ROM checksum 5ddcbbf1
; <--KEYBOARD U-SCI REAR-->
;
; ---------JUMPER--------
; ! ! !
; V V V
;
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; XXXXXXX XXXXXXX XXXXXXX
; 3.2 INFO 3.3&PASCAL
.byte $08, $d5, $ad, $d3
.byte $c3, $c9, $08, $d2, $c5, $c1, $d2, $ad
.byte $ad, $be, $8d, $8d, $08, $ad, $ad, $ad
.byte $ad, $ad, $ad, $ad, $ad, $ad, $ca, $d5
.byte $cd, $d0, $c5, $d2, $ad, $ad
.else
; ROM checksum 5dfc32ca
; <--KEYBOARD ACE 1000 REAR-->
;
; ------JUMPER------
; ! ! !
; V V V
;
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; XXXXXXX XXXXXXX XXXXXXX
; 3.2 INFO 3.3&PASCAL
.byte $06, $c1, $c3, $c5
.byte $a0, $b1, $b0, $b0, $b0, $06, $d2, $c5
.byte $c1, $d2, $ad, $ad, $be, $8d, $8d, $07
.byte $a0, $02, $ad, $ad, $ad, $ad, $ad, $ad
.byte $ca, $d5, $cd, $d0, $c5, $d2
.endif
.byte $ad, $ad
.byte $ad, $ad, $ad, $ad, $8d, $07, $a1, $0b
.byte $a1, $0b, $a1, $8d, $07, $d6, $0b, $d6
.byte $0b, $d6, $8d, $8d, $06, $a3, $a3, $a3
.byte $a0, $a1, $a0, $a1, $03, $a1, $a0, $a3
.byte $a3, $a3, $a0, $a1, $03, $a1, $a0, $a1
.byte $a0, $a3, $a3, $a3, $8d, $06, $a3, $a3
.byte $a3, $a0, $a1, $a0, $a1, $03, $a1, $a0
.byte $a3, $a3, $a3, $a0, $a1, $03, $a1, $a0
.byte $a1, $a0, $a3, $a3, $a3, $8d, $06, $a3
.byte $a3, $a3, $a0, $a1, $a0, $a1, $03, $a1
.byte $a0, $a3, $a3, $a3, $a0, $a1, $03, $a1
.byte $a0, $a1, $a0, $a3, $a3, $a3, $8d, $06
.byte $a3, $a3, $a3, $a0, $a1, $a0, $a1, $03
.byte $a1, $a0, $a3, $a3, $a3, $a0, $a1, $03
.byte $a1, $a0, $a1, $a0, $a3, $a3, $a3, $8d
.byte $06, $d8, $d8, $d8, $d8, $d8, $d8, $d8
.byte $03, $d8, $d8, $d8, $d8, $d8, $d8, $d8
.byte $03, $d8, $d8, $d8, $d8, $d8, $d8, $d8
.byte $8d, $08, $b3, $ae, $b2, $06, $c9, $ce
.byte $c6, $cf, $04, $b3, $ae, $b3, $a6, $d0
.byte $c1, $d3, $c3, $c1, $cc, $8d, $8d

53
firmware/screencode.h Normal file
View File

@ -0,0 +1,53 @@
; Convert characters to screen codes
; Modified to pass through codes below 12
; Helper macro that converts and outputs one character
.macro _screencode char
.if (char < 256)
.if (char > 11)
.byte (char | $80)
.else
.byte (char)
.endif
.else
.error "screencode: Character constant out of range"
.endif
.endmacro
.macro screencode arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9
; Bail out if next argument is empty
.if .blank (arg1)
.exitmacro
.endif
; Check for a string
.if .match ({arg1}, "")
; Walk over all string chars
.repeat .strlen (arg1), i
_screencode {.strat (arg1, i)}
.endrepeat
; Check for a number
.elseif .match (.left (1, {arg1}), 0)
; Just output the number
_screencode arg1
; Check for a character
.elseif .match (.left (1, {arg1}), 'a')
; Just output the character
_screencode arg1
; Anything else is an error
.else
.error "screencode: invalid argument type"
.endif
; Call the macro recursively with the remaining args
screencode arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9
.endmacro

70
firmware/splash.s Normal file
View File

@ -0,0 +1,70 @@
; Micro-SCI Floppy Drive Controller info disassembly
PRINTVEC := $08
PRBL2 := $F94A
HOME := $FC58
COUT := $FDED
.include "screencode.h"
.org $c600
ldx #$20 ; controller signature
ldy #$00
ldx #$03
stx $3C
jsr HOME ; clear display, home cursor
tsx
lda $0100,x ; current address (#$c6 for slot 6)
sta PRINTVEC+1
lda #0
sta PRINTVEC
ldy #<info ; offset of data begin
loop0: lda (PRINTVEC),y
bmi :+
tax
jsr PRBL2
beq loop1
: jsr COUT
loop1: iny
bne loop0
: beq :-
; Splash screen
;
; <--KEYBOARD U-SCI REAR-->
;
; ---------JUMPER--------
; ! ! !
; V V V
;
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; XXXXXXX XXXXXXX XXXXXXX
; 3.2 INFO 3.3&PASCAL
;
; Franklin differs on the first three lines:
; <--KEYBOARD ACE 1000 REAR-->
;
; ------JUMPER------
info: screencode $0d, "<--KEYBOARD"
.ifdef MICROSCI
screencode $08, "U-SCI", $08, "REAR-->", $0d, $0d
screencode $08, "---------JUMPER--------", $0d
.else
screencode $06, "ACE 1000", $06, "REAR-->", $0d, $0d
screencode $07, " ", $02, "------JUMPER------", $0d
.endif
screencode $07, "!", $0b, "!", $0b, "!", $0d
screencode $07, "V", $0b, "V", $0b, "V", $0d, $0d
screencode $06, "### ! !", $03, "! ### !", $03, "! ! ###", $0d
screencode $06, "### ! !", $03, "! ### !", $03, "! ! ###", $0d
screencode $06, "### ! !", $03, "! ### !", $03, "! ! ###", $0d
screencode $06, "### ! !", $03, "! ### !", $03, "! ! ###", $0d
screencode $06, "XXXXXXX", $03, "XXXXXXX", $03, "XXXXXXX", $0d
screencode $08, "3.2", $06, "INFO", $04, "3.3&PASCAL", $0d, $0d

View File

@ -4,6 +4,6 @@
2020aa1413ff77fe29353f3ee72dc295 16.bin
eb8628274eb1a3601723023d3ffe7ef3 firmware-franklin.bin
94fe3d85c9232b53f28a1c6a2a9c9764 firmware-usci.bin
b2e7d74cdf9b43ee8ae3036b1f21cbd5 legend-franklin.bin
105927e7c409116974a45e366beab55b legend-usci.bin
6681f504c6cc3b6887fef51726c96ca1 util.bin
b2e7d74cdf9b43ee8ae3036b1f21cbd5 splash-franklin.bin
105927e7c409116974a45e366beab55b splash-usci.bin
6681f504c6cc3b6887fef51726c96ca1 technician.bin

188
firmware/technician.s Normal file
View File

@ -0,0 +1,188 @@
; Micro-SCI / Franklin "Technician Mode" firmware
;
; Thanks to S.Elliott@AppleFritter for comments/analysis
.setcpu "6502"
.org $c600
A2L := $3e
SLOTx16 := $fd
; motherboard IO ports
KBD := $C000
KBDSTRB := $C010
; DEVSEL ports, accessed via SLOTx16 in X reg
STEPOFF := $C080
STEPON := $C081
MOTOROFF := $C088
MOTORON := $C089
Q6OFF := $C08C
Q6ON := $C08D
Q7OFF := $C08E
Q7ON := $C08F
MON_WAIT := $FCA8
GETLNZ := $FD67
BELL := $FF3A
IORTS := $FF58
GETNUM := $FFA7
KEY_POUND := $A3
KEY_S := $EC
KEY_W := $F0
KEY_Z := $F3
KEY_M := $06
KEY_R := $EB
KEY_X := $F1
KEY_Q := $EA
lda #KEY_POUND
sta $33 ; set input-prompt character to '#'
LC604: jsr BELL
LC607: jsr GETLNZ ; start new line and take input
lda #$00
sta $F2
PARSER: sta KBDSTRB ; clear keyboard strobe
sta $F3
ldy $F2
jsr GETNUM ; parse hex into A2, A has last char xor $b0
; plus $89
sty $F2
cmp #$C6 ; $C6 from $8D (return)
beq LC607 ; no more input, go prompt for new input
cmp #KEY_S ; 'S'
beq CMD_S
cmp #KEY_W ; 'W'
beq CMD_W
cmp #KEY_Z ; 'Z'
beq CMD_Z
ldy #$7F
cmp #KEY_M ; 'M'
beq CMD_MX
cmp #KEY_R ; 'R'
beq CMD_R
ldx #$06
stx $F3
cmp #KEY_X ; 'X'
beq CMD_MX
cmp #KEY_Q ; 'Q'
bne LC604 ; BEEP and prompt for new input
brk ; 'Q' exits out
; 'R': recalibrate by seeking track 0 from track 80
CMD_R: lda #80 ; set starting track
sta $FC ; store accumulator as 'current' track at $FC
txa ; set accumulator to 0
adc #$00 ; inc A (carry still set from CMP #$EB)
sta $F3 ; set ($F3)=01
lda #$00 ; pass target track 0 through accumulator
beq LC651 ; branch to end of 'S' command to finish
; 'S': seek logical-track index in A2L ('22S' seeks logical track $22)
CMD_S: lda A2L ; load logical track-index from A2L
asl a ; convert to physical track-index
LC651: sta $F0 ; store accumulator as target track at $F0
ldy #$FF ; value to be stored at $09 = #$FF
bne CMD_MX ; branch to 'M' command for next step
; 'Z': seek logical-track index in A2L (eg: "22Z" seeks logical track $22)
CMD_Z: lda A2L ; load logical track-index from A2L
asl a ; convert to physical track-index
sta $F1 ; store as target track in $F1
ldy #$00 ; value to stored at $09 = #$00
beq CMD_MX ; branch to 'M' command for next step
; temporarily stop motor, then branch to turn it on again
STOP_MOTOR: lda #$50
jsr MON_WAIT
sta MOTOROFF,x
ldy A2L
LC66A: jsr MON_WAIT
dey
bpl LC66A
bmi LC68E
; EXIT THRU GIFT SHOP, current command finished, go back to parser
DONE: lda #$00
beq PARSER
; 'W' command, write nibble-pattern in A2L (eg: "96W" writes 96 96 96...)
CMD_W: lda A2L ; pattern to write
sta $FF
ldy #$0F
; 'M' command while Y=#7F and X=#00
; 'X' command while Y=#7F and X=#06 and ($f3)=#06
CMD_MX: sty $09 ; preserve actual command
jsr IORTS ; put our address on stack
tsx
lda $0100,x ; derive our DEVSEL index
asl a
asl a
asl a
asl a
sta SLOTx16 ; save DEVSEL index for future IO
adc $F3
tax
LC68E: sta MOTORON,x
lda $09
beq LC6BA ; Y=00, branch for 'Z'
bmi LC6BA ; Y=FF, branch for 'S'
asl a
bmi LC6AC
sta Q7ON,x ; start writing/erasing
LC69D: lda $09 ; [3 cycles] reload saved Y byte
asl a ; [2] shift-left to test second bit
bmi STOP_MOTOR ; [2] branch to stop motor for M/X/S commands
nop
nop
lda $FF ; byte value to be written
sta Q6ON,x ; store into data register
; (wrong timing for Disk II, it would probably
; write $DD instead)
cmp Q6OFF,x ; [4] shift data-out
LC6AC: lda KBD ; get keypress
eor #$9B ; ESC?
bne LC69D ; if not, continue loop
ldx SLOTx16
sta Q7OFF,x
LC6B8: beq DONE ; all done, branch to branch-to-parser
LC6BA: ldx SLOTx16
sta MOTORON,x
LC6BF: ldy $FC
LC6C1: cpy $F0 ; compare track index in Y to target track (result in carry flag)
bne LC6E3 ; track doesn't match, go to stepper routine
lda $F0 ; load current track into A (why not tya?)
sta $FC ; store current track
lda $09
bne DONE ; Y=00, branch for 'Z'
lda $F0 ; exchange target track indexes in $F0 vs $F1
ldy $F1
sta $F1
sty $F0
lda KBD ; read current key value
eor #$9B ; $9B = <esc>
beq LC6B8 ; if current key is <esc> then branch
lda #$73
jsr MON_WAIT ; delay for mechanical seek time
bcs LC6BF
LC6E3: bcs LC6E7 ; track numbers increasing or decreasing?
iny ; increment track number in Y reg
iny ; decrement track number in Y reg
LC6E7: dey
tya
and #$03 ; mask track to just 4 low bits, numbers 00-01-02-03
asl a ; shift left, convert to stepper-motor phases 02-04-06-08
ora SLOTx16 ; bitwise-OR for DEVSEL-relative IO address
tax ; move it into X for IO
lsr a ; shift right to make track number again
lsr a ; shift low-bit into carry flag (odd vs even)
sta STEPON,x ; turn on stepper motor phase indicated in X
nop ; dead code
nop
lda #$56
jsr MON_WAIT ; wait stepper delay (returns A=00, carry set)
sta STEPOFF,x ; turn off stepper motor phase indicated in X
bcs LC6C1 ; branch always

View File

@ -1,156 +0,0 @@
; da65 V2.11.0 - (C) Copyright 2000-2005, Ullrich von Bassewitz
; Created: 2022-01-26 21:00:18
; Input file: xaa
; Page: 1
.setcpu "6502"
.org $c600
A2L := $3e
MON_WAIT := $FCA8
GETLNZ := $FD67
BELL := $FF3A
IORTS := $FF58
GETNUM := $FFA7
lda #$A3 ; '#'
sta $33 ; set input-prompt character to '#'
LC604: jsr BELL
LC607: jsr GETLNZ ; start new line and take input
lda #$00
sta $F2
LC60E: sta $C010 ; clear keyboard strobe
sta $F3
ldy $F2
jsr GETNUM ; parse hex into A2, A has last char xor $b0
; plus $89
sty $F2
cmp #$C6 ; $C6 from $8D (return)
beq LC607 ; no more input, go prompt for new input
cmp #$EC ; 'S'
beq CMD_S
cmp #$F0 ; 'W'
beq CMD_W
cmp #$F3 ; 'Z'
beq CMD_Z
ldy #$7F
cmp #$06 ; 'M'
beq CMD_MX
cmp #$EB ; 'R'
beq CMD_R
ldx #$06
stx $F3
cmp #$F1 ; 'X'
beq CMD_MX
cmp #$EA ; 'Q'
bne LC604 ; BEEP and prompt for new input
brk ; 'Q' exits out
; 'R'
CMD_R: lda #$50
sta $FC
txa
adc #$00
sta $F3
lda #$00
beq LC651
; 'S': seek logical-track index in A2L ('22S' seeks logical track $22)
CMD_S: lda A2L
asl a
LC651: sta $F0
ldy #$FF
bne CMD_MX
; 'Z'
CMD_Z: lda A2L
asl a
sta $F1
ldy #$00
beq CMD_MX
LC660: lda #$50
jsr MON_WAIT
sta $C088,x
ldy A2L
LC66A: jsr MON_WAIT
dey
bpl LC66A
bmi LC68E
LC672: lda #$00
beq LC60E
; 'W'
CMD_W: lda A2L
sta $FF
ldy #$0F
CMD_MX: sty $09
jsr IORTS
tsx
lda $0100,x
asl a
asl a
asl a
asl a
sta $FD
adc $F3
tax
LC68E: sta $C089,x
lda $09
beq LC6BA
bmi LC6BA
asl a
bmi LC6AC
sta $C08F,x
LC69D: lda $09
asl a
bmi LC660
nop
nop
lda $FF
sta $C08D,x
cmp $C08C,x
LC6AC: lda $C000
eor #$9B
bne LC69D
ldx $FD
sta $C08E,x
LC6B8: beq LC672
LC6BA: ldx $FD
sta $C089,x
LC6BF: ldy $FC
LC6C1: cpy $F0
bne LC6E3
lda $F0
sta $FC
lda $09
bne LC672
lda $F0
ldy $F1
sta $F1
sty $F0
lda $C000
eor #$9B
beq LC6B8
lda #$73
jsr MON_WAIT
bcs LC6BF
LC6E3: bcs LC6E7
iny
iny
LC6E7: dey
tya
and #$03
asl a
ora $FD
tax
lsr a
lsr a
sta $C081,x
nop
nop
lda #$56
jsr MON_WAIT
sta $C080,x
bcs LC6C1

Binary file not shown.

View File

@ -1,559 +0,0 @@
P CODE 00
P UNITS CUST 0
P arrayDim N
317+5V VIA MD0157PA00X+053406Y-028898X0315Y0000R000S3
317+5V VIA MD0157PA00X+060748Y-029016X0315Y0000R000S3
317+5V VIA MD0157PA00X+076929Y-034843X0315Y0000R000S3
317GND VIA MD0157PA00X+047598Y-048248X0315Y0000R000S3
317GND VIA MD0157PA00X+082972Y-043406X0315Y0000R000S3
317GND VIA MD0157PA00X+035295Y-036594X0315Y0000R000S3
317GND VIA MD0157PA00X+035335Y-048031X0315Y0000R000S3
317GND VIA MD0157PA00X+062795Y-035709X0315Y0000R000S3
317GND VIA MD0157PA00X+029232Y-048012X0315Y0000R000S3
317GND VIA MD0157PA00X+075906Y-047874X0315Y0000R000S3
317GND VIA MD0157PA00X+081811Y-031358X0315Y0000R000S3
317GND VIA MD0157PA00X+053720Y-047795X0315Y0000R000S3
317GND VIA MD0157PA00X+032382Y-042480X0315Y0000R000S3
317-(J1-~{DMAIN}) VIA MD0157PA00X+090079Y-050827X0315Y0000R000S3
317-(J1-~{INTIN}) VIA MD0157PA00X+089035Y-050886X0315Y0000R000S3
317R{SLASH}~{W} VIA MD0157PA00X+088524Y-046988X0315Y0000R000S3
317A7 VIA MD0157PA00X+078937Y-050413X0315Y0000R000S3
317A6 VIA MD0157PA00X+078169Y-049862X0315Y0000R000S3
317A5 VIA MD0157PA00X+077441Y-049350X0315Y0000R000S3
317A4 VIA MD0157PA00X+076673Y-048858X0315Y0000R000S3
317A3 VIA MD0157PA00X+073917Y-050138X0315Y0000R000S3
317A2 VIA MD0157PA00X+074665Y-049823X0315Y0000R000S3
317A1 VIA MD0157PA00X+075413Y-049370X0315Y0000R000S3
317A0 VIA MD0157PA00X+075650Y-048602X0315Y0000R000S3
317~{IOSEL} VIA MD0157PA00X+065768Y-039882X0315Y0000R000S3
317~{IOSEL} VIA MD0157PA00X+079646Y-039843X0315Y0000R000S3
317~{IOSEL} VIA MD0157PA00X+066142Y-050866X0315Y0000R000S3
317~{IOSEL} VIA MD0157PA00X+080000Y-043583X0315Y0000R000S3
317~{RESET} VIA MD0157PA00X+062087Y-038917X0315Y0000R000S3
317-12V VIA MD0157PA00X+078937Y-048622X0315Y0000R000S3
3177M VIA MD0157PA00X+044843Y-038937X0315Y0000R000S3
3177M VIA MD0157PA00X+078976Y-034843X0315Y0000R000S3
317Q3 VIA MD0157PA00X+077913Y-034606X0315Y0000R000S3
317Q3 VIA MD0157PA00X+043622Y-038701X0315Y0000R000S3
317~{DEVSEL} VIA MD0157PA00X+087480Y-046988X0315Y0000R000S3
317~{DEVSEL} VIA MD0157PA00X+079449Y-050945X0315Y0000R000S3
317D7 VIA MD0157PA00X+055433Y-049272X0315Y0000R000S3
317D7 VIA MD0157PA00X+073346Y-048346X0315Y0000R000S3
317D6 VIA MD0157PA00X+056201Y-049508X0315Y0000R000S3
317D6 VIA MD0157PA00X+072382Y-048858X0315Y0000R000S3
317D5 VIA MD0157PA00X+071594Y-049134X0315Y0000R000S3
317D5 VIA MD0157PA00X+056909Y-049803X0315Y0000R000S3
317D4 VIA MD0157PA00X+057894Y-050295X0315Y0000R000S3
317D4 VIA MD0157PA00X+070886Y-049626X0315Y0000R000S3
317D3 VIA MD0157PA00X+062382Y-046791X0315Y0000R000S3
317D2 VIA MD0157PA00X+063346Y-047579X0315Y0000R000S3
317D2 VIA MD0157PA00X+067598Y-046319X0315Y0000R000S3
317D0 VIA MD0157PA00X+067559Y-040394X0315Y0000R000S3
317+12V VIA MD0157PA00X+085413Y-032441X0315Y0000R000S3
317+12V VIA MD0157PA00X+069370Y-033858X0315Y0000R000S3
317PH1 VIA MD0157PA00X+071850Y-029154X0315Y0000R000S3
317PH2 VIA MD0157PA00X+072854Y-028622X0315Y0000R000S3
317PH3 VIA MD0157PA00X+073858Y-028386X0315Y0000R000S3
317~{WREQ} VIA MD0157PA00X+075157Y-027894X0315Y0000R000S3
317~{EN.A} VIA MD0157PA00X+062264Y-027874X0315Y0000R000S3
317RD VIA MD0157PA00X+040157Y-028248X0315Y0000R000S3
317RD VIA MD0157PA00X+046417Y-028661X0315Y0000R000S3
317RD VIA MD0157PA00X+078406Y-026850X0315Y0000R000S3
317WR VIA MD0157PA00X+041831Y-027835X0315Y0000R000S3
317WR VIA MD0157PA00X+041791Y-046594X0315Y0000R000S3
317WR VIA MD0157PA00X+079429Y-026634X0315Y0000R000S3
317PWM VIA MD0157PA00X+080138Y-026142X0315Y0000R000S3
317PWM VIA MD0157PA00X+029370Y-028307X0315Y0000R000S3
317~{EN.B} VIA MD0157PA00X+055197Y-027874X0315Y0000R000S3
317~{EN.B} VIA MD0157PA00X+077106Y-027402X0315Y0000R000S3
317NET-(J4-PIN_2) VIA MD0157PA00X+074311Y-036476X0315Y0000R000S3
317NET-(J4-PIN_3) VIA MD0157PA00X+073839Y-037441X0315Y0000R000S3
317U10_13 VIA MD0157PA00X+052972Y-040020X0315Y0000R000S3
317U10_13 VIA MD0157PA00X+053524Y-042500X0315Y0000R000S3
317NET-(U1-CEP) VIA MD0157PA00X+032579Y-046437X0315Y0000R000S3
317NET-(U1-~{PE}) VIA MD0157PA00X+035020Y-044193X0315Y0000R000S3
317NET-(U1-Q3) VIA MD0157PA00X+032953Y-026909X0315Y0000R000S3
317NET-(U1-Q3) VIA MD0157PA00X+054173Y-025512X0315Y0000R000S3
317U12_11 VIA MD0157PA00X+046988Y-031102X0315Y0000R000S3
317NET-(U2-PAD3) VIA MD0157PA00X+028484Y-032126X0315Y0000R000S3
317NET-(U11-D1) VIA MD0157PA00X+034961Y-042480X0315Y0000R000S3
317U7_5 VIA MD0157PA00X+020335Y-034724X0315Y0000R000S3
317U7_13 VIA MD0157PA00X+023740Y-034961X0315Y0000R000S3
317U11_7 VIA MD0157PA00X+040669Y-047402X0315Y0000R000S3
317U7_2 VIA MD0157PA00X+041181Y-044724X0315Y0000R000S3
317NET-(U2-PAD10) VIA MD0157PA00X+038661Y-046004X0315Y0000R000S3
317NET-(U12B-Q) VIA MD0157PA00X+051457Y-049606X0315Y0000R000S3
317NET-(U12B-Q) VIA MD0157PA00X+038642Y-049882X0315Y0000R000S3
317NET-(U12B-Q) VIA MD0157PA00X+038248Y-041988X0315Y0000R000S3
317NET-(U2-PAD13) VIA MD0157PA00X+037677Y-043445X0315Y0000R000S3
317NET-(U3-PAD4) VIA MD0157PA00X+027579Y-032992X0315Y0000R000S3
317U12_3 VIA MD0157PA00X+044567Y-042756X0315Y0000R000S3
317NET-(U10A-C) VIA MD0157PA00X+036673Y-038110X0315Y0000R000S3
317NET-(U10A-C) VIA MD0157PA00X+046594Y-038110X0315Y0000R000S3
317NET-(U10A-C) VIA MD0157PA00X+042146Y-038130X0315Y0000R000S3
317U12_12 VIA MD0157PA00X+052894Y-032165X0315Y0000R000S3
317U17_10 VIA MD0157PA00X+090512Y-033760X0315Y0000R000S3
317U17_10 VIA MD0157PA00X+054449Y-034016X0315Y0000R000S3
317U12_13 VIA MD0157PA00X+050295Y-034016X0315Y0000R000S3
317U17_11 VIA MD0157PA00X+090000Y-034823X0315Y0000R000S3
317U17_11 VIA MD0157PA00X+057618Y-037185X0315Y0000R000S3
317U17_11 VIA MD0157PA00X+027520Y-037559X0315Y0000R000S3
317U11_1 VIA MD0157PA00X+043110Y-025098X0315Y0000R000S3
317U11_1 VIA MD0157PA00X+094803Y-033130X0315Y0000R000S3
317U11_1 VIA MD0157PA00X+056516Y-029665X0315Y0000R000S3
317U11_1 VIA MD0157PA00X+055374Y-025000X0315Y0000R000S3
317U17_9 VIA MD0157PA00X+091280Y-033287X0315Y0000R000S3
317U10_14 VIA MD0157PA00X+030945Y-039567X0315Y0000R000S3
317U10_14 VIA MD0157PA00X+049055Y-039409X0315Y0000R000S3
317U10_14 VIA MD0157PA00X+064331Y-039744X0315Y0000R000S3
317U10_14 VIA MD0157PA00X+056378Y-039154X0315Y0000R000S3
317NET-(U17-Q7) VIA MD0157PA00X+029902Y-038169X0315Y0000R000S3
317NET-(U17-Q7) VIA MD0157PA00X+089272Y-035374X0315Y0000R000S3
317NET-(U17-Q7) VIA MD0157PA00X+065807Y-036555X0315Y0000R000S3
317NET-(U13-S1) VIA MD0157PA00X+094862Y-032165X0315Y0000R000S3
317NET-(U13-S1) VIA MD0157PA00X+030020Y-027736X0315Y0000R000S3
317NET-(U13-S1) VIA MD0157PA00X+053169Y-026220X0315Y0000R000S3
317U13_11 VIA MD0157PA00X+054685Y-049902X0315Y0000R000S3
317U13_11 VIA MD0157PA00X+027539Y-049941X0315Y0000R000S3
317U13_11 VIA MD0157PA00X+054154Y-044213X0315Y0000R000S3
317LATCH_D7 VIA MD0157PA00X+031358Y-038661X0315Y0000R000S3
317LATCH_D7 VIA MD0157PA00X+069783Y-036535X0315Y0000R000S3
317U15_11 VIA MD0157PA00X+069882Y-050059X0315Y0000R000S3
317U15_11 VIA MD0157PA00X+033799Y-050472X0315Y0000R000S3
317U11_10 VIA MD0157PA00X+060394Y-046791X0315Y0000R000S3
317LATCH_D3 VIA MD0157PA00X+062343Y-041358X0315Y0000R000S3
317NET-(U15-OE) VIA MD0157PA00X+070295Y-033957X0315Y0000R000S3
317NET-(U15-OE) VIA MD0157PA00X+092008Y-032756X0315Y0000R000S3
317+5C VIA MD0157PA00X+023031Y-034154X0315Y0000R000S3
317+5C Q1 -1 D0315PA00X+056323Y-026043X0591Y0591R000S0
317NET-(Q1-B) Q1 -2 D0315PA00X+057323Y-026043X0591Y0000R000S0
317+5V Q1 -3 D0315PA00X+058323Y-026043X0591Y0000R000S0
317+5C U10 -16 D0315PA00X+039870Y-040791X0630Y0630R000S0
317+5C U10 -15 D0315PA00X+039870Y-041791X0630Y0630R000S0
317U10_14 U10 -14 D0315PA00X+039870Y-042791X0630Y0630R000S0
317U10_13 U10 -13 D0315PA00X+039870Y-043791X0630Y0630R000S0
317NET-(U1-~{PE}) U10 -12 D0315PA00X+039870Y-044791X0630Y0630R000S0
317+5C U10 -11 D0315PA00X+039870Y-045791X0630Y0630R000S0
317WR U10 -10 D0315PA00X+039870Y-046791X0630Y0630R000S0
31710B-~{Q}-PAD9) U10 -9 D0315PA00X+039870Y-047791X0630Y0630R000S0
317GND U10 -8 D0315PA00X+036870Y-047791X0630Y0630R000S0
317NET-(U1-CEP) U10 -7 D0315PA00X+036870Y-046791X0630Y0630R000S0
317-(U10A-Q-PAD6) U10 -6 D0315PA00X+036870Y-045791X0630Y0630R000S0
317U12_6 U10 -5 D0315PA00X+036870Y-044791X0630Y0630R000S0
317NET-(U10A-C) U10 -4 D0315PA00X+036870Y-043791X0630Y0630R000S0
317GND U10 -3 D0315PA00X+036870Y-042791X0630Y0630R000S0
317GND U10 -2 D0315PA00X+036870Y-041791X0630Y0630R000S0
317U11_1 U10 -1 D0315PA00X+036870Y-040791X0630Y0630R000S0
317+12V C5 -1 D0315PA00X+086417Y-034193X0630Y0000R000S0
317GND C5 -2 D0315PA00X+094291Y-034193X0630Y0630R000S0
317ET-(U7A-RCEXT) C3 -1 D0315PA00X+020315Y-035984X0630Y0000R000S0
317GND C3 -2 D0315PA00X+025236Y-035984X0630Y0630R000S0
317+12V C11 -1 D0315PA00X+082953Y-040846X0630Y0000R090S0
317GND C11 -2 D0315PA00X+082953Y-045768X0630Y0630R090S0
317NET-(Q1-B) R7 -2 D0315PA00X+059823Y-031457X0630Y0630R270S0
317NET-(R7-PAD1) R7 -1 D0315PA00X+059823Y-036457X0630Y0000R270S0
317+5C U11 -16 D0315PA00X+045894Y-040791X0630Y0630R000S0
317NET-(U11-Q5) U11 -15 D0315PA00X+045894Y-041791X0630Y0630R000S0
317U12_6 U11 -14 D0315PA00X+045894Y-042791X0630Y0630R000S0
317NET-(U11-D4) U11 -13 D0315PA00X+045894Y-043791X0630Y0630R000S0
317NET-(U11-D3) U11 -12 D0315PA00X+045894Y-044791X0630Y0630R000S0
317NET-(U11-D3) U11 -11 D0315PA00X+045894Y-045791X0630Y0630R000S0
317U11_10 U11 -10 D0315PA00X+045894Y-046791X0630Y0630R000S0
317NET-(U11-CP) U11 -9 D0315PA00X+045894Y-047791X0630Y0630R000S0
317GND U11 -8 D0315PA00X+042894Y-047791X0630Y0630R000S0
317U11_7 U11 -7 D0315PA00X+042894Y-046791X0630Y0630R000S0
317NET-(U11-D2) U11 -6 D0315PA00X+042894Y-045791X0630Y0630R000S0
317U7_2 U11 -5 D0315PA00X+042894Y-044791X0630Y0630R000S0
317NET-(U11-D1) U11 -4 D0315PA00X+042894Y-043791X0630Y0630R000S0
317NET-(U10A-C) U11 -3 D0315PA00X+042894Y-042791X0630Y0630R000S0
317NET-(U11-D4) U11 -2 D0315PA00X+042894Y-041791X0630Y0630R000S0
317U11_1 U11 -1 D0315PA00X+042894Y-040791X0630Y0630R000S0
317GND C9 -2 D0315PA00X+047559Y-045787X0630Y0630R090S0
317+5C C9 -1 D0315PA00X+047559Y-040866X0630Y0000R090S0
317-12V C12 -1 D0315PA00X+084528Y-048012X0630Y0000R000S0
317GND C12 -2 D0315PA00X+089449Y-048012X0630Y0630R000S0
317+5V R10 -1 D0315PA00X+068287Y-033976X0630Y0000R270S0
317NET-(J4-PIN_2) R10 -2 D0315PA00X+068287Y-028976X0630Y0630R270S0
317NET-(U4B-THR) C1 -2 D0315PA00X+052067Y-026142X0630Y0630R000S0
317+5V C1 -1 D0315PA00X+044193Y-026142X0630Y0000R000S0
317GND C8 -2 D0315PA00X+035276Y-045374X0630Y0630R090S0
317+5C C8 -1 D0315PA00X+035276Y-040453X0630Y0000R090S0
317+5C U3 -14 D0315PA00X+045894Y-029591X0630Y0630R000S0
317RD U3 -13 D0315PA00X+045894Y-030591X0630Y0630R000S0
317NET-(U3-PAD12) U3 -12 D0315PA00X+045894Y-031591X0630Y0630R000S0
3177M U3 -11 D0315PA00X+045894Y-032591X0630Y0630R000S0
317NET-(U11-CP) U3 -10 D0315PA00X+045894Y-033591X0630Y0630R000S0
317NET-(U3-PAD12) U3 -9 D0315PA00X+045894Y-034591X0630Y0630R000S0
317NET-(U10A-C) U3 -8 D0315PA00X+045894Y-035591X0630Y0630R000S0
317GND U3 -7 D0315PA00X+042894Y-035591X0630Y0630R000S0
317U12_3 U3 -6 D0315PA00X+042894Y-034591X0630Y0630R000S0
317NET-(U3-PAD4) U3 -5 D0315PA00X+042894Y-033591X0630Y0630R000S0
317NET-(U3-PAD4) U3 -4 D0315PA00X+042894Y-032591X0630Y0630R000S0
317NET-(U1-CP) U3 -3 D0315PA00X+042894Y-031591X0630Y0630R000S0
317NET-(U1-CP) U3 -2 D0315PA00X+042894Y-030591X0630Y0630R000S0
317Q3 U3 -1 D0315PA00X+042894Y-029591X0630Y0630R000S0
317ET-(U7A-RCEXT) R2 -3 D0315PA00X+024630Y-030685X0567Y0000R090S0
317ET-(U7A-RCEXT) R2 -2 D0315PA00X+025630Y-029685X0567Y0000R090S0
317+5C R2 -1 D0315PA00X+026630Y-030685X0567Y0000R090S0
317GND C7 -2 D0315PA00X+029173Y-045650X0630Y0630R090S0
317+5C C7 -1 D0315PA00X+029173Y-040728X0630Y0000R090S0
317NET-(Q1-B) R6 -2 D0315PA00X+059823Y-030531X0630Y0630R090S0
317+5V R6 -1 D0315PA00X+059823Y-025531X0630Y0000R090S0
317NET-(U4B-THR) R5 -2 D0315PA00X+053465Y-035492X0630Y0630R090S0
317+5V R5 -1 D0315PA00X+053465Y-030492X0630Y0000R090S0
317GND C10 -2 D0315PA00X+053720Y-045807X0630Y0630R090S0
317+5C C10 -1 D0315PA00X+053720Y-040886X0630Y0000R090S0
317+5V U4 -14 D0315PA00X+052047Y-029591X0630Y0630R000S0
317U4B-DIS-PAD13) U4 -13 D0315PA00X+052047Y-030591X0630Y0630R000S0
317NET-(U4B-THR) U4 -12 D0315PA00X+052047Y-031591X0630Y0630R000S0
317(U4B-CV-PAD11) U4 -11 D0315PA00X+052047Y-032591X0630Y0630R000S0
317-(U4B-R-PAD10) U4 -10 D0315PA00X+052047Y-033591X0630Y0630R000S0
317NET-(U4B-Q) U4 -9 D0315PA00X+052047Y-034591X0630Y0630R000S0
317NET-(U4B-THR) U4 -8 D0315PA00X+052047Y-035591X0630Y0630R000S0
317GND U4 -7 D0315PA00X+049047Y-035591X0630Y0630R000S0
317NET-(U4A-THR) U4 -6 D0315PA00X+049047Y-034591X0630Y0630R000S0
317NET-(U4A-Q) U4 -5 D0315PA00X+049047Y-033591X0630Y0630R000S0
317+5V U4 -4 D0315PA00X+049047Y-032591X0630Y0630R000S0
317-(U4A-CV-PAD3) U4 -3 D0315PA00X+049047Y-031591X0630Y0630R000S0
317NET-(U4A-THR) U4 -2 D0315PA00X+049047Y-030591X0630Y0630R000S0
317(U4A-DIS-PAD1) U4 -1 D0315PA00X+049047Y-029591X0630Y0630R000S0
317NET-(U4A-THR) R4 -1 D0315PA00X+047520Y-034626X0630Y0000R270S0
317+5V R4 -2 D0315PA00X+047520Y-029626X0630Y0630R270S0
317NET-(U15-OE) U15 -1 D0315PA00X+068417Y-037886X0630Y0630R000S0
317D0 U15 -2 D0315PA00X+068417Y-038886X0630Y0630R000S0
317LATCH_D0 U15 -3 D0315PA00X+068417Y-039886X0630Y0630R000S0
317LATCH_D1 U15 -4 D0315PA00X+068417Y-040886X0630Y0630R000S0
317D1 U15 -5 D0315PA00X+068417Y-041886X0630Y0630R000S0
317D2 U15 -6 D0315PA00X+068417Y-042886X0630Y0630R000S0
317LATCH_D2 U15 -7 D0315PA00X+068417Y-043886X0630Y0630R000S0
317LATCH_D3 U15 -8 D0315PA00X+068417Y-044886X0630Y0630R000S0
317D3 U15 -9 D0315PA00X+068417Y-045886X0630Y0630R000S0
317GND U15 -10 D0315PA00X+068417Y-046886X0630Y0630R000S0
317U15_11 U15 -11 D0315PA00X+071417Y-046886X0630Y0630R000S0
317D4 U15 -12 D0315PA00X+071417Y-045886X0630Y0630R000S0
317LATCH_D4 U15 -13 D0315PA00X+071417Y-044886X0630Y0630R000S0
317LATCH_D5 U15 -14 D0315PA00X+071417Y-043886X0630Y0630R000S0
317D5 U15 -15 D0315PA00X+071417Y-042886X0630Y0630R000S0
317D6 U15 -16 D0315PA00X+071417Y-041886X0630Y0630R000S0
317LATCH_D6 U15 -17 D0315PA00X+071417Y-040886X0630Y0630R000S0
317LATCH_D7 U15 -18 D0315PA00X+071417Y-039886X0630Y0630R000S0
317D7 U15 -19 D0315PA00X+071417Y-038886X0630Y0630R000S0
317+5V U15 -20 D0315PA00X+071417Y-037886X0630Y0630R000S0
327~{IOSEL} J1 -1 A01X+066819Y-052835X2500Y0600R090S2
327A0 J1 -2 A01X+067819Y-052835X2500Y0600R090S2
327A1 J1 -3 A01X+068819Y-052835X2500Y0600R090S2
327A2 J1 -4 A01X+069819Y-052835X2500Y0600R090S2
327A3 J1 -5 A01X+070819Y-052835X2500Y0600R090S2
327A4 J1 -6 A01X+071819Y-052835X2500Y0600R090S2
327A5 J1 -7 A01X+072819Y-052835X2500Y0600R090S2
327A6 J1 -8 A01X+073819Y-052835X2500Y0600R090S2
327A7 J1 -9 A01X+074819Y-052835X2500Y0600R090S2
327-(J1-A8-PAD10) J1 -10 A01X+075819Y-052835X2500Y0600R090S2
327-(J1-A9-PAD11) J1 -11 A01X+076819Y-052835X2500Y0600R090S2
327(J1-A10-PAD12) J1 -12 A01X+077819Y-052835X2500Y0600R090S2
327(J1-A11-PAD13) J1 -13 A01X+078819Y-052835X2500Y0600R090S2
327(J1-A12-PAD14) J1 -14 A01X+079819Y-052835X2500Y0600R090S2
327(J1-A13-PAD15) J1 -15 A01X+080819Y-052835X2500Y0600R090S2
327(J1-A14-PAD16) J1 -16 A01X+081819Y-052835X2500Y0600R090S2
327(J1-A15-PAD17) J1 -17 A01X+082819Y-052835X2500Y0600R090S2
327R{SLASH}~{W} J1 -18 A01X+083819Y-052835X2500Y0600R090S2
327J1-SYNC-PAD19) J1 -19 A01X+084819Y-052835X2500Y0600R090S2
327IOSTRB}-PAD20) J1 -20 A01X+085819Y-052835X2500Y0600R090S2
327-~{RDY}-PAD21) J1 -21 A01X+086819Y-052835X2500Y0600R090S2
327-~{DMA}-PAD22) J1 -22 A01X+087819Y-052835X2500Y0600R090S2
327-(J1-~{INTIN}) J1 -23 A01X+088819Y-052835X2500Y0600R090S2
327-(J1-~{DMAIN}) J1 -24 A01X+089819Y-052835X2500Y0600R090S2
327+5V J1 -25 A01X+090819Y-052835X2500Y0600R090S2
327GND J1 -26 A02X+090819Y-052835X2500Y0600R090S1
327-(J1-~{DMAIN}) J1 -27 A02X+089819Y-052835X2500Y0600R090S1
327-(J1-~{INTIN}) J1 -28 A02X+088819Y-052835X2500Y0600R090S1
327-~{NMI}-PAD29) J1 -29 A02X+087819Y-052835X2500Y0600R090S1
327-~{IRQ}-PAD30) J1 -30 A02X+086819Y-052835X2500Y0600R090S1
327~{RESET} J1 -31 A02X+085819Y-052835X2500Y0600R090S1
327-~{INH}-PAD32) J1 -32 A02X+084819Y-052835X2500Y0600R090S1
327-12V J1 -33 A02X+083819Y-052835X2500Y0600R090S1
327-5V J1 -34 A02X+082819Y-052835X2500Y0600R090S1
327SH}M2B0-PAD35) J1 -35 A02X+081819Y-052835X2500Y0600R090S1
3277M J1 -36 A02X+080819Y-052835X2500Y0600R090S1
327Q3 J1 -37 A02X+079819Y-052835X2500Y0600R090S1
327J1-PHI1-PAD38) J1 -38 A02X+078819Y-052835X2500Y0600R090S1
327H}M2SEL-PAD39) J1 -39 A02X+077819Y-052835X2500Y0600R090S1
327J1-PHI0-PAD40) J1 -40 A02X+076819Y-052835X2500Y0600R090S1
327~{DEVSEL} J1 -41 A02X+075819Y-052835X2500Y0600R090S1
327D7 J1 -42 A02X+074819Y-052835X2500Y0600R090S1
327D6 J1 -43 A02X+073819Y-052835X2500Y0600R090S1
327D5 J1 -44 A02X+072819Y-052835X2500Y0600R090S1
327D4 J1 -45 A02X+071819Y-052835X2500Y0600R090S1
327D3 J1 -46 A02X+070819Y-052835X2500Y0600R090S1
327D2 J1 -47 A02X+069819Y-052835X2500Y0600R090S1
327D1 J1 -48 A02X+068819Y-052835X2500Y0600R090S1
327D0 J1 -49 A02X+067819Y-052835X2500Y0600R090S1
327+12V J1 -50 A02X+066819Y-052835X2500Y0600R090S1
317GND C4 -2 D0315PA00X+035295Y-034075X0630Y0630R090S0
317+5C C4 -1 D0315PA00X+035295Y-029154X0630Y0000R090S0
317+5V R8 -1 D0315PA00X+066024Y-033858X0630Y0000R090S0
317U10_13 R8 -2 D0315PA00X+066024Y-038858X0630Y0630R090S0
317+5C U14 -16 D0315PA00X+064311Y-040791X0630Y0630R000S0
317LATCH_D0 U14 -15 D0315PA00X+064311Y-041791X0630Y0630R000S0
317LATCH_D1 U14 -14 D0315PA00X+064311Y-042791X0630Y0630R000S0
317LATCH_D2 U14 -13 D0315PA00X+064311Y-043791X0630Y0630R000S0
317LATCH_D3 U14 -12 D0315PA00X+064311Y-044791X0630Y0630R000S0
317U13_11 U14 -11 D0315PA00X+064311Y-045791X0630Y0630R000S0
317NET-(U13-S1) U14 -10 D0315PA00X+064311Y-046791X0630Y0630R000S0
317+5C U14 -9 D0315PA00X+064311Y-047791X0630Y0630R000S0
317GND U14 -8 D0315PA00X+061311Y-047791X0630Y0630R000S0
317(U14-DSL-PAD7) U14 -7 D0315PA00X+061311Y-046791X0630Y0630R000S0
317D3 U14 -6 D0315PA00X+061311Y-045791X0630Y0630R000S0
317D2 U14 -5 D0315PA00X+061311Y-044791X0630Y0630R000S0
317D1 U14 -4 D0315PA00X+061311Y-043791X0630Y0630R000S0
317D0 U14 -3 D0315PA00X+061311Y-042791X0630Y0630R000S0
317U11_10 U14 -2 D0315PA00X+061311Y-041791X0630Y0630R000S0
317U12_6 U14 -1 D0315PA00X+061311Y-040791X0630Y0630R000S0
317NET-(U4A-THR) C15 -1 D0315PA00X+048031Y-037008X0630Y0000R000S0
317GND C15 -2 D0315PA00X+052953Y-037008X0630Y0630R000S0
317ET-(U7B-RCEXT) C2 -1 D0315PA00X+020315Y-033622X0630Y0000R000S0
317GND C2 -2 D0315PA00X+025236Y-033622X0630Y0630R000S0
317+5C U13 -16 D0315PA00X+058118Y-040791X0630Y0630R000S0
317LATCH_D4 U13 -15 D0315PA00X+058118Y-041791X0630Y0630R000S0
317LATCH_D5 U13 -14 D0315PA00X+058118Y-042791X0630Y0630R000S0
317LATCH_D6 U13 -13 D0315PA00X+058118Y-043791X0630Y0630R000S0
317U10_14 U13 -12 D0315PA00X+058118Y-044791X0630Y0630R000S0
317U13_11 U13 -11 D0315PA00X+058118Y-045791X0630Y0630R000S0
317NET-(U13-S1) U13 -10 D0315PA00X+058118Y-046791X0630Y0630R000S0
317+5C U13 -9 D0315PA00X+058118Y-047791X0630Y0630R000S0
317GND U13 -8 D0315PA00X+055118Y-047791X0630Y0630R000S0
317(U13-DSL-PAD7) U13 -7 D0315PA00X+055118Y-046791X0630Y0630R000S0
317D7 U13 -6 D0315PA00X+055118Y-045791X0630Y0630R000S0
317D6 U13 -5 D0315PA00X+055118Y-044791X0630Y0630R000S0
317D5 U13 -4 D0315PA00X+055118Y-043791X0630Y0630R000S0
317D4 U13 -3 D0315PA00X+055118Y-042791X0630Y0630R000S0
317LATCH_D3 U13 -2 D0315PA00X+055118Y-041791X0630Y0630R000S0
317U12_6 U13 -1 D0315PA00X+055118Y-040791X0630Y0630R000S0
317+5C U7 -16 D0315PA00X+022579Y-037488X0630Y0630R000S0
317ET-(U7A-RCEXT) U7 -15 D0315PA00X+022579Y-038488X0630Y0630R000S0
317GND U7 -14 D0315PA00X+022579Y-039488X0630Y0630R000S0
317U7_13 U7 -13 D0315PA00X+022579Y-040488X0630Y0630R000S0
3177B-~{Q}-PAD12) U7 -12 D0315PA00X+022579Y-041488X0630Y0630R000S0
317+5C U7 -11 D0315PA00X+022579Y-042488X0630Y0630R000S0
317NET-(U10A-C) U7 -10 D0315PA00X+022579Y-043488X0630Y0630R000S0
317GND U7 -9 D0315PA00X+022579Y-044488X0630Y0630R000S0
317GND U7 -8 D0315PA00X+019579Y-044488X0630Y0630R000S0
317ET-(U7B-RCEXT) U7 -7 D0315PA00X+019579Y-043488X0630Y0630R000S0
317GND U7 -6 D0315PA00X+019579Y-042488X0630Y0630R000S0
317U7_5 U7 -5 D0315PA00X+019579Y-041488X0630Y0630R000S0
317U7A-~{Q}-PAD4) U7 -4 D0315PA00X+019579Y-040488X0630Y0630R000S0
317+5C U7 -3 D0315PA00X+019579Y-039488X0630Y0630R000S0
317U7_2 U7 -2 D0315PA00X+019579Y-038488X0630Y0630R000S0
317GND U7 -1 D0315PA00X+019579Y-037488X0630Y0630R000S0
317+5V C14 -1 D0315PA00X+095630Y-036260X0630Y0000R090S0
317GND C14 -2 D0315PA00X+095630Y-044134X0630Y0630R090S0
317A7 U16 -1 D0315PA00X+075417Y-035886X0630Y0630R000S0
317A6 U16 -2 D0315PA00X+075417Y-036886X0630Y0630R000S0
317A5 U16 -3 D0315PA00X+075417Y-037886X0630Y0630R000S0
317A4 U16 -4 D0315PA00X+075417Y-038886X0630Y0630R000S0
317A3 U16 -5 D0315PA00X+075417Y-039886X0630Y0630R000S0
317A2 U16 -6 D0315PA00X+075417Y-040886X0630Y0630R000S0
317A1 U16 -7 D0315PA00X+075417Y-041886X0630Y0630R000S0
317A0 U16 -8 D0315PA00X+075417Y-042886X0630Y0630R000S0
317D0 U16 -9 D0315PA00X+075417Y-043886X0630Y0630R000S0
317D1 U16 -10 D0315PA00X+075417Y-044886X0630Y0630R000S0
317D2 U16 -11 D0315PA00X+075417Y-045886X0630Y0630R000S0
317GND U16 -12 D0315PA00X+075417Y-046886X0630Y0630R000S0
317D3 U16 -13 D0315PA00X+081417Y-046886X0630Y0630R000S0
317D4 U16 -14 D0315PA00X+081417Y-045886X0630Y0630R000S0
317D5 U16 -15 D0315PA00X+081417Y-044886X0630Y0630R000S0
317D6 U16 -16 D0315PA00X+081417Y-043886X0630Y0630R000S0
317D7 U16 -17 D0315PA00X+081417Y-042886X0630Y0630R000S0
317GND U16 -18 D0315PA00X+081417Y-041886X0630Y0630R000S0
317+12V U16 -19 D0315PA00X+081417Y-040886X0630Y0630R000S0
317~{IOSEL} U16 -20 D0315PA00X+081417Y-039886X0630Y0630R000S0
317-5V U16 -21 D0315PA00X+081417Y-038886X0630Y0630R000S0
317NET-(J4-PIN_3) U16 -22 D0315PA00X+081417Y-037886X0630Y0630R000S0
317NET-(J4-PIN_2) U16 -23 D0315PA00X+081417Y-036886X0630Y0630R000S0
317+5V U16 -24 D0315PA00X+081417Y-035886X0630Y0630R000S0
317ET-(U7B-RCEXT) R1 -3 D0315PA00X+020358Y-030724X0567Y0000R090S0
317ET-(U7B-RCEXT) R1 -2 D0315PA00X+021358Y-029724X0567Y0000R090S0
317+5C R1 -1 D0315PA00X+022358Y-030724X0567Y0000R090S0
317+5V U18 -14 D0315PA00X+093563Y-037764X0630Y0630R000S0
317U11_1 U18 -13 D0315PA00X+093563Y-038764X0630Y0630R000S0
317NET-(U17-Q7) U18 -12 D0315PA00X+093563Y-039764X0630Y0630R000S0
317NET-(U17-Q7) U18 -11 D0315PA00X+093563Y-040764X0630Y0630R000S0
317NET-(U13-S1) U18 -10 D0315PA00X+093563Y-041764X0630Y0630R000S0
317~{DEVSEL} U18 -9 D0315PA00X+093563Y-042764X0630Y0630R000S0
317R{SLASH}~{W} U18 -8 D0315PA00X+093563Y-043764X0630Y0630R000S0
317GND U18 -7 D0315PA00X+090563Y-043764X0630Y0630R000S0
317A0 U18 -6 D0315PA00X+090563Y-042764X0630Y0630R000S0
317~{DEVSEL} U18 -5 D0315PA00X+090563Y-041764X0630Y0630R000S0
317NET-(U18-PAD2) U18 -4 D0315PA00X+090563Y-040764X0630Y0630R000S0
317NET-(U18-PAD2) U18 -3 D0315PA00X+090563Y-039764X0630Y0630R000S0
317NET-(U18-PAD2) U18 -2 D0315PA00X+090563Y-038764X0630Y0630R000S0
317NET-(U15-OE) U18 -1 D0315PA00X+090563Y-037764X0630Y0630R000S0
317RD R3 -2 D0315PA00X+041142Y-034547X0630Y0630R090S0
317+5C R3 -1 D0315PA00X+041142Y-029547X0630Y0000R090S0
317+5C U9 -14 D0315PA00X+033768Y-040791X0630Y0630R000S0
317NET-(U17-Q7) U9 -13 D0315PA00X+033768Y-041791X0630Y0630R000S0
317NET-(U2-PAD13) U9 -12 D0315PA00X+033768Y-042791X0630Y0630R000S0
317U15_11 U9 -11 D0315PA00X+033768Y-043791X0630Y0630R000S0
317TED-(U9-PAD10) U9 -10 D0315PA00X+033768Y-044791X0630Y0630R000S0
317CTED-(U9-PAD9) U9 -9 D0315PA00X+033768Y-045791X0630Y0630R000S0
317CTED-(U9-PAD8) U9 -8 D0315PA00X+033768Y-046791X0630Y0630R000S0
317GND U9 -7 D0315PA00X+030768Y-046791X0630Y0630R000S0
317LATCH_D7 U9 -6 D0315PA00X+030768Y-045791X0630Y0630R000S0
317U10_14 U9 -5 D0315PA00X+030768Y-044791X0630Y0630R000S0
317NET-(U8-PAD11) U9 -4 D0315PA00X+030768Y-043791X0630Y0630R000S0
317NET-(U1-~{MR}) U9 -3 D0315PA00X+030768Y-042791X0630Y0630R000S0
317NET-(U17-Q7) U9 -2 D0315PA00X+030768Y-041791X0630Y0630R000S0
317NET-(U12B-Q) U9 -1 D0315PA00X+030768Y-040791X0630Y0630R000S0
317+12V C6 -1 D0315PA00X+095492Y-029252X0630Y0000R090S0
317GND C6 -2 D0315PA00X+095492Y-034173X0630Y0630R090S0
317NET-(U11-Q5) U12 -1 D0315PA00X+049047Y-040791X0630Y0630R000S0
317U10_14 U12 -2 D0315PA00X+049047Y-041791X0630Y0630R000S0
317U12_3 U12 -3 D0315PA00X+049047Y-042791X0630Y0630R000S0
317U12_13 U12 -4 D0315PA00X+049047Y-043791X0630Y0630R000S0
317-(U12A-Q-PAD5) U12 -5 D0315PA00X+049047Y-044791X0630Y0630R000S0
317U12_6 U12 -6 D0315PA00X+049047Y-045791X0630Y0630R000S0
317GND U12 -7 D0315PA00X+049047Y-046791X0630Y0630R000S0
31712B-~{Q}-PAD8) U12 -8 D0315PA00X+052047Y-046791X0630Y0630R000S0
317NET-(U12B-Q) U12 -9 D0315PA00X+052047Y-045791X0630Y0630R000S0
317U12_6 U12 -10 D0315PA00X+052047Y-044791X0630Y0630R000S0
317U12_11 U12 -11 D0315PA00X+052047Y-043791X0630Y0630R000S0
317U12_12 U12 -12 D0315PA00X+052047Y-042791X0630Y0630R000S0
317U12_13 U12 -13 D0315PA00X+052047Y-041791X0630Y0630R000S0
317+5C U12 -14 D0315PA00X+052047Y-040791X0630Y0630R000S0
317GND J3 -1 D0394PA00X+070915Y-031315X0669Y0669R270S0
317PH0 J3 -2 D0394PA00X+070915Y-030315X0669Y0669R270S0
317GND J3 -3 D0394PA00X+071915Y-031315X0669Y0669R270S0
317PH1 J3 -4 D0394PA00X+071915Y-030315X0669Y0669R270S0
317GND J3 -5 D0394PA00X+072915Y-031315X0669Y0669R270S0
317PH2 J3 -6 D0394PA00X+072915Y-030315X0669Y0669R270S0
317GND J3 -7 D0394PA00X+073915Y-031315X0669Y0669R270S0
317PH3 J3 -8 D0394PA00X+073915Y-030315X0669Y0669R270S0
317-12V J3 -9 D0394PA00X+074915Y-031315X0669Y0669R270S0
317~{WREQ} J3 -10 D0394PA00X+074915Y-030315X0669Y0669R270S0
317+5V J3 -11 D0394PA00X+075915Y-031315X0669Y0669R270S0
317+5V J3 -12 D0394PA00X+075915Y-030315X0669Y0669R270S0
317+12V J3 -13 D0394PA00X+076915Y-031315X0669Y0669R270S0
317~{EN.B} J3 -14 D0394PA00X+076915Y-030315X0669Y0669R270S0
317+12V J3 -15 D0394PA00X+077915Y-031315X0669Y0669R270S0
317RD J3 -16 D0394PA00X+077915Y-030315X0669Y0669R270S0
317+12V J3 -17 D0394PA00X+078915Y-031315X0669Y0669R270S0
317WR J3 -18 D0394PA00X+078915Y-030315X0669Y0669R270S0
317+12V J3 -19 D0394PA00X+079915Y-031315X0669Y0669R270S0
317PWM J3 -20 D0394PA00X+079915Y-030315X0669Y0669R270S0
317+5C U5 -14 D0315PA00X+058118Y-029591X0630Y0630R000S0
317U11_1 U5 -13 D0315PA00X+058118Y-030591X0630Y0630R000S0
317U17_11 U5 -12 D0315PA00X+058118Y-031591X0630Y0630R000S0
317U12_13 U5 -11 D0315PA00X+058118Y-032591X0630Y0630R000S0
317NET-(U4B-Q) U5 -10 D0315PA00X+058118Y-033591X0630Y0630R000S0
317~{EN.B} U5 -9 D0315PA00X+058118Y-034591X0630Y0630R000S0
317~{EN.A} U5 -8 D0315PA00X+058118Y-035591X0630Y0630R000S0
317GND U5 -7 D0315PA00X+055118Y-035591X0630Y0630R000S0
317~{EN.B} U5 -6 D0315PA00X+055118Y-034591X0630Y0630R000S0
317NET-(U4B-Q) U5 -5 D0315PA00X+055118Y-033591X0630Y0630R000S0
317U17_10 U5 -4 D0315PA00X+055118Y-032591X0630Y0630R000S0
317U12_12 U5 -3 D0315PA00X+055118Y-031591X0630Y0630R000S0
317NET-(U1-Q2) U5 -2 D0315PA00X+055118Y-030591X0630Y0630R000S0
317NET-(U1-Q3) U5 -1 D0315PA00X+055118Y-029591X0630Y0630R000S0
317+5C U2 -14 D0315PA00X+039870Y-029591X0630Y0630R000S0
317NET-(U2-PAD13) U2 -13 D0315PA00X+039870Y-030591X0630Y0630R000S0
317NET-(U1-CP) U2 -12 D0315PA00X+039870Y-031591X0630Y0630R000S0
317NET-(U12B-Q) U2 -11 D0315PA00X+039870Y-032591X0630Y0630R000S0
317NET-(U2-PAD10) U2 -10 D0315PA00X+039870Y-033591X0630Y0630R000S0
317U7_2 U2 -9 D0315PA00X+039870Y-034591X0630Y0630R000S0
317U11_7 U2 -8 D0315PA00X+039870Y-035591X0630Y0630R000S0
317GND U2 -7 D0315PA00X+036870Y-035591X0630Y0630R000S0
317U7_13 U2 -6 D0315PA00X+036870Y-034591X0630Y0630R000S0
317U7_5 U2 -5 D0315PA00X+036870Y-033591X0630Y0630R000S0
317NET-(U11-D1) U2 -4 D0315PA00X+036870Y-032591X0630Y0630R000S0
317NET-(U2-PAD3) U2 -3 D0315PA00X+036870Y-031591X0630Y0630R000S0
317NET-(U1-TC) U2 -2 D0315PA00X+036870Y-030591X0630Y0630R000S0
317NET-(U1-~{PE}) U2 -1 D0315PA00X+036870Y-029591X0630Y0630R000S0
317+5V C13 -1 D0315PA00X+095453Y-048012X0630Y0000R180S0
317GND C13 -2 D0315PA00X+090531Y-048012X0630Y0630R180S0
317+5C U8 -14 D0315PA00X+027626Y-040791X0630Y0630R000S0
317U17_11 U8 -13 D0315PA00X+027626Y-041791X0630Y0630R000S0
317PWM U8 -12 D0315PA00X+027626Y-042791X0630Y0630R000S0
317NET-(U8-PAD11) U8 -11 D0315PA00X+027626Y-043791X0630Y0630R000S0
317NET-(U1-~{PE}) U8 -10 D0315PA00X+027626Y-044791X0630Y0630R000S0
317NET-(U2-PAD10) U8 -9 D0315PA00X+027626Y-045791X0630Y0630R000S0
317U13_11 U8 -8 D0315PA00X+027626Y-046791X0630Y0630R000S0
317GND U8 -7 D0315PA00X+024626Y-046791X0630Y0630R000S0
317NET-(U11-D2) U8 -6 D0315PA00X+024626Y-045791X0630Y0630R000S0
317U7_5 U8 -5 D0315PA00X+024626Y-044791X0630Y0630R000S0
317NET-(U10A-C) U8 -4 D0315PA00X+024626Y-043791X0630Y0630R000S0
317NET-(U2-PAD3) U8 -3 D0315PA00X+024626Y-042791X0630Y0630R000S0
317NET-(U3-PAD4) U8 -2 D0315PA00X+024626Y-041791X0630Y0630R000S0
317NET-(U13-S1) U8 -1 D0315PA00X+024626Y-040791X0630Y0630R000S0
317A1 U17 -1 D0315PA00X+084961Y-036821X0630Y0630R000S0
317A2 U17 -2 D0315PA00X+084961Y-037821X0630Y0630R000S0
317A3 U17 -3 D0315PA00X+084961Y-038821X0630Y0630R000S0
317PH0 U17 -4 D0315PA00X+084961Y-039821X0630Y0630R000S0
317PH1 U17 -5 D0315PA00X+084961Y-040821X0630Y0630R000S0
317PH2 U17 -6 D0315PA00X+084961Y-041821X0630Y0630R000S0
317PH3 U17 -7 D0315PA00X+084961Y-042821X0630Y0630R000S0
317GND U17 -8 D0315PA00X+084961Y-043821X0630Y0630R000S0
317U17_9 U17 -9 D0315PA00X+087961Y-043821X0630Y0630R000S0
317U17_10 U17 -10 D0315PA00X+087961Y-042821X0630Y0630R000S0
317U17_11 U17 -11 D0315PA00X+087961Y-041821X0630Y0630R000S0
317NET-(U17-Q7) U17 -12 D0315PA00X+087961Y-040821X0630Y0630R000S0
317A0 U17 -13 D0315PA00X+087961Y-039821X0630Y0630R000S0
317~{DEVSEL} U17 -14 D0315PA00X+087961Y-038821X0630Y0630R000S0
317~{RESET} U17 -15 D0315PA00X+087961Y-037821X0630Y0630R000S0
317+5V U17 -16 D0315PA00X+087961Y-036821X0630Y0630R000S0
317+5V U6 -14 D0315PA00X+064311Y-030496X0630Y0630R000S0
317NET-(U17-Q7) U6 -13 D0315PA00X+064311Y-031496X0630Y0630R000S0
317~{WREQ} U6 -12 D0315PA00X+064311Y-032496X0630Y0630R000S0
317TED-(U6-PAD11) U6 -11 D0315PA00X+064311Y-033496X0630Y0630R000S0
317TED-(U6-PAD10) U6 -10 D0315PA00X+064311Y-034496X0630Y0630R000S0
317U10_14 U6 -9 D0315PA00X+064311Y-035496X0630Y0630R000S0
317U10_13 U6 -8 D0315PA00X+064311Y-036496X0630Y0630R000S0
317GND U6 -7 D0315PA00X+061311Y-036496X0630Y0630R000S0
317NET-(U4B-THR) U6 -6 D0315PA00X+061311Y-035496X0630Y0630R000S0
317U17_9 U6 -5 D0315PA00X+061311Y-034496X0630Y0630R000S0
317NET-(R7-PAD1) U6 -4 D0315PA00X+061311Y-033496X0630Y0630R000S0
317NET-(U4B-Q) U6 -3 D0315PA00X+061311Y-032496X0630Y0630R000S0
317~{RESET} U6 -2 D0315PA00X+061311Y-031496X0630Y0630R000S0
317NET-(U4A-Q) U6 -1 D0315PA00X+061311Y-030496X0630Y0630R000S0
317GND J2 -1 D0394PA00X+084957Y-031315X0669Y0669R270S0
317PH0 J2 -2 D0394PA00X+084957Y-030315X0669Y0669R270S0
317GND J2 -3 D0394PA00X+085957Y-031315X0669Y0669R270S0
317PH1 J2 -4 D0394PA00X+085957Y-030315X0669Y0669R270S0
317GND J2 -5 D0394PA00X+086957Y-031315X0669Y0669R270S0
317PH2 J2 -6 D0394PA00X+086957Y-030315X0669Y0669R270S0
317GND J2 -7 D0394PA00X+087957Y-031315X0669Y0669R270S0
317PH3 J2 -8 D0394PA00X+087957Y-030315X0669Y0669R270S0
317-12V J2 -9 D0394PA00X+088957Y-031315X0669Y0669R270S0
317~{WREQ} J2 -10 D0394PA00X+088957Y-030315X0669Y0669R270S0
317+5V J2 -11 D0394PA00X+089957Y-031315X0669Y0669R270S0
317+5V J2 -12 D0394PA00X+089957Y-030315X0669Y0669R270S0
317+12V J2 -13 D0394PA00X+090957Y-031315X0669Y0669R270S0
317~{EN.A} J2 -14 D0394PA00X+090957Y-030315X0669Y0669R270S0
317+12V J2 -15 D0394PA00X+091957Y-031315X0669Y0669R270S0
317RD J2 -16 D0394PA00X+091957Y-030315X0669Y0669R270S0
317+12V J2 -17 D0394PA00X+092957Y-031315X0669Y0669R270S0
317WR J2 -18 D0394PA00X+092957Y-030315X0669Y0669R270S0
317+12V J2 -19 D0394PA00X+093957Y-031315X0669Y0669R270S0
317PWM J2 -20 D0394PA00X+093957Y-030315X0669Y0669R270S0
317NET-(J4-PIN_3) R9 -2 D0315PA00X+067323Y-028976X0630Y0630R270S0
317+5V R9 -1 D0315PA00X+067323Y-033976X0630Y0000R270S0
317GND J4 -1 D0394PA00X+063772Y-028031X0669Y0669R270S0
317NET-(J4-PIN_2) J4 -2 D0394PA00X+064772Y-028031X0669Y0669R270S0
317NET-(J4-PIN_3) J4 -3 D0394PA00X+065772Y-028031X0669Y0669R270S0
317GND J4 -4 D0394PA00X+066772Y-028031X0669Y0669R270S0
317+5C U1 -16 D0315PA00X+033768Y-029591X0630Y0630R000S0
317NET-(U1-TC) U1 -15 D0315PA00X+033768Y-030591X0630Y0630R000S0
317U12_11 U1 -14 D0315PA00X+033768Y-031591X0630Y0630R000S0
317-(U1-Q1-PAD13) U1 -13 D0315PA00X+033768Y-032591X0630Y0630R000S0
317NET-(U1-Q2) U1 -12 D0315PA00X+033768Y-033591X0630Y0630R000S0
317NET-(U1-Q3) U1 -11 D0315PA00X+033768Y-034591X0630Y0630R000S0
317NET-(U1-CEP) U1 -10 D0315PA00X+033768Y-035591X0630Y0630R000S0
317NET-(U1-~{PE}) U1 -9 D0315PA00X+033768Y-036591X0630Y0630R000S0
317GND U1 -8 D0315PA00X+030768Y-036591X0630Y0630R000S0
317NET-(U1-CEP) U1 -7 D0315PA00X+030768Y-035591X0630Y0630R000S0
317+5C U1 -6 D0315PA00X+030768Y-034591X0630Y0630R000S0
317GND U1 -5 D0315PA00X+030768Y-033591X0630Y0630R000S0
317GND U1 -4 D0315PA00X+030768Y-032591X0630Y0630R000S0
317GND U1 -3 D0315PA00X+030768Y-031591X0630Y0630R000S0
317NET-(U1-CP) U1 -2 D0315PA00X+030768Y-030591X0630Y0630R000S0
317NET-(U1-~{MR}) U1 -1 D0315PA00X+030768Y-029591X0630Y0630R000S0
999

View File

@ -2,4 +2,5 @@
(version 7)
(lib (name "apple2")(type "KiCad")(uri "${KIPRJMOD}/apple2.kicad_sym")(options "")(descr ""))
(lib (name "TTL")(type "KiCad")(uri "${KIPRJMOD}/TTL.kicad_sym")(options "")(descr ""))
(lib (name "eprom")(type "KiCad")(uri "/home/wileyc/Nextcloud/KiCAD/micro-sci-a2-controller/eprom.kicad_sym")(options "")(descr ""))
)

BIN
usci.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 410 KiB

After

Width:  |  Height:  |  Size: 536 KiB