Re: [stella] VCS 101 (was: Linux makewav 4.1 text file)

Subject: Re: [stella] VCS 101 (was: Linux makewav 4.1 text file)
From: "B. Watson" <atari@xxxxxxxxxxxxxx>
Date: Sun, 19 Aug 2001 18:44:03 -0400 (EDT)
On Sun, 19 Aug 2001, Eckhard Stolberg wrote:

> > I'm a brand-new list subscriber, it's good to meet you all.
> Welcome to the wonderfull world of classic console programming. ;-)

And a bizarre world it is, compared to the Atari 800 programming I
used to do when I was a kid... Most of the games I wrote then were
in BASIC with little assembly helper routines, and the one thing they
all had in common was that I never finished any of them :)

> Then you'll now discover one of the key points in VCS programming:
> cycle counting. Your code to display the player probably takes longer
> than the VCS needs to get to the 40th pixel in the scanline. When your
> change to the graphics register happens, the VCS is already past that
> point, so that the change will only take effect in the next scanline.
> You'll have to restructure your code in such a way that the write
> access to the graphics register will happen during the horizontal
> blank period.

Yes, I'm learning all about cycle counting... looks like I'm just
trying to do too much in one scanline.

> Of course you can use the assembler that you like best. However,
> since most of us are most familar with DASM sysntax, you'll probably
> get more responses to your questions, if you post your code in that
> format too. And since you probably haven't build up a large code base
> in ca65 yet, and since you also haven't chosen ca65 for any special
> reason, it might still be possible to switch assemblers without too
> many problems.

That's basically the conclusion I came to... the syntaxes (syntaces?
syntaux?) aren't all that different anyway, ca65 uses .byte instead of
just byte, etc., and requires a : after a label... and lets me use
ASL A as a synonym for ASL... and is less picky about whitespace. But
they're both nicer than MAC/65, which is what I learned on (actually,
I once wrote some scripts to let me run MAC/65 under Atari800 in text
mode directly from the Unix command line.. I'd write my code using
vi, then type `make' and the Makefile would create a floppy image
with the code on it, run MAC/65 within Atari800, then extract the
binary... but I digress.)

Anyway I've got the code assembling properly under dasm now, so that's
what I'll stick with from now on.

When posting code, which is better: include it inline in the message or
as an attachment? (or both?).. more people would be likely to actually
read it if I paste it into the message, but if they actually want to
assemble & run it, it'd be better to have as an attachment, I'd think.
But what I actually will do, is follow existing customs of this list, as
soon as somebody lets me know what they are :)




If a trainstation is the place where trains stop, what is a workstation?

Archives (includes files) at
Unsub & more at

Current Thread