README.md updated

This commit is contained in:
Florian Reitz 2017-12-01 14:26:18 +01:00
parent c93b63a92c
commit 85687ed649
6 changed files with 38 additions and 18 deletions

Binary file not shown.

View File

@ -58,7 +58,7 @@
:1003900005D01A18A9000848A9FF9D80C0BD80C0DB
:1003A000F0F6BD83C009019D83C068286038A92785
:1003B00080E438A92B80DF20204170706C655D5B84
:1003C00053642076302E382028632932303137208C
:1003C00053642076312E3020286329323031372093
:1003D000466C6F7269616E20526569747A004000E4
:1003E000000000954100000000F948000001AA87C4
:1003F0005000000200FF7700000000656940000027

View File

@ -12,6 +12,8 @@
</ItemGroup>
<ItemGroup>
<None Include="makefile" />
<None Include="obj\AppleIISd.lst" />
<None Include="README.md" />
<None Include="src\AppleIISd.cfg" />
<None Include="src\AppleIISd.s" />
</ItemGroup>

View File

@ -8,6 +8,8 @@
<None Include="src\AppleIISd.s">
<Filter>src</Filter>
</None>
<None Include="README.md" />
<None Include="obj\AppleIISd.lst" />
</ItemGroup>
<ItemGroup>
<Filter Include="src">

View File

@ -1,24 +1,41 @@
# Apple][Sd
SD card based ProFile replacement for enhanced Apple IIe computers
# AppleIISd
SD card based ProFile replacement for enhanced Apple IIe and IIgs computers
The **Apple][Sd** is a SD card based replaced for the ProFile harddrive. In contrast to other SD card based devices, this card does not replace a Disk II drive. Data is saved directly onto the SD card, not via images on a FAT system, like on other cards. The SD card is accessable with [CiderPress](http://a2ciderpress.com/).
The **AppleIISd** is a SD card based replaced for the ProFile harddrive. In contrast to other SD card based devices, this card does not replace a Disk II drive. Data is saved directly onto the SD card, not via images on a FAT system, like on other cards. The SD card is accessable with [CiderPress](http://a2ciderpress.com/).
A Xilinx CPLD is used as a SPI controller and translates, together with the ROM driver, SD card data to/from the Apple IIe. The VHDL source is based on [SPI65/B](http://www.6502.org/users/andre/spi65b) by André Fachat.
The assembler sources were written in Merlin-8. The [schematics](AppleIISd.pdf) are available as PDF.
The assembler sources are written for CC65. The [schematics](AppleIISd.pdf) are available as PDF.
## Features
* works with ProDOS and GS/OS
* up to 64MB storage space (2x 65535 blocks)
* ProDOS driver in ROM
* Auto boot
* Access LED
* Card detect and write protect sensing
* Skip boot when Open-Apple key is pressed
## Requirements
The Apple][Sd requires and has been tested on an enhanced IIe computer. The ROM code uses some 65c02 opcodes and will therefore not work on a II, II+ or unenhanced IIe. ProDOS versions 1.1 to 2.4.1 seem to work.
The AppleIISd requires an enhanced IIe or IIgs computer. The ROM code uses some 65c02 opcodes and will therefore not work on a II, II+ or unenhanced IIe. It has been tested in the following combinations:
* Apple IIgs Rom 01, GS/OS 6.0.4
* Apple IIgs Rom 01, Prodos 2.4.1
* Apple IIgs Rom 01, Prodos 1.9
* Apple IIe enhanced, 128k, Prodos 2.4.1
* Apple IIe enhanced, 128k, Prodos 1.9
* Apple IIe enhanced, 64k, Prodos 1.9
When a 2732 type ROM is used, the binary image has to be programmed at offset 0x800, because A11 is always high for compatibility with 2716 type ROMs.
## Building the sources
Be sure to have the newest version of CC65 (V2.16) and some kind of Make instaled, then type one of the following comands:
```
make # generate binaries
make OPTIONS=mapfile,listing # generate mapfile and listing, too
make clean # delete binaries
```
Alternatively use the VisualStudio solution.
## Timing
The clock of the SPI bus *SCK* may be derived from either *Phi0* or the *7M* clock. Additionally, the divisor may be 2 to 8.
@ -56,12 +73,11 @@ LDA $C0C0
## TODOs
* Much more testing
* SRAM option (may never work, though)
* Find a use for the IRQ pin
* Enable 4 or 6 volumes under GS/OS
* Use 28 pin socket to support other EPROMS than 2716 and 2732
## Known Bugs
* Does not always boot in slot 7 (may be a faulty connector, though)
* Does not work, when a Z80 card is present
* Does not work with some Z80 cards present
![Front_Img](Images/Card%20Front.jpg)

View File

@ -1,7 +1,7 @@
;*******************************
;
; Apple][Sd Firmware
; Version 0.8
; Version 1.0
;
; (c) Florian Reitz, 2017
;
@ -10,7 +10,7 @@
;
;*******************************
;DEBUG := 0
.define DEBUG 0
; Memory defines
@ -56,7 +56,7 @@ INITED = $80
; find slot nr
.ifdef DEBUG
.if DEBUG
LDA #$04
STA SLOT
LDA #$C4
@ -113,7 +113,7 @@ INITED = $80
;
;*******************************
.ifdef DEBUG
.if DEBUG
; see if slot has a driver already
@ -209,7 +209,7 @@ DRIVER: CLD
LDA CMDHI
PHA
.ifdef DEBUG
.if DEBUG
LDA #$04
STA SLOT
LDA #$C4
@ -252,7 +252,7 @@ DRIVER: CLD
BEQ @READ
CMP #2
BEQ @WRITE
.ifdef DEBUG
.if DEBUG
CMP #$FF
BEQ @TEST
.endif
@ -266,7 +266,7 @@ DRIVER: CLD
BRA @RESTZP
@WRITE: JSR WRITE
BRA @RESTZP
.ifdef DEBUG
.if DEBUG
@TEST: JSR TEST ; do device test
BRA @RESTZP
.endif
@ -801,7 +801,7 @@ WRITE: JSR WRPROT
;
;*******************************
.ifdef DEBUG
.if DEBUG
TEST: LDA SLOT16
PHA
LDA SLOT
@ -869,7 +869,7 @@ TEST: LDA SLOT16
.endif
TEXT: .asciiz " Apple][Sd v0.8 (c)2017 Florian Reitz"
TEXT: .asciiz " Apple][Sd v1.0 (c)2017 Florian Reitz"
CMD0: .byt $40, $00, $00
.byt $00, $00, $95