DC2N4 USB serial GUI client under testing

After work today I built a quick GUI client for DC2N4 USB serial. The result is a very early proof of concept that is not cross-platform but it proves the point: it receives data from DC2N4 reliably :)

DC2N4 USB serial GUI client

DC2N4 USB serial GUI client

Getting it to production state is something that will require some time as I would like to make it cross-platform (just like its predecessor) and I’d like to revisit the whole signal display  code as I’ve acquired quite some experience with GTK+ pixbufs (while working at Integrator 2012) and signal visualization (while working at DC2N5) after the first DC2N4 GUI client was written.

Posted in Retrocomputing, Technical | Tagged , , , , , , , | Leave a comment

DC2N4 USB serial client tested successfully

During the break today I was able to quickly put together a Virtual COM reader that interacts with my new version of the DC2N4 firmware, DC2N4-serial, and saves dump data to file. It was a great success with DMP files recognized 99% in TAPClean and all check bytes being correct.

DC2N version 4 by Luigi Di Fraia

DC2N version 4

Furthermore I tested half-wave dumping, forcing the result to TAP v1 before feeding it to TAPClean, and that worked fine too :)

Here’s the output from my commandline client.

D:\_development\dc2n\dc2n-4-serial\software\dc2n-4-console>dc2n-4-dump.exe COM8 Turrican01.dmp
Reading from COM8
Press PLAY on tape... OK
Total bytes saved: 4459420

D:\_development\dc2n\dc2n-4-serial\software\dc2n-4-console>dc2n-4-dump.exe -s 2 COM8 Silkworm05-hw.dmp
Reading from COM8
Press PLAY on tape... OK
Total bytes saved: 2149454

D:\_development\dc2n\dc2n-4-serial\software\dc2n-4-console>dc2n-4-dump.exe COM8 Silkworm06.dmp
Reading from COM8
Press PLAY on tape... OK
Total bytes saved: 1076094

Re DC2N4 GUI client I will look at what I’ve already done previously and try to adapt it to this new version of the firmware by the end of this month.

The hardware stays the same for the time being but I will add a tape port connector for TAP playback in future :)

Posted in Retrocomputing, Technical | Tagged , , , , , , | 1 Comment

DC2N4 full rewrite

I thought I was done and over with DC2N4, i.e. the version of DC2N that connects to a PC/MAC via a USB cable.

However, this evening after work I thought that it would be nice to add the TAP playback feature to it and try to communicate with the device by using a plain serial protocol. In fact the USB2.0 bulk transfer used by the virtual serial port implementation is more than capable to transfer the amount of data required to backup a tape or play back a TAP file to a Commodore machine.

I rewrote the firmware from scratch in about one hour this evening and tested by dumping Silkworm and capturing the data to file using Hyper Terminal. Admittedly I think the latter might have reinterpreted a byte here and there while receiving data from DC2N4-serial, but the bulk of the data was what I expected to see. As example, this is the start of the lead-in train to the first CBM block:

DC2N4-serial: first dumping test

DC2N4-serial: first dumping test

As early as tomorrow I might write a custom client application that receives data from the new DC2N4 firmware and saves it to disk, without doing any manipulation on it. If the whole concept works reliably, I might release the client application as open source too. After that I might also rewrite the GUI application I originally wrote for DC2N4 to dump tapes. Here’s a screenshot of the original version:

DC2N4 GUI client: success by Luigi Di Fraia

DC2N4 GUI client: success

Posted in Retrocomputing, Technical | Tagged , , , , , , | Leave a comment

Turbotape 250 name extraction tool written too

Following a suggestion from Paul to one of my previous posts, I decided to write a tool to extract the filename from Turbotape 250 files. As example for “The Great Gianna Sisters” I got the following output:

find-tt250-name.exe -a gianna_dump0057.tap
Turbotape 250 filename extractor, rel 1.0 - (C) 2015 Luigi Di Fraia.
FOUND (001): "VT"
FOUND (002): "1"
FOUND (003): "2"

I will look into integrating the code into my Tape Port Monitor and Tiny C2N Monitor at some point too :)

Posted in Retrocomputing, Technical | Tagged , , | 3 Comments

Low-cost DC2N5: TAP v0 and v1 playback ready

After work today I had some time to tinker with my playback code in DC2N5-STM32 and I finished the last few adjustments necessary for the following TAP v1 playback test. Enjoy :)

Posted in Retrocomputing, Technical | Tagged , , , , , , , , | Leave a comment

Low-cost DC2N5: half-wave dumping is now ready too

After some head scratching due to the number of errors in the STM32 guide for the micro-controller I am using for DC2N5-STM32, I decided to try a method I’ve been using with AVR chips for a while (i.e. since Massi cadenti asked me to add the half-wave dumping mode in DC2N version 1). There’s no mention in the STM32 guide that suggests this is a possible route, yet it worked nicely so I now have half-wave dumping support in DC2N5-STM32 too!

All versions of DC2N therefore support dumping (and recording) of half-waves, based on user selection :)

Posted in Retrocomputing, Technical | Tagged , , , , , , , | 2 Comments

TAP v2 playback tested successfully in DC2N2 and DC2N3 too!

After some troubleshooting, I found out a typo in my playback code for TAP v2 in DC2N2 and DC2N3. The bug was fixed and therefore TAP v2 playback is working as expected in both devices! Another task in my TODO list bites the dust :)

The only major outstanding piece of code that I have yet to write is around the TAP playback in DC2N5-STM32, i.e. the latest of the devices I’ve started working at. I am still getting familiar with the datasheet of the micro-controller, but as I’ve already implemented the dumping side of things I am confident in being able to quickly implement TAP playback too.
BTW, TAP playback, including playback of TAP v2, has been fully functional in DC2N5 for a while already: it’s just the low cost version of DC2N5, DC2N5-STM32, that is missing this feature for the time being.

All going well I can then move on to the graphic interface for DC2N3 version 3 and DC2N5 version 1.

Posted in Retrocomputing, Technical | Tagged , , , , , , , | Leave a comment