[channelf] Re: Channel F graphics

  • From: "Sean Riddle" <seanriddle@xxxxxxx>
  • To: <channelf@xxxxxxxxxxxxx>
  • Date: Wed, 27 Oct 2004 20:50:54 -0500


        I'll try :)  It's been a while since I wrote any Channel F code, so
I'll probably forget something.

        Load up my lights out code (lights.asm).  Look at the subroutine
SQUARE.  It sets the color (high 2-bits) by OUT putting to port 1.  Then =
sets the row by OUT putting to port 5.  Later it sets the column by OUT
putting to port 4.  Then it calls the subroutine PLOT, which writes the
color to that row and column by toggling bit 5 of port 0 and then =
delaying a
little bit.  The delay is important for the actual Channel F console; =
emulator doesn't care.

        You can read the current horizontal and vertical locations from the
ports, but they are complemented.

        Load up the schematics and you can trace those ports to the
corresponding hardware signals.  You can also see that the high 2 bits =
port 5 control the sound.  You probably want to cross-reference with the
MESS source code at this point- the sound hardware can make 3 tones, but
they are only short beeps.  The system 2 sound hardware is slightly
different from system 1; you can play different tones on system 2 =
by toggling the sound bits at different rates.  On system 1, you get
terrible harmonics.  The song at the beginning of the Football cart =
pretty good on system 2, but terrible on system 2.


-----Original Message-----
From: channelf-bounce@xxxxxxxxxxxxx =
On Behalf Of Kevin Lipe
Sent: Wednesday, October 27, 2004 5:32 PM
To: channelf@xxxxxxxxxxxxx
Subject: [channelf] Channel F graphics

We've seen all of the great F8 docs and such, but I still don't know
anything about how the graphics of the Channel F work. Would anyone
who's actually programmed the thing care to give a little primer on
how to actually make the thing output to the TV screen?

The only thing I know is that the graphics are actually bitmapped,
rather than done on a per-scanline basis with the Atari TIA. Past
that, I know nothing.

Sean? Care to explain a little bit? Just the very basics... I'm sure I
can figure out the rest.


Other related posts: