Jonathan at the Wakefield Show
  Jonathan Harston
  Assembly language and embedded coding portfolio 
  jgh@mdfs.net

8-bit systems       

6502

  • 1994, 2024 M7PLOT - MODE 7 teletext PLOT code.
  • 2424 Mini65 - Added 6551 driver to 65MiniKernel.
  • 2424 6551 - Documention and sample code for 6551 ACIA
  • Date manipulation code
  • 2021-2022 Apple II - Apple II keyboard, character I/O and VDU driver
  • 2016-2019 EhBasic - Updated 6502 EhBasic OS interfaces
  • 2016-2019 Plus1/AP6 - updated Electron AP6 control ROM
  • 2012,2017,2019 DiskUSB - BBC USB disk tools
  • 2017-2018 BBC/USB - BBC USB Keyboard driver
  • 2005,2018 Serial65.src - 6502 Serial Tube client
  • 2018 6502 PS2 keyboard driver
  • 2017 LDPIC - Updated LDPIC to use 12-bit palette
  • 2016 MakeRFS - Fast ROMFS builder
  • 2004,2016 VirtualDFS - Updated VDFS
  • 2006,2015 Tube65.src - Updated 6502/65C102 Tube client
  • 2013-2014 BBCBasic/C64 - Commodore 64 BBC BASIC
  • 1985-2014 Commands - Lots of BBC 6502 machine code
  • 1985-2014 Docs/6502 - 6502 documentation
  • 2011,2013 CRC16.htm - Sample CRC-16 calculation code
  • 2011,2013 CRC32.htm - Sample CRC-32 calculation code
  • 1989-2012 HADFS Source - HADFS filing system
  • BBC/Electron Tube host
  • 2010 Tube/Serial - Serial Tube client and filing system
  • 1989,2010 MIDI - BBC MIDI driver
  • 2008 CUBE/EURO414.src - Updated CUBE EuroBeeb host
  • 2007 BBC/Host230.lst - BBC Tube host disassembly
  • 2007 OswFFv2.src (L) - Updated OSWORD &FF Tube transfer code
  • 2006 Code064.src (L) - 65C12 65Tube client recreated source
  • 2005 M128/Host.lst - Master128 Tube host disassembly
  • 1998 BBC/Host100.lst - BBC Tube host disassembly
  • 1995 SerNet.s (L) - Serial Networking device for Econet
  • 1989,1993 Mouse - BBC mouse driver
  • 1992 SoftRTC soft real-time clock
  • 1991 LCD - LCD display driver
  • 1985-1990 CharROM - BBC font ROM and utilities
  • 1989 BBC user port keyboard driver
  • 1988 FontStyle font effects

    6809

  • 2008,2017,2019 Tube09.src - 6809 Tube client
  • 2008,2014 Serial09.src - 6809 Serial Tube client
  • 2014 6809CoPro - 6809 CoProcessor Technical Reference
  • 2014 6809Tube - 6809 CoProcessor emulator
  • 2014 Basic09 - Patched 6809 Basic to run on 6809 Tube
  • 2014 Code - Various 6809 test code
  • 2008-2014 Docs/6809 - 6809 documentation
  • 2011,2013 CRC16.htm - Sample CRC-16 calculation code
  • 2011,2013 CRC32.htm - Sample CRC-32 calculation code
  • Z80

  • Date manipulation code
  • 1987,2023 SpecIO - Tidied up ZX Spectrum I/O libraries.
  • 2000,2023 CPMZip - Updated Zip/UnZip for CP/M
  • 1993-2003,2018,2019 cZ80Tube - Z80 Emulator in 'C'
  • 1985-2014 Docs/Z80 - Z80 documentation
  • 1985,2004,2012,2015 Harston/Patch.src - JGH Spectrum ROM
  • 2011,2013 CRC16.htm - Sample CRC-16 calculation code
  • 2011,2013 CRC32.htm - Sample CRC-32 calculation code
  • 2010 HDBIOS - Hard Drive BIOS for Acorn CP/M
  • 1989-2009 Z80CONV (L) - Z80 BBC BASIC with BBC I/O
  • 1992-2008 Z80Tube - Z80 Tube emulator
  • 2006 SmallSYS/BIOS.ASM - Small ROMable CP/M BIOS
  • 1984,2004 ExtCat.src - Spectrum extended catalogue
  • 2002 BBCBasic/Host40.src - Spectrum BBC BASIC
  • 1995 SerZ80.src (L) - Z80 Serial Tube client
  • 1992 ZNOS/SJCCP.SRC - Replacement CP/M CCP
  • 1990 TubeZ80.src - Z80 Tube client
  • 1988 JGH/FREE.SRC (L) - CP/M FREE command
  • 1986-1988 TTXT.s - Spectrum teletext display
  • 1986,1987 SAVE.s - Spectrum blocked SAVE command
  • 1986 LOAD.s - Spectrum blocked LOAD command
  • 1986 ThickChr.s - Spectrum thick characters command
  • 1986 CharMake.s - Spectrum thick characters (docs)
  • 1986 RamDisk.s - Spectrum RAMDISK (docs)
  • 1986 Buffer.s - Spectrum buffered load and save
  • 1986 Blocks.s - Spectrum blocked load and save
  • 1986 CAT.s - Spectrum extended catalogue
  • 1985 ExtndKbd.src - ASCII keyboard driver
  • 1985 genskeys.s - ASCII keyboard driver
  • 1985 AscKbd.s - ASCII keyboard driver
  • 1985-1986 PrintOut - Windowed, multisized Screen Printout
  • 1985 Printout - Fast Spectrum Screen Print code
  • 1985 Printer.s - Spectrum Centronics printer driver
  • 1985 Spectrum/Info.src - Microdrive file info
  • 1985 TapeBlk.s - Blocked Spectrum tape formatter
  • 1984 JSWPRINT.s - Display JSW screen
  • Display GCQ map

    6812

  • 2010,2014 Serial12.asm - Serial Tube client
  • 2010-2014 Docs/6812 - 6812 documentation

    8051

  • 2022 8051 - Initial 8051 experiments

  • 16-bit systems       

    PDP11

  • 2024 PDP11 ProgTips number display routines.
  • 2024 BBC BASIC - Working on spawning RT11 commands.
  • 1989-2023 BBC BASIC - PDP11 BBC BASIC
  • 2018-2023 ANSI Keyparser - ANSI keycode parsing
  • 2010-2023 ANSI VDU - ANSI output translation
  • 2022 Date - Date manipulation code
  • 2020 Radix50 - Radix50 conversion routines
  • 2001-2019 PDP11 Assembler - PDP11 Assembler
  • 2004-2018 PDPTube - PDP11 CoProcessor emulator
  • 1989,2005-2015 PDP11/Tube11.src - PDP11 Tube client
  • 2011,2013 CRC16.htm - Sample CRC-16 calculation code
  •  

  • 2011,2013 CRC32.htm - Sample CRC-32 calculation code
  • 1989-2012 Docs/PDP11 - PDP11 documentation
  • 2004-2008 PDP11CoPro - PDP11 CoProcessor Technical Reference

    80x86

  • 2011,2013 CRC16.htm - Sample CRC-16 calculation code
  • 2011,2013 CRC32.htm - Sample CRC-32 calculation code
  • 80x86 - 80x86 Tube resources

  • 32-bit systems       

    ARM

  • Date manipulation code
  • 2011,2013 CRC16.htm - Sample CRC-16 calculation code
  • 2011,2013 CRC32.htm - Sample CRC-32 calculation code
  • 1992-2008 Z80Tube - Z80 CoProcessor emulator
  • 2004 Printer.s (L) - Emulated Spectrum printer
  • 2002 ROMBox.s (L) - Emulated Spectrum ROMBox
  • 1992 SoundSup - RISC OS SOUND/OSWORD 7 support
  • 32000

  • 32000 - 32000 Tube resources

    68000

  • 68000 - 68000 Tube resources

    RISV-V

  • RISCV - RISC-V resources