MediaWiki:Sitenotice
2026-03-12: Cocopedia.com is now using a new caching system that should make things faster. Please let me know if you encounter any new issues.

2026-03-15: MediaWiki has been reinstalled and the old database and files restored. It was pretty clogged up from being upgraded so many times since 2004. I am also testing out Cloudflare to see if it can prevent the 'bot assaults that took the site down last year.

2026-03-16: Special thanks to Don Barber for hosting a backup mirror of CoCopedia: https://cocopedia.dgb3.net

PIA: Difference between revisions

From CoCopedia - The Tandy/Radio Shack Color Computer Wiki
Jump to navigationJump to search
Created page with "The '''Peripheral Interface Adapter''' is a chip, of which there are two in your CoCo, that is used for handling I/O, amongst other things. === Keyboard === (under constru..."
 
Polluks (talk | contribs)
Category
 
(One intermediate revision by one other user not shown)
Line 3: Line 3:


=== Keyboard ===
=== Keyboard ===
The keyboard can be scanned through PIA-1 by pulling two values from addresses $FF00 and $FF02. [[Color Basic]] ROM, when running a prompt, converts these to ASCII values to be printed to the screen at cursor position. The first address ($FF00) represents the keyboard rows as well as the joystick button, and the second address ($FF02) the keyboard columns. These two value correspond to ASCII values according to the following table: 
{| class="wikitable"
|-
|
|0
|1
|2
|3
|4
|5
|6
|7
|-
|0
|
|
|
|
|
|
|
|
|-
|1
|
|
|
|
|
|
|
|
|-
|2
|
|
|
|
|
|
|
|
|-
|3
|
|
|
|
|
|
|
|
|-
|4
|
|
|
|
|
|
|
|
|-
|5
|
|
|
|
|
|
|
|
|-
|6
|
|
|
|
|
|
|
|
|-
|7
|
|
|
|
|
|
|
|
|}


(under construction)
(under construction)
[[Category:Hardware]]

Latest revision as of 17:21, 10 September 2015

The Peripheral Interface Adapter is a chip, of which there are two in your CoCo, that is used for handling I/O, amongst other things.


Keyboard

The keyboard can be scanned through PIA-1 by pulling two values from addresses $FF00 and $FF02. Color Basic ROM, when running a prompt, converts these to ASCII values to be printed to the screen at cursor position. The first address ($FF00) represents the keyboard rows as well as the joystick button, and the second address ($FF02) the keyboard columns. These two value correspond to ASCII values according to the following table:

0 1 2 3 4 5 6 7
0
1
2
3
4
5
6
7

(under construction)