211

I'm the author of the TPUG article. The "BILL GATES SUCKS" message isn't really an Easter egg; that was just a conceit of mine to make the article a bit more interesting and to turn it into a bit of a puzzle. Here's how it works and how it was created: In any given infinite sequence random numbers, it's a mathematical certainty that a given subsequence of ...


58

Epoxy offers two advantages -- it is an electrical insulator, and it conducts heat better than air. Transformers and inductors are generally potted with epoxy for this reason. [ref] Perhaps the cause of the high failure rate is that Commodore engineers decided they could use cheaper components to build the power supplies, depending on the epoxy properties to ...


55

I don't think that's an easter egg. Someone just made an effort to find random seeds that produce the numbers to create the intended words. It would be an easter egg if the seed numbers were in some way related to CBM or Microsoft. A=RND(-A) initializes the (pseudo) random generator with A, generates a random number and stores it in A. The GOSUB20 ...


41

(2017.03.03) I have added a second answer with diagrams and more technical details. This answer is already huge and self-contained; the other focuses on the complexities due to hardware. Why does the C128 perform poorly when running CP/M? The Z80A was sort of an after-thought in the C128 design. Before release it had been touted as "fully C64 compatible" (...


40

There are several simple precautions that are always worth taking when powering up a vintage microcomputer after long periods of storage or non-use. The minimum, simple steps, should include: Place the computer on an electrically safe workbench, preferably one that includes a grounding strap for the user. A wooden table is an OK substitute, just avoid ...


28

The 6502 was designed and manufactured before Commodore bought MOS Technology, the creator of the 6502. MOS Technology didn't originally plan to build computers. They wanted to sell the 6502 to companies who wanted to build computers. Back then, anyone planning to bring an electronic device to the market wouldn't choose any chip that didn't have multiple ...


21

Electricians some times (or used to) do similar techniques when configuring wiring -- once the wires were in place, they would fill the cavity with a non-conductive resin or epoxy, so that the chance of any movement or shift in the wiring would cause a short or a disconnect is greatly reduced. I've seen this in numerous situations myself, including air ...


17

The 1701 and 1702 are virtually identical. They have the same specs, tube, inputs, casing, and manufacturer. The only real difference is the 1701 is older (1982 to early '83, 1702 is late '83) and the fact that the 1701 shipped with a 5-pin composite video cable instead of an 8-pin luma-chroma cable in the box (both monitors support both inputs). A full ...


16

My first answer attempts to answer all the OP's questions without going too deep into the hardware details. Since posting that answer, I have had the pleasure of corresponding for several days with Bil Herd, the lead designer of the C128 project. In addition to what I have learned from him, I have done some additional research on my own. This answer focuses ...


16

The 6502 has been used in huge volumes in markets that commodore never cared about competing in much - terminals for large-scale professional computing, printers and plotters (which they mostly bought in from OEMs if sold with their own computers), embedded solutions, test and industrial and scientific equipment, arcade machines ... - just as other 8 bit ...


16

Back in the day, it meant that present versions of the Commodore BASIC and Kernel did not use those locations, but Commodore said nothing about whether future versions of the ROM might do so. Addresses 251-254, by contrast, were specifically marked as available for user programs and Commodore guaranteed that nothing in present nor future versions of the ...


16

This example reveals a rounding error under Commodore BASIC V2.0: A=0.3:B=0.6:IF A+B<>0.9 THEN PRINT A+B-0.9 Running this on a C64 yields a difference of 2.32830644e-10. Other pairs that fail are 0.4+0.5, 0.6+0.1 and 0.8+0.1. Please note that also the order in which the numbers are summed up affects the result. 0.6+0.1-0.7 yields a difference, ...


14

On a floppy disk, each 'bit' is a flux reversal — a magnetic event. If those bits are too close together, they'll leak into one another and data will be lost. Disk controllers use a regular clock and either write a transition or write nothing at each clock tick. There's also a lower limit on how far apart transitions can be. Disk rotation speed varies ...


14

[Insert: Some site history While the German subsidary (Commodore Büromaschinen GmbH), originally set in Neu-Isenburg near Frankfurt, had facilities for import handling and distribution, this was soon moved to a distribution center in Braunschweig and accomplished by a final assembly line and a development center. At the same time the company moved into ...


14

Does the Commodore CDTV-CR contain a 65C02 for some reason? Yes, but it's a rather plain (NMOS) 6500 core. Or, if it's emulating actual hardware, where is the 65C02? Hiden in a CSG 6500/1 microcontrollers (*1) All Amigas used variations thereof. They are basically a 6503 CPU (*2) plus a 6531 RRIOC(*3) with RAM halved to 64 Byte (*4) joint in a single ...


13

MOS was renamed to Commodore Semiconductor Group (CSG) sometime after Commodore bought them in 1976. After Commodore folded in 1994, the CSG division was bought by its former management and renamed to GMT Microelectronics (Great Mixed-signal Technologies). They continued with design, manufacture, and marketing of analog and mixed-signal power management ...


13

There was a brief fad in the early eighties for what's called "Wafer Scale Integration". That is to say, producing an entire wafer of silicon for a single circuit. The best known example was Gene Amdahl's Trilogy Systems. A Wafer Scale circuit can be used to build a massively powerful computer system in a single component, but as wafers are almost never ...


12

I don't know if such device exists as a final product, but here's some hints about how to build one: Composite video signal is made up from the analog sum of two components: luminance and chrominance. We are interested in the luminance component. So you should rip off the chrominance signal by using a low-pass filter with the cut frequency set at 3.5MHz (...


12

You cannot do that on the VIC-20; not only is no such feature provided by the built-in hardware but there's also no ROMDIS signal on the memory expansion bus or anything else similar. PETs with a 64kb upgrade have a register at $FFF0 for memory selection that allows the ROMs to be paged out (see e.g. "2.2 Control Register" in this document — the 8096 is an ...


11

One way to do this is to program a Raspberry Pi to simulate an IEC bus controller, then drive the 1541 that way, via the 6-pin IEC port on the drive. This is very similar to using a PC parallel port with a specially wired parallel-to-IEC cable, just using a Raspberry Pi instead of a PC, and using some general purpose I/O pins rather than the parallel port. ...


11

My memory is that the O/S (for want of a better name) occupied the lowest memory followed by the code of your Basic program. Variables were allocated at the highest available address. So, as you wrote longer programs and used more variables, the two converged in the middle You're right - well, BASICly (SCNR). I don't recall any protection, Yes, there is....


11

For example, the VIC-II is a big complex chip for its time; at least in the early days, yield must have been significantly less than 100%. Not really, while the VIC-II had a transistor count a bit larger than the original 8µm NMOS 6502. Not a lot, but it was manufactured in a 5 µm process, resulting in a smaller size and higher yield. The 1981 65C02 had ...


10

The procedure to enable the spindle motor of a disassembled 1541 drive is given in the Service Manual for the drive. This is the procedure you would use to calibrate the motor speed. _MTR output from the PLA is active "low". This signal is passed, through the current driver UD2, to the motor control PCB. When _MTR is "low," Q1 is biased off, and Q2, Q3, ...


10

Here is my favourite example for this problem. I often use it to show Excel's mathematical shortcomings, but not surprisingly it works the same in the C64: 10 A = 0.1 20 B = 0.1 30 FOR I = 1 TO 10 40 D = B 50 B = 20 * A - 19 * B 60 PRINT B 70 A = D 80 NEXT I In every iteration, the algorithm should be doing 20 * 0.1 - 19 * 0.1 = 0.1, but the output on this ...


10

How exactly does one send a new routine to the drive and execute it? Usually by executing the Memory-Write command twice followed by UserN command, as described in chapter 8 of the floppy manual (*1)? Once to place the routine to be used and then to setup its address as user function (or whatever it is supposed to replace). A suitable function to do so ...


10

TL;DR: Non-CRTC PETs (Original PET, early 30xx) are fixed to 60 Hz. CRTC (6545) based PETs (40xx/80xx/8x96/9000 - *1) use screen refresh rates set by its ROM (*2). 50 Hz for European machines, 60 Hz for US/Canadian units. Regarding the details: For the European models there was no need for compatibility with European television standards as far as I'm ...


9

Commodore's experiences were driven by the interactions between Commodore management and its dealer network, and should not be taken as indicative of some broader tendencies within the early personal computer industry. To support this assertion, I would point to the other early personal computer companies whose experiences were different from Commodore. The ...


9

SD2IEC SD2IEC is a free software which turns an ATmega644 microcontroller into an emulated VC1541. It attempts a near-complete emulation (I think REL files aren't implemented, but nearly noone ever used them.) The emulation also supports some common fastloaders, most prominently that of The Final Cartridge III. You store .d64 disk images onto a FAT ...


8

[Do over answer] Based on your clue that an Atari monitor has matching coloured inputs I looked up the Atari 8-bit video connector, compared to the C64: It is likely you have an Atari lead rather than a Commodore one. So your four signals are intended to be (1) luminance; (2) audio; (3) composite video; (4) chroma where available. Plugging that cable into ...


8

Why did Commodore files not include metadata to say where in memory to load it? They are there. Every saved memory content starts with two bytes noting the address it's taken from. No matter if disk or tape, if BASIC or machine code. But since it doesn't really make sense to save a file in one way and load it again the other way, then the user needs to ...


Only top voted, non community-wiki answers of a minimum length are eligible