In a forum post on the German Forum-64, Nicolas Welte ("x1541") explains that the Commodore engineers implemented the BIN to GCR conversion in the 8250 drives very tricky. He suggests that Commodore engineers generated the GCR code with a trick. In this blog entry, we will see that there was not much room to do otherwise.
Friday, March 5 2010
Commodore GCR "mysteries"
By Spiro Trikaliotis on Friday, March 5 2010, 12:51 - floppy
Saturday, July 18 2009
Disk drive compatibility between the Commodore 4040, 2031, 1540 and 1541 drives
By Spiro Trikaliotis on Saturday, July 18 2009, 12:00 - floppy
Hello,
this is an entry where I recycle a text I wrote on Usenet in comp.sys.cbm (Message-ID: <slrnh4d06s.hip.usenet-200901@news.trikaliotis.net> about the Incompatibility between 4040 and 2031/1540/1541 drive's disks).
Someone asked about the incompatibility between disks written with the 4040 drive, and ones written with a 1541 drive. I try to give some insight into why there once was an incompatibility, but this should have been gone with newer drives (that is: Newer firmware).
Sunday, April 5 2009
Using FFMPEG DLL with MSVC compiled program
By Spiro Trikaliotis on Sunday, April 5 2009, 10:47 - Programming
Hello,
this is a somehow unusual blog post for this blog. For VICE, we had a problem with using the FFMPEG DLLs from code that was compiled with the Microsoft C compiler (MSVC6 up to MSVC 2008). When using these DLLs, VICE crashed with segmentation faults.
After we found the solution, we also found out that someone else was having the same problem here: MinGW DLL used in MinGW and VC++ app (memory alignment): It was simply an alignment problem.
Wednesday, January 28 2009
Memory-Read (M-R) command error in the floppy drives 2031, 1540, 1541, 1570, 1571, 1581 (and, most probably, 1551)
By Spiro Trikaliotis on Wednesday, January 28 2009, 19:17 - floppy
I just found out something that was not known to me beforehand. I am not sure if this is a known bug. However, I decided to document it, in case someone else stumbles upon it.
If issuing a Memory-Read ("M-R") command on the floppy (2031, 1540, 1541, 1570, 1571, 1581), the M-R is stopped early if the memory area to read crosses a page boundary,
Additionally, you cannot read beyond $02D4 (on the 154x/157x drives) or $02CF (on the 1581 drive). The drive will just abort the read. Furthermore, it sends out an additional CR (0x0D), which is the normal end of the answer send back. However, because the data is incomplete, you might be tempted to believe that CR is part of the read data. However, it is not.
Tuesday, December 16 2008
C64 talk at 25C3
By Spiro Trikaliotis on Tuesday, December 16 2008, 19:14 - Commodore64
There is an article by Michael Steil which will be printed in the Congress Proceedings of the 25th Chaos Communication Congress 2008 (25C3). It accompanies his talk "The Ultimate Commodore 64 Talk - Everything about the C64 in 64 Minutes". I take this opportunity to comment on some of the statements there, reviving this blog.
Sunday, October 21 2007
The VICE monitor - part V: Debugging program execution
By Spiro Trikaliotis on Sunday, October 21 2007, 22:32 - VICE
In my last post, we saw how to start the execution at a specific address. I presented an example on how to call a function; in that case, it was the function to set the cursor to a specific address. Unfortunately, it did not work as it should have worked. In this part of the sequel, we will find out what went wrong and why the C64 behaved in a rather irritating way.
Saturday, October 6 2007
The VICE monitor - part IV: Program execution and changing registers
By Spiro Trikaliotis on Saturday, October 6 2007, 15:53 - VICE
Being able to read and write memory contents, disassembling and using lables is a good thing when it comes to use a monitor. Anyhow, in many cases, you want to change the execution of a program. This is what a debugger is really like, and how you do this is covered in this part.
This part will also cover how to specify and convert numbers in different number systems (decimal, hexadecimal, octal, binary).
Sunday, April 22 2007
The VICE monitor - part III: Using labels
By Spiro Trikaliotis on Sunday, April 22 2007, 10:37 - VICE
In this part of the sequel on the VICE machine language monitor, I will show you how you can ease your job when using labels for the monitor.
Sunday, April 1 2007
The VICE monitor - part II: Disassembling
By Spiro Trikaliotis on Sunday, April 1 2007, 20:30 - VICE
In the last part of the series of the VICE monitor Part I, I wrote how you can open the monitor and look at memory contents, that is, get a dump. In this part of the series, I will show you how to disassemble the memory, that is, you can examine the program that lies in the memory. Additionally, we will have a look at labels in the VICE monitor.
Sunday, March 25 2007
What do you want to know about the VICE monitor.
By Spiro Trikaliotis on Sunday, March 25 2007, 09:53 - VICE
I just started the series on the VICE monitor. Anyway, I can only write what I think is important. This might be different from what YOU want to know. Thus, please use the comments to this entry to tell me what you want to know.
The VICE monitor - part I: Starting and showing memory contents
By Spiro Trikaliotis on Sunday, March 25 2007, 09:41 - VICE
From time to time, I read questions about the monitor of VICE. It seems its usage is not self-explanatory. Thus, I will try to start a series of articles where I explain the usage of the monitor of VICE. This is part I of this series, which handles starting the monitor and using it to statically examine the state of the computer.
Spiro has started blogging
By Spiro Trikaliotis on Sunday, March 25 2007, 08:14 - misc
This is my blog where I will start to write about some things you might or might not find interesting.