/apple1

SmartyKit 1 computer construction kit drivers and software. (Apple 1-compatible)

Primary LanguageC++GNU General Public License v3.0GPL-3.0

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

Highlights

SmartyKit One's loading splash screen ASCII art

Steve Job's garage ASCII art by Adel Faure:

Steve Job's Garage

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

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:

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)

SmartyKit Plates