[Coco] Re: Using Disk EDTASM
Torsten Dittel
Torsten at Dittel.info
Thu Apr 7 10:57:44 EDT 2005
> 1) Setting the video mode on the Coco3 in assembly to the equivalent of
> HSCREEN 2
No idea. Never had a CoCo3 here in Germany when I was still coding...
> 2) setting a single pixel on said screen aka HSET(x,y,c)
Well, there are always two approaches: If you're lazy or don't have
space or maybe don't need speed, you can make an (undocumented) call to
the corresponding routine in the SDECB ROM of the CoCo3 (you have to
know how to pass parameters, this might be complicated and slow and
mightn't work with different BASIC versions). Otherwise, you have to
programm routine on your own. It depends on the resolution of the
screen, on the way its memory is addressed and on how many bits are
actually present in a pixel. Things were quite easy in PMODE4 on the
CoCo1/2 but on the CoCo3...
> 3) reading from a joystick using asm
There was a documented indexed jump to the BASIC routine (something like
"JSR [$A00A]") but the routine was slow (because of a bug) at least on
the CoCo1/2 (I used to use my own fast routine). "indexed jump" means,
it jumps to a subroutine at the address which is stored in ROM location
$A00A in this example (no jumping to $A00A!). The address which is
stored there might change from ROM version to ROM version, but the place
where it's stored ($A00A) never.
Not much, but a point for someone else to jump in and correct me...
Torsten
More information about the Coco
mailing list