VChar64: caca powered!

Latest VChar64 commit hash: commit caca91345d177ded6b9b8f6a8adeaadc3611a29e Author: Ricardo Quesada Date: Mon Mar 14 15:31:41 2016 -0700 fix: use the correct URL to open the documentation And this is how git describe shows it: $ git describe --abbrev=4 --dirty --always --tags 0.0.12-14-gcaca And that is the command that I use internally to generate the version number:

March 17, 2016 · 1 min · ricardoquesada

Repairing the Commodore 1581 floppy disk drive. Part 1

I got my 1581 like one year ago. It worked for 2 or 3 weeks and it stopped working. The stepper and the motor weren’t moving. So I guessed that the “floppy drive” was broken. Quick introduction: the Commodore floppy disk drives have 2 major components: The controller board: which has the 6502, RAM, ROM and other ICs to control the drive The floppy disk drive: which is the “thing” that has the header, the stepper, the motor to spin the floppy disk, etc. So, in my case, my quick guess was that the “floppy disk drive” was broken because the stepper and the motor were not moving. ...

March 14, 2016 · 2 min · ricardoquesada

VChar64 v0.0.12 released

New version, new features. Download Mac: vchar64-0.0.12.dmg.zip Win32: vchar64-0.0.12.win32.zip Changes [NEW] Koala Import: supports importing subregions. Useful when 256 chars are not enough to import the whole bitmap [NEW] Added unknown font. Ripped from here [NEW] VICE snapshot import: Default charset address is the one that was used at the moment the snapshot was taken [NEW] Save/Export: Plays one beep on success, two beeps on error [NEW] Main Window: Status Bar shows the coordinates of the different widgets [BUGFIX] Export: shows correct extension when browsing file [BUGFIX] VICE/Koala Import: sets the name of the imported file in the tab [BUGFIX] Koala Import: detects duplicates chars, making the conversion smaller

March 2, 2016 · 1 min · ricardoquesada

VChar64 v0.0.11 released

VChar64 v0.0.11 was released. Win32: vchar64-0.0.11.win32.zip Mac: vchar64-0.0.11.dmg.zip Source code: github It includes several bug fixes and some important new features like: Koala import support Map support Export to Assembly Full Changelog here.

February 1, 2016 · 1 min · ricardoquesada

The SX-64, as it should be

Spot the difference. Before: After: The former owner replaced the original SX-64 KERNAL (251104-04) with a C64 one (901227-02), most probably to be 100% compatible with all the games. But an SX-64 doesn’t feel like an SX-64 without its unique colors. That’s why I replaced the KERNAL chip again, this time with the original one. Actually I couldn’t find the original chip (the MOS 251104-04) anywhere, so instead, I installed an EPROM chip with the original SX-64 KERNAL programmed into it. ...

January 29, 2016 · 1 min · ricardoquesada

VChar64 v0.0.10 released

VChar64 v0.0.10 is available for download: Mac: vchar64-0.0.10.dmg.zip Win32: vchar64-0.0.10.win32.zip Source code: Github repo Highlights: Live preview with the VChar64 TCP/IP Server for the C64 and C128 (in C128 mode) Minor bug fixes Full changelog: CHANGELOG v0.0.10

January 6, 2016 · 1 min · ricardoquesada

Fixing the Commodore SX-64: Replacing the MOS 6526

MOS 6526: The CIA chip You turn on your beloved SX-64 and you don’t see the blinking cursor. Don’t panic. Most probably one of the CIA chips (MOS 6526) is not working correctly. [caption id="" align=“alignnone” width=“400”] No blinking cursor[/caption] The Commodore 64 has two CIA chips. What you need to do is to replace the one that controls the keyboard, the CIA 1. But if you don’t know which one is CIA 1 and which is CIA 2, then you can either replace both, or do trial-and-error, or look at the IO schematics (hint: it is the one with the UB3 legend). As far as I know any MOS 6526 should work: MOS 6526 (found in the very first C64s) MOS 6526 R4 (found in newer C64s) MOS 6526A (the 2Mhz version, and I read somewhere that it works Ok) So, in order to get the replacement chip, you can get it on eBay, or extract it from another another C64 or SX-64. The MOS 6526 chips on a regular C64, are located at the top-left corner. [caption id="" align=“alignnone” width=“400”] I removed the 6526 from a regular C64[/caption] I suggest using a chip extractor to extract the chips, although a flat screwdriver can work as well.

December 13, 2015 · 2 min · ricardoquesada

Disassembling 6502 code with Radare - Part II

Let’s crack a simple game. If you are not familiar with Radare, read Part I first. Creating and opening a VICE Snapshot file Let’s crack BC’s Quest For Tires since its copy-protection is easy to bypass. Unzip this file: http://tapes.c64.no/tapes/BCsQuestForTires.zip Open the tap file with VICE (the most popular Commodore 64 emulator), and.. …the game has some kind of copy-protection. If we enter invalid codes, we won’t be able to play the game. Since Radare supports VICE Snapshot File format, we can save an snapshot of the game, and analyze it with Radare. In VICE, go to the menu, Snapshot -> Save Snapshot Image… If we select “Save ROMs”, then the BASIC ROM and the KERNAL ROM will be saved inside the Snapshot file, and will be included as Radare sections. Radare VICE Snapshot File (VSF) support lets us inspect: The 64k RAM of the computer at the moment the snapshot was saved The BASIC and KERNAL ROMs in case they were saved. To open a VSF file, just pass the VSF file as the first argument: $ r2 bc_copy_protection_screen.vsf [0x00005689]> 0x00005689 is the PC (program counter) at the moment the snapshot was saved.

December 10, 2015 · 8 min · ricardoquesada

Cutting edge coding & debugging techniques during my early days

Cutting edge coding & debugging techniques:

December 5, 2015 · 1 min · ricardoquesada

VChar64 v0.0.9 released

VChar64 v0.0.9 is available for download: Mac: vchar64-0.0.9.dmg Win32: vchar64-0.0.9.zip Source code: Github repo Highlights: MDI support: Multiple open documents at the same time Copy & Paste tiles between documents even if they have different interleave options Bug fixes Full changelog: CHANGELOG v0.0.9

December 2, 2015 · 1 min · ricardoquesada