apple1/README.md

56 lines
2.7 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# SmartyKit One Apple-1 compatible computer repo structure
SmartyKit One Apple-1 compatible computer's drivers and software (http://www.smartykit.io/):
* **Controllers drivers** drivers for all used controllers (Video, Keyboard & Hi-Res Video)
- *Keyboard driver* uses Arduino PS2KeyAdvanced library.
- *Video driver* uses Arduino custom 2.8" TFT screen driver (based on Adafruit driver) and TV Terminal library.
- *Hi-Res Video driver* uses library written by Grant Searle and Dave Curran
* **Garage ASCII art**  beautiful Steve Job's garage ASCII art by Adel Faure
* **ROM** ROM chip firmwarwe source code (6502 assembler) & development configs (Makefile to build your own version of ROM using `ca65` 6502 assembler & config files to run the code in POM1 emulator)
* **POM1 software emulator** Apple-1 software emulator by Verhille Arnaud to test SmartyKit ROM code before burning firmare
![SmartyKit 1 assembly](https://github.com/smartykit/apple1/blob/master/SmartyKit-assembly.jpg?raw=true)
# Highlights
## SmartyKit One's loading splash screen ASCII art
Steve Job's garage ASCII art by Adel Faure:
![Steve Job's Garage](https://github.com/smartykit/apple1/blob/0222fef7f5543b5d2500fdac2c84fd582703d827/Garage%20ASCII%20art/png/400x480.png)
## SmartyKit One's ROM to run on POM1 Software Emulator
POM 1 cross-platform emulator by Verhille Arnaud to test SmartyKit One ROM with software.
[![Video to-do](https://j.gifs.com/K1PNZr.gif)](https://youtu.be/rniZDdS6toI)
## SmartyKit One's ROM development console
Easy-to-use development tool to write your own software for SmartyKLit One (you need just run make in your Terminal) and learn how ROM is organized.
Here is an example:
```bash
SERGEYs-MacBook:ROM_development spanarin$ make
SmartyKit 1: 6502 assembler & C-compiler to ROM (.bin)
Assembling and linking...
ca65 -l ROM_listing.asm SmartyKit1_ROM.asm
ld65 -m ROM.map -o SmartyKit1_ROM.bin SmartyKit1_ROM.o -C apple1.cfg
ld65 -o SmartyKit1_ROM_symon.bin SmartyKit1_ROM.o -C symon.cfg
SERGEYs-MacBook:ROM_development spanarin$
```
## SmartyKit One's 8x8 Pixel Art online tool for program at $FC00 in ROM (FC00R command)
You could draw your own pixel art using our online tool (https://smartykit.github.io/pixelart-project/), get the code for this image and load this code it to SmartyKit (or emulator) memory using command:
```
1111: 3C 42 A5 81 A5 99 42 3C (Return)
FC00R (Return)
```
## SmartyKit One's plates for breadboards
PCB version (black) and Wooden version (file for wood laser cutter: [download](https://github.com/smartykit/apple1/blob/01ea2ec54a94a7a31ee613f007602f0c08cb13ae/SmartyKit-Plate-for-breadboards(laser-cut).cdr?raw=true))
![SmartyKit Plates](https://raw.githubusercontent.com/smartykit/apple1/master/SmartyKit-plates.jpeg)