Hacker News new | ask | show | jobs
by jacquesm 2917 days ago
> It was an amazingly capable machine, and the folks who exploited every little aspect were/are clever as hell.

If you had been alive and busy with computer programming back in the day you too would have been clever as hell. It was the only way you'd get anything done and if there is one thing that will bring out the hacker in people it is a bunch of unreasonable constraints and a job that needs to be done anyway.

6 comments

> If you had been alive and busy with computer programming back in the day you too would have been clever as hell.

Don’t underestimate the power of internet today and the ease of obtaining information - that certainly was not the case in the ‘80s. Unless you were close to demo groups you were left with two choices: a) reverse engineer the code (good old “Monitor 49152”), or b) give up

There were a ton of good hobbyist magazine back in the day, many of which dedicated a page or two to low-level hackery
True. As a kid I was eagerly awaiting the first week of the month for that one magazine that carried a column called “C-64 intro service” about low level intro- and demo-programming. But the pace of printed information is terribly slow, esp. if you can’t get many of them where you live.

I remember waiting for someone to explain how the “giant scroll” worked (letter the size of the whole screen, with borders removed) as I couldn’t disassemble the demo successfully. Months later, the article appeared explaining the technique. To a young inquiring mind that seemed like eternity.

I just read the little excerpt from a newspaper in the article about the genesis of the transistor and it struck me that the technical details in those paragraphs were way above what an audience of today would ever be exposed to from a technical level.
You made me search for “genesis of the transistor” and I found this old gem: https://youtu.be/WiQvGRjrLnU

Here is a quote from that film that makes me a bit envious of those work environments: “Working in an environment which fosters the uninhibited search for answers to riddles of science related to communications’ needs.”

Wow, to work in an environment that has that sort of mission must be rewarding.

That's true. With no internet and only a crappy book, my use of the ZX 80 was pretty poor compared to what I would have mentally capable of doing, if I had access to further knowledge.
Cleverness could express itself in the way you actually gathered documentation... Back in those days, it was really tough to get any. For example, I was out of the scene. So I decided to create a disk magazine to talk bout the scene, hopefully getting in contact with it. That's exactly what happened and a s a result of that, I got access to one marvelous piece of software I couldn't write by himself : a MOD player (included with SoundBlaster DMA access which was very hard to code)...
This

http://www.classiccmp.org/cini/pdf/Commodore/C64%20Programme...

I still have my copy after all these years.

Yup, constraint = hack/freedom is one of the paradoxes as long as there are hidden degrees of freedom that can break the constraints.

Here’s some old c64 intros I did, including a trick of bank switching to fake z ordering of fonts and sprite scs rasters, as well as using FLD to stabilize rasters in the presence of moving sprites in both PAL/NTSC modes.

https://youtu.be/aViXXbUg_yU

I think it may be less "constraint" and more "fixed platform".

Meaning that every C64 was like very other C64, so you knew what you had to work with on the hardware side.

You could see this with consoles as well, as the games steadily improved as developers learned how to push that fixed hardware around (though the cartridge ones often allowed in-cart chips to assist).

I guess we have gotten so incredibly used to either being able upgrade piecemeal, or simply replace wholesale every few years, that having a steady set of hardware to explore and learn has become "foreign" in a way.

Compare and contrast the C64 and say the RPi. the former was more or less steady for 24 years, while the latter have been releasing beefier variants every 2 years or so.

> Meaning that every C64 was like very other C64, so you knew what you had to work with on the hardware side.

Well, other than:

1) PAL vs NTSC systems. True compatibility breaker.

2) Two different versions of SID sound chips (and every SID being more or less unique)

3) Different VIC-II versions (or at least some chips where VSP (variable screen positioning, a fast method for horizontal scrolling) works and some where it doesn't)).

A lot of demo effects are almost like magic tricks --- before you understand how they're done, they seem like impossible magic; but once you do, you think "that's so simple, why didn't I think of that?"

Animation by essentially "panning" inside a larger pre-rendered image is one of those tricks:

http://norecess.cpcscene.net/the-elders-scrollers.html

Old-school demos have another common trait with magic. Like the best stage magic, you know you are being fooled - but even after seeing how the trick is done, you remain amazed by it.

The best one I have seen: Cubase-64 [0]

0: https://www.youtube.com/watch?v=artEQkifGG0

I'm not so sure how simple the example you mentioned is. I've seen it many times and I'm still not sure how I would generate the source image.
> Animation by essentially "panning" inside a larger pre-rendered image is one of those tricks

Hand animated cartoons would often used that trick as well.

The anime Bubblegum Crisis used a massive cityscape painting for their panning shots.

The great thing about the C64 is that it never changes. It's the same hardware as it was last year, and it'll be the same hardware next year. Modern systems have plenty of unreasonable constraints, but the foundations are always shifting. How many cool web hacks from 5 or 10 years ago will run unmodified on a modern web browser?
The various board revisions introduced some changes. Particularly notable were the bug fixes to the original 326298 board. We could never get certain games/demos to work on our early C64. I still look wistfully at Gauntlet...
You just described why game developers prefer to target consoles.
Yeah, i just pulled up a list of RPi variants to check and it has been releasing new generation Bs every 2 years or so.

In those years it has gone from a 700mhz single core ARM11, to a 1.4ghz quad core Cortex A53.

The c64 in contrast stayed largely fixed for over 2 decades!

I had a hand-me-down TRS 80 Model 100 rather than a C64. Got my first "IBM clone" PC in 1990 or 1991 IIRC. Totally missed out on the other 8bit micros, but I learned a hell of a lot with that Model 100. :)
I feel like we moved away from clever into this copy this exact way culture.