unusedinode/ec64
home download screenshots documentation technical details disk images links
 
Section 4
Various documents
taken fromproject64.c64.org
C=Hacking
taken fromwww.ffd2.com/fridge/chacking/, the Author is Stephen L. Judd

Download all these C=Hacking issues as a .zip file

C=Hacking is an electronic technical publication for the Commodore 8-bit community, by the Commodore 8-bit community. The subject matter covers a broad range of topics including software, hardware, and other areas of interest to technically-minded readers. Articles are contributed on a voluntary basis and represent the cutting edge of Commodore 8-bit technical developments from its most innovative and productive members.

The official homepage is located at jbrain.com.

For comments, or to contribute an article or article idea, email the editor.

  • Issue #01 February 1992
    • Beginning ML -- Part 1, Craig Taylor. Documented and undocumented opcodes
    • Simple Hires Line Drawing Package for the C-128 80-Column Screen, Craig Bruce. Routines to move pixel/draw line, activate graphics/clear screen, restore old character set, desc. of some VDC registers, floating point numbers.
  • Issue #02 April 1992
    • Beginning ML -- Part 2, Craig Taylor. Indexed addressing.
    • An in-depth look at the 8563 Video Chip on the C= 128, Craig Taylor. VDC schematics, register descriptions, programming descriptions.
    • FILE SPLIITER, Mark Lawrence. Turbo Pascal code to split a file.
    • Banking on GEOS, Robert Knop. Memory management, programming under GEOS 128.
    • DYNAMIC MEMORY ALLOCATION FOR THE 128: Breaking the 64K barrier, Craig Bruce. Like the title says :). Includes memory management kernal from ZED 128, sorting routine, etc.
  • Issue #03 July 1992
    • Learning ML -- Part 3, Craig Taylor. Kernal routines, reading the directory, reading the error channel.
    • The Demo Corner: Missing Cycles, Pasi 'Albert' Ojala. Raster timings, bad lines, sprites, demonstration program.
    • Kernal 64/128, Craig Taylor. Kernal routines, listing and description.
    • 64K VDC RAM and an alternate GEOS128 Background Screen, Robert Knop. Programming GEOS128.
    • GeoPaint File Format, Bruce Vrieling. Self explanatory.
    • Rasters: What They Are And How To Use Them, Bruce Vrieling. Interrupts, rasters, example code.
    • Bursting your 128: The Fastload Burst Command, Craig Bruce. Programming 1571 and 1581 drives, bust code library.
  • Issue #04 October 1992
    • Learning ML -- Part 4, Craig Taylor. Development of a Space Invaders game (for the 64 and 128), part 1. Organization, custom characters (VIC and VDC), title screen, debugging, memory considerations.
    • FLI -- More Color To The Screen, Pasi Ojala. VIC info, and of course an explanation of FLI graphics.
    • RS-232 Converter, Warren Tustin. Build a userport->RS-232 converter.
    • Introduction to the VIC-II, Pasi Ojala. VIC features and registers.
    • LITTLE RED READER: MS-DOS file reader for the 128 and 1571/81 drives, Craig Bruce. Like the title says :) All source included/explained or course.
  • Issue #05 March 1993
    • Mail Server Documentation, Craig Taylor. Outdated.
    • The Demo Corner: Stretching Sprites, Pasi Ojala. How to trick VIC into making some very large sprites.
    • Rob Hubbard's Music: Disassembled, Commented, and Explained, Anthony McSweeny. Yet another self-explanatory title.
    • ZPM3 and ZCCP Enhancements for CP/M Plus from Simeon Cran, Randy Winchester. Nice BIOS and BDOS enhancements for CP/M folks.
    • Multitasking on the C=128 Part 1, Craig Taylor. Description of a multitasking kernal for the 128.
    • LITTLE READ READER: MS-DOS file reader/WRITER for the C128 and 1571/81", Craig Bruce. Expanding the program with the capability to write files.
  • Issue #06 September 1993
    • The Demo Corner: DYCP -- Horizontal Scrolling, Pasi Ojala of course :). Making character go up and down as well as right to left in scrolls, along with some awfully nice ASCII diagrams.
    • Opening the Borders, Pasi Ojala. How to remove the borders: top, bottom, and sides. Good stuff.
    • A Heavy-Duty Power Supply for the C=64, John Andrews. Schematics etc. for building -- guess what? :) -- a heavy duty power supply.
    • LZW Compression, Bill Lucier. Another title to make my job easy. Description+source.
    • THREE-KEY ROLLOVER for the C=128 and C=64, Craig Bruce. Modifying the KERNAL to use 3-key rollover (for you fast typists); gets rid of port #1 extraneous input, too. Neat!
  • Issue #07 February 1994
    • Commodore Trivia Corner, Jim Brain.
    • Internet Resources for the Commodore 64/128, Craig Taylor. Intro to the internet; old ftp list.
    • Hiding Kilobytes, Marko Mäkelä Memory management and different memory configurations on the C=64, and lots of subtobics: hiding underneath I/O, sitting in the stack, freezer cartridges.
    • FLD -- Scrolling the screen, Mark Klampar. Code to demonstrate FLD.
    • Tech-tech -- More resolution to vertical shift, Pasi Ojala. Cool.
    • ACE 128/64 PROGRAMMER'S REFERENCE GUIDE, Craig Bruce. Title explains it all.
  • Issue #08 August 1994
    • Trivia Corner, Jim Brain.
    • RS232 Convertor, Walter Wickersham. Another RS-232 interface for you to build.
    • Programming the Commodore RAM Expansion Units (REUs), Richard Hable. Description of REUs and how to program them.
    • A Different Perspective: Three Dimensional Graphics on the C=64, Stephen Judd, George Taylor. Rotations, projections, drawing lines, etc. and an awful lot of text and crappily formatted code.
    • DESIGN OF A 'REAL' OPERATING SYSTEM FOR THE 128: PART I, Craig Bruce. Laying the groundwork for a new OS.
  • Issue #09 January 1995
    • Trivia Corner, Jim Brain.
    • A Different Perspective, Part II, Stephen Judd, George Taylor. Hidden faces, filled faces, mega-fast multiply, and some reasonably formatted code.
    • 2D Graphics Toolbox -- Circles, Stephen Judd. An awfully neat circle drawing algorithm, if I do say so myself. (See also issue 10 or 11).
    • AFLI-specs v1.0, D'Arc/Topaz for Chief/Padua. Build upon FLI to get even more colors.
    • Coding Tricks, compiled from comp.sys.cbm. Neat. Includes stable raster code.
    • C.S. Bruce Interview, Craig Taylor. Neat.
    • Aligning 1541 Drives, Ward Shrake. Lots of good info.
  • Issue #10 June 1995 (Craig Taylor's last issue!)
    • Trivia, Jim Brain.
    • BFLI -- New Graphics Modes 2, Pasi Ojala. Another FLI spinoff trick.
    • Making stable raster routines (C64 and VIC-20), Marko Mäkelä How to make raster effects exactly where you want them (and how to mask an NMI too! :)
    • A Different Perspective, part III, by two old bums. Neat-o line drawing enhancement, general polygon routine, general hidden face removal, alternative filling method, and a misplaced and important addendum to the Circle routine in issue 9.
    • Second SID Chip Installation, Mark Dickenson. Add another SID to your setup.
    • SOLVING LARGE SYSTEMS OF EQUATIONS ON A C64 WITHOUT MEMORY, Alan Jones. "Quartersolve" routine.
    • The World of IRC -- A new life for the C64/128, Bill Lueck. What every 64 user should know about IRC.
    • Swiftlink-232 Application Notes v1.0b, CMD with source code by Craig Bruce. All about Swiftlink and how to program it.
    • Design and implementation of a simple/efficient upload/download protocol, Craig Bruce. Pretty neat protocol (FX) used by ACE.
    • DESIGN AND IMPLEMENTATION OF A 'REAL' OPERATING SYSTEM FOR THE 128: Part II, Craig Bruce. Further laying the groundwork for a multitasking microkernal OS.
  • Issue #11 December 1995
    • Hi Tech Trickery: Sample Dither, George Taylor. Dither a digital sample to gain higher resolution.
    • Speed up RAMLink transfers with the Double-DMA technique, Doug Cotton. Super-fast RAMlink programming.
    • The Graphics Toolbox: Ellipses, Stephen L. Judd. Follow-up to the circle drawing algorithm, logarithmic division.
    • Design and Implementation of an Advanced Text Editor, Craig Bruce. Design and implementation of the very powerful ZED text editor used with ACE.
    • Hacking Graphics: Let's get graphical, Rick Mosdell. Hires file formats: DOODLE!, Koala.
    • Errata, fixes for 2nd SID chip and linear algebra article.
  • Issue #12 March 1996
    • RUN64: Moving to 64 Mode, Doug Cotton. How to switch from 128 mode to 64 mode (and expect it to work on just about any machine).
    • Polygonamy: A Study in Three Dimensions, Stephen L. Judd. High speed 3D virtual worlds for the 64. (Binary up above).
    • Underneath the hood of the SuperCPU, Jim Brain. Description and details of the SuperCPU.
    • Talking to TED: The MOS 7360/8360 Display IC's, Levente Harsfalvi. Programming TED on the +4 and C-16 (reg. desc., etc.)
  • Issue #13 July 1996
    • HEAVY MATH -- Part 0: History, Arithemtic, and Simple Algorithms, Alan Jones. History, introduction, etc.
    • OS/A65 -- A Multitasking/Multithreading Operating System for 6502 Computers", Andre Fachat. Design and implementation.
    • Using UQWK with QWKRR128, Gaelyne Moranec. Self-explanatory.
    • Brad Templeton: The Programmer's Friend, by Jim Lawless. An interview with Brad Templeton.
    • Dim4: A Mind-Expanding Experience, Stephen L. Judd. 4D graphics from a 4k contest. See above for source (all 115k of it) and executables (all 4k of it :).
    • Exploiting the 65C816S CPU, Jim Brain. Description of chip design, regs, addressing modes, etc. and some SuperCPU programming info.
    • Using HTML on the Commodore, Part 1, Jim Brain. Introduction to HTML and description of an HTML viewer for the 64.
    • Creating 3D Dungeon Crawls, Todd Elliott. How to do 3D dungeons a-la Bard's Tale.
    • The Error Channel, updates to Double-DMA article, TED programming, extra Polygonamy info.
  • Issue #14 November 1996
    • The Commodore Telnet BBS, Bo Zimmerman. Make your C= telnettable.
    • Menu Toolbox III, Jeff Jones. User interface subroutines: menus, disk io, etc.
    • The CMD Nirvana: The Guts and Glory, Todd Elliott. Todd's souped-up 128D.
    • Jim Butterfield: The Commodore Guru - An Interview, Jim Lawless.
    • Hi Tech Trickery, Alan Jones. More descriptions of Linear Programming.
    • Hacking BASICs, Richard T. Cunningham. Detecting drives and selective goto in BASIC.
    • Twiddling the Bits, Ward Shrake. VIC-20 cartridge exploration and archiving.
  • Issue #15 April 1998 (Jim Brain's last issue!)
    • Click to Mode Switch: The 40-80 Mouse switch, Michael Nausch. Hardware mouse mod, mollifying monitor madness.
    • The Canonical List of Commodore Produced Products, Jim Brain. v2.0
    • Scott Ballantyne : Blazing into Forth, Jim Lawless. Interview with author of Blazin' FORTH.
    • Technical Information on the VIC-20, Ward Shrake. Pinouts and technical notes.
    • Hacking BASICs, Dick Cunningham. BASIC tips on 64/128 compatibility.
    • Twiddling the Bits, Frank Kontros. Update of the DataPump UART project.
  • Issue #16 April 1998 (S. Judd's 1st issue)
    • PAL VIC20 goes NTSC, by Timo Raita and Pasi 'Albert' Ojala. How to turn your PAL VIC20 into an NTSC VIC20.
    • Starfields, S. Judd. Making simple hires starfields.
    • Milestones of C64 Data Compression, by Pontus Berg. A short history of data compression on the 64.
    • Compression Basics, by Pasi Ojala. Part one of a two-part article on data compression, giving an introduction to and overview of data compression and related issues.
    • 3D for the Masses: Cool World and the 3D Library, S. Judd. The mother of all 3D articles.
  • Issue #17 November 1998
    • SuperCPU software repair, by S. Judd. SuperCPU-fixing.
    • Pucrunch, part 2, by Pasi Ojala. Continuation of article in issue 16. Discussion of pucrunch compression and decompression methods and code.
    • VIC20 Disassembly Project, by Richard Cini. First part of a complete ROM disassembly.
    • NTSC/PAL-fixing, part 1, Russel Reed, Robin Harbron, S. Judd. Robin and Steve fix a demo.
    • The Herd Mentality, Bil Herd. Lusty stories regaling the design and development of the C128.
  • Issue #18 July 1999
    • Data Structures 101, by Pasi Ojala and S. Judd. Linked lists and a nifty insertion sort.
    • Counting Sort, Pasi Ojala. Discussion of the counting sort!
    • VIC20 Disassembly Project, by Richard Cini. Part II: Interrupts.
    • GeoWrite128 disassembly notes, Todd Elliot. Discussion of GEOS, Todd's patches to geoWrite128 to work with more modern setups, and list of major geoWrite routines and entry points.
    • NTSC/PAL-fixing, part 2: FLI and IFLI, Russel Reed, Robin Harbron, S. Judd. Interactive tutorial on fixing FLI and IFLI graphics.
    • Obj3d: The 3D object library, S. Judd. Discussion of obj3d routines and example programs.
  • Issue #19 May 2000
    • Burst fastloader for the C64, by Pasi Ojala. Hardware modification and code for burst-loading on a 64.
    • 8000's User Port and Centronics Printers, by Ken Ross. The PET 8000's user port, and how to use it to drive printers.
    • Sex, lies, and microkernal-based 65816 native OSes, part 1, by Jolse Maginnis. OS design in general and JOS design in detail.
    • VIC20 Disassembly Project, by Richard Cini. Part III: Interrupts, continued (UDTIM, SCNKEY, etc.)
    • Decoding JPEGs, by S. Judd. Description of JPEG decoding process, especially IDCT.
    • Bringing 'true-color' images to the 64, by Adrian Gonzalez. Floyd-Steinberg dithering and the IFLI renderer used in JPZ.
  • Issue #20 April 2001
    • Super/Turbo CPU VDC Hack, Henry Sopko. Hardware mod to access the VDC using a SuperCPU64 or TurboCPU.
    • 16K Memory Expansion for the VIC-20, Per Olofsson. Hardware mod to add memory to the VIC-20.
    • "Quick Quadratic Splines", S. Judd. Algorithms to add curves and animations to programs.
    • VIC-20 Kernal ROM Disassembly Project, Richard Cini. Part IV: device I/O routines.
    • MODs and Digital Mixing, Jolse Maginnis. How to play MODs on a 64.
    • The C64 Digi, Robin Harbron, Levente Hársfalvi, Stephen Judd. Playing digis on the 64: theory, SID internals, $d418 digis, and Pulse Width Modulation.
    • Files:
    • ADDENDUM: After releasing the issue, Levente came up with a brilliant idea for playing high-resolution digis on a stock machine, using PWM.
  • Issue #21 Februar 2002
    • Pulse Width Modulation, continued, Various. Tying up some loose ends.
    • Introducing Full-Screen IFLI Mode With a SuperCPU, Todd Elliot. Making those first three columns with FLI available.
    • VIC-20 Kernal Disassembly Project, Part IV, Richard Cini. Making sense out of the tape drive code.
    • The Art of the Minigame, various. Six articles discussing and disassembling some nifty minigames:
      • Codebreaker, by David Holz
      • TinyPlay, by S. Judd
      • MagerTris, by Per Olofsson
      • Compressing Tiny Programs, by S. Judd
      • Tinyrinth, by Mark Seelye
      • Tetrattack!, by S. Judd
