Oliver Schmidt [Thu, 4 Apr 2019 07:16:59 +0000 (09:16 +0200)]
Avoid unintended file "shadowing".
https://github.com/cc65/cc65/commit/3d8c3a494801e106e33fa7dcc4fd3daedad1b98a caused an unintended "shadowing" of files in /libsrc/runtime by files in /libsrc/common. Therefore the files in question are renamed (again) in /libsrc/common to make the files in /libsrc/runtime "visible" again.
Greg King [Mon, 11 Mar 2019 12:59:30 +0000 (08:59 -0400)]
Added a C header that translates from the source file's encoding to PetSCII.
It can be used to undo what "cbm_screen_charmap.h" does. Together, those headers let you mix screen-code and PetSCII string and character literals in a C source file's Assembly output.
Greg King [Tue, 5 Mar 2019 20:52:00 +0000 (15:52 -0500)]
Fixed the CBM screen-code C header.
Changed the number literals from Assembly format to C format. Swapped the (upper-/lower-case) mappings of letters because the header converts from ASCII, not PetSCII.
Bill Kendrick [Sat, 16 Feb 2019 08:25:25 +0000 (00:25 -0800)]
Move Atari-specific PIA reg vals to atari.h
PIA is also used in the Commodore PET, and for different
purposes (see http://www.6502.org/users/andre/petindex/progmod.html#pia1),
so extracted Atari-specific register #defines and placed them in atari.h.
Bill Kendrick [Fri, 18 Jan 2019 07:53:53 +0000 (23:53 -0800)]
Cleaned up _pia.h register stuff a bit
Most documentation say that most of the bits are normally set to 1 or 0,
so just mentioning that in the comments.
A.N.A.L.O.G. issue 59 (April 1988) "Bits & Pieces" column, "Atari Zucchini"
(https://www.atarimagazines.com/analog/issue59/bits_pieces.php) implies
that they are used for specific things, but it's not clear enough to be
useful (or specifically states "Too complex and not pertinent").
This is probably sufficient for most purposes; if any PIA / PACTL/PBCTL
experts pop up, they can tell us exactly how those 4 bits can be utilized.
Bill Kendrick [Fri, 18 Jan 2019 06:44:25 +0000 (22:44 -0800)]
Atari colors into _gtia.h; NMIRES/NMIST as union
Use a C "union" to give both read (NMIST) and write (NMIRES) labels
to their shared register in ANTIC. (h/t @groessler).
Consolodate duplicated color definitions (HUE_..., COLOR_... and TGI_COLOR_...;
and the "_gtia_mkcolor()" macro), found in both "atari.h" and "atari5200.h",
moving it to "_gtia.h", which they both share (and which makes the most sense).
Cleaned up comments in Atari 8-bit headers.
Internal keycodes (POKEY's KBCODE) were already #defined in atari.h,
so didn't need a whole new set in _pokey.h.
Bill Kendrick [Mon, 14 Jan 2019 05:31:18 +0000 (21:31 -0800)]
Some PIA register #defines
Some register #defines for PIA.
(Some may be too Atari-centric -- I know PIA chip was used by PET &
perhaps other platforms supported by cc65. If so, perhaps we can
define them elsewhere. Not sure whether they'd be the same for 5200;
I admit I know zilch about that system except that it's _more or less_
an Atari 400)
Add #defines for certain registers' values.
Also add #defines for internal keyboard codes (unrelated to ATASCII;
e.g. [Q] = 47, [W] = 46, [Shift] adds 64, etc), as seen in KBCODE.
Bill Kendrick [Sun, 13 Jan 2019 09:59:41 +0000 (01:59 -0800)]
Note about hues varying depending on environment
There aren't really standard color names (e.g., Compute!'s Mapping the Atari and First Book of Atari Graphics have different names), and exact colors shown depend on the system & device, anyway. Added a note.
Also, added #define equivalents for Display List mode line instructions
based on Atari 8-bit OS (aka Atari BASIC "GRAPHICS" command) values
(e.g., "DL_GRAPHICS0" == "DL_CHR40x8x1").
Added some more documentation in the comments.
Added macros with assembly language for the start/end of Display List
Interrupt (DLI) functions.