This is a repository of resources on the web I have found particularly useful. Please report to me any broken links so that this page is kept up-to-date.
Other homebrew CPU projects:
- http://www.homebrewcpu.com– Bill Buzbee’s outstanding Magic-1 minicomputer.
- http://www.stevechamberlin.com/cpu– Steve Chamberlin’s “Big Mess o’ Wires” (which was my inspiration to start my own CPU project).
- http://www.mycpu.eu– Dennis Kuschel’s 8-bit self-built computer with 6502-like CPU, VGA, multi I/O, IDE and a comprehensive software stack (including a rudimentary multitasking OS). Great project.
- http://www.labri.fr/perso/strandh/Teaching/AMP/Common/Strandh-Tutorial/Dir.html– computer architecture tutorial by Robert Strandh. CPU in a nutshell. I liked this one.
- http://6502.org/users/dieter/– Dieter Mueller’s homepage with several custom built CPUs diaries. Lots of interesting technical stuff.
- http://www.armandoacosta.com/cpu/ and http://www.armandoacosta.com/lc81/ – work in progress homebuilt computers by Armando Acosta. Nice project, started about the same time as mine.
- http://www.msarnoff.org/projects/ – various electronics projects (including an 8-bit computer) by Matt Sarnoff. Cool stuff.
Digital electronics in general (and other useful stuff):
- http://www.allaboutcircuits.com– a set of textbooks on analog and digital electronics.
- http://www.allaboutcircuits.com/vol_4/chpt_12/6.html – how to generate overlapping clock signals
- http://www.obelisk.demon.co.uk/6502/ – a compact description of 6502 architecture and instruction set
- http://www.play-hookey.com– Ken Bigelow’s electronics knowledge resource
- http://www.6502.org/users/dieter/uart/uart_0.htm – an article about how to build an UART based on TTL
- http://www.kpsec.freeuk.com/ – Electronics Club (a valuable resource on analog and digital circuits)
- http://www.elo.utfsm.cl/~lsb/elo211/aplicaciones/katz/chapter5/chapter05.doc.html – arithmetic circuits basics
- http://www.sigcon.com/Pubs/news/4_14.htm – useful note on series termination
- http://www.interfacebus.com/Logic_Design_Pitfalls.html – a resource on common logic design flaws (related to noise, reflections and termination, slew rates, etc.)
- http://www.beyondlogic.org/keyboard/keybrd.htm – how to interface to standard AT keyboard over PS/2
- http://www.pjrc.com/tech/8051/ide/wesley.html– how to connect an IDE disk to a microcontroller using an 8255
- http://www.wikihow.com/Convert-a-Computer-ATX-Power-Supply-to-a-Lab-Power-Supply – how to convert an old ATX PSU to a power supply for your designs
- http://www.sfu.ca/phys/430/TTLCMOStips.pdf – Digital TIPS and TIDBITS (useful information on TTL/CMOS pitfalls)
- http://focus.ti.com/lit/an/scla015/scla015.pdf – TI paper on proper ways to build a bus-hold circuit (critical for CMOS)
- http://zone.ni.com/devzone/cda/tut/p/id/3544 – Introduction to Wired-OR Outputs and Open-Collector Circuits. A bunch of interesting stuff on TTL electrical characteristics.
- http://www.retroleum.co.uk – website of a guy building FFGA computers. I have found a very useful description of an 8-bit IDE interface there.
- http://www.repairfaq.org/filipg/LINK/F_IDE-tech.html – IDE Hardware Reference & Information Document
- http://www.sics.se/~adam/old-uip/index.html – Adam Dunkel’s uIP homepage (lightweight TCP/IP stack implementation in C)
- http://www.alternatezone.com/electronics/files/PCBDesignTutorialRevA.pdf – PCB Design Tutorial by David L. Jones
- https://www.speedwaymotors.com/Info/All-About-Electronic-Circuits-for-Kids – collection of resources on basics of electricity and electronics (thanks, Ethan Miller!)
Other useful resources (mainly software related):
- http://epaperpress.com/lexandyacc/– A Compact Guide to Lex & Yacc
- http://www.telegraphics.com.au/sw/info/lcc-pdp11.html – PDP-11 targer for LCC (with comments)
- http://www.airs.com/blog/archives/38 – A series of blog posts explaining what linkers are
- http://www.gsp.com/cgi-bin/man.cgi?topic=a.out – Nicely explained basic structure of a.out object/executable file
And finally, my beloved wife’s cooking blog (in Polish):