disC=overy magazine - For the Commodore 8-bits
taken fromwww.ffd2.com/fridge/discovery/, the Author is Stephen L. Judd

Download all these disC=overy issues as a .zip file

  • Issue #1
    • Explorations on IFLI, Adrian Gonzales, Mike Gordillo. Interview with Adrian; IFLI info.
    • TRI-FLI : A new video mode 'abrewing?, George Taylor, Mike Gordillo. Interview with George; TRI-FLI description.
    • Heaven in the net; an unedited excerpt of IRC on #c-64, misc. Like the title says. Discussion of FLD, FLI, VSP, and other VIC related acronyms.
    • A complete dissection of Gfx-Zone, XmikeX. Source and explanation of Gfx-Zone.
    • A Beginner's Guide to the JCH Editor V2.53, NewPlayer V14.G0, Sean M. Pappalardo (Pegasus/RPG). Read the title :).
    • An inside look at MODplay 128, Nate Dannenberg, Mike Gordillo. Interview with Nate about his modplayer for the 128.
    • Some preliminary data on VDC timing, Stephen L. Judd. Get a feeling for VDC timing.
    • Software analysis and reconstructive therapy: a historical view on 'cracking', Pontus Berg. History, overview, and tips.
    • A quick overview of CP/M, Mike Gordillo. How to add VGA graphics to your 64 (actually, I think the title explains it).
    • The BIOS-R62a/ZPM3/ZCCP Commodore 128 CP/M 3.0+ Upgrade Package and a bunch load of utilities!, Mike Gordillo. BIOS upgrade and useful CP/M utilities.
    • BEYOND STEREO: The POWER-SID Model 2400, Shaun Halstead. Preview of 8-SID sound board.
    • The 8-bit Modplay 128 board, Nate Dannenberg. 4-voice stereo 8-bit DAC circuit to plug into your 64/128.
    • Upgrading your C128's VDC memory to 64K, Mike Gordillo.
    • The Metal Shop, Mike Eglestone. Hardware Q&A column.
  • Issue #2
    • Innovation in the 90s: The Super Hi-Res FLI Technique, Rolad Toegel, Count Zero. Even more colors and apparent resolution.
    • Scrollies exposed: A look at simple scroll-text routines, XmikeX, Asger Alstrup. Scroll code, rasters, frames, etc.
    • The Raster Starter-Kit, XmikeX, code by Dokken. Code to demonstrate raster interrupts.
    • Heaven in the net: An unedited excerpt of IRC on #c-64, Mike Gordillo. Stable interrupts, character bitmaps, etc.
    • A Demo of 'disC=overy' -- The exploration of rotation, John Kaiser (Waveform). 2D rotations, lines, full source.
    • SID primer: The Working Man's Guide To SID, Stephen L. Judd. SID basics.
    • Progenitor of the SID: An Interview with Bob Yannes, Andreas Varga. An interview with the SID designer, with more technical SID information than you can shake a phase accumulating oscillator at.
    • Z80: The basics of it, Raver/Phantasy. Overview and description of the Z80.
    • Charger up! The VIC-20 to Atari 2600 'Ram Cartridge' Programmer, Ravid Noam. Hardware project.
    • The 8-bit Modplay board, a three-diode addition, Nate Dannenberg. Update to issue #1 DAC circuit.
    • The Virtual Plus/4: Upgrading your C16 to 64 Kilobytes, Martin Gierich. Hardware project.
    • Continued Lt. Kernal Hard Drive Support, Ron Fick. Where to find support for your Lt. Kernal.
    • The Metal Shop, Mike Eglestone. SFD and 1581 problems, reading Apple ][ disks on a 64, SuperCPU 128, VIC-20 video cable.
    • Errata. Corrections to Gfx-Zone and JCH editor articles; VDC timing code which actually works; Pontus Berg's email address.
  • Issue #3
    • Rommaging around : $A480-$A856, Stephen Judd. Disassembly and discussion of the BASIC intrepeter, and BLARG.
    • A Closer Look at the VIC II's Output, Adrian Gonzalez and George Taylor. Description of television standards and C64 signal output.
    • Innovation in the 90s : Revisiting The Super Hi-Res Flexible Line Interpretation Technique. Commentary on article from last issue.
    • Defeating Digital Corrosion (AKA "Cracking") - A beginner's guide to software archiving, Jan Lund Thomsen. Description of tape protection methods.
    • A possibility to be explored : Real Time Video with the Ram Expansion Unit, Nate Dannenberg. Description of REU animation.
    • A look into 'The Fridge', Mike Gordillo. Some cut and paste from the fridge.
    • C128 CP/M, trailblazer in a jungle of formats, Mike Gordillo. Description of/converting from CP/M MFM disk format.
    • The X-10 Powerhouse, What is it?, Dan Barber. Description and schematics of X-10 controller.
    • The Metal Shop, 'XmikeX', David Wood, Marc-Jano Knopp and Daniel Krug. 16KB VIC expander DIP switches, Apple ][ disk drives, SID protection circuit, fixing spontaneous resets, RESTORE key capacitor, C64 black screen.