Classic Desk Accessories are an ideal solution to implement a fast utility for the Apple IIGS that can be accessible from GS/OS and often from ProDOS 8, too.
This information is being offered to show how easy it is easy to code a new CDA using Orca/C. The C language makes coding on the Apple IIGS extremely easy. Novice programmers will be able to make a useful desk accessory. The CDA can also be a great stepping stone for an 8-bit programmer to develop programs that are IIGS-savvy.
The source to each CDA has been included. Developers are encouraged to take advantage of this for future developments. All source is GPL.
HelloWord.po shows that a CDA can be written in just a few lines of code. It has an inherent problem where it doesn't have any user input and immediately ends. Developer start to understand how CDA's behave like the ones that come included with a IIGS. All it does is print "Hello World" to the screen and return control back to the CDA menu.
HelloWord2.po has a CDA named HelloWorld that prints "Hello World" to the screen and asks for a key to be pressed.
HelloWord3.po has a CDA named HelloWorld that shows how to leverage localization on the IIGS by printing "Hello World" to the text screen in the native langauge that was set in the control panel and asks for a key to be pressed.QuickAscii.po shows an ASCII chart including decimal, hex, and the character.
QuickAscii2.po has a CDA named QuickAscii which shows the ASCII chart, but also has the best attempt of the borders that the system CDA uses. More importantly, this is great example to show how to take advantage of the Console Driver by displaying mousetext and positional cursor control.
GamePortTester.po uses the complete border drawing as used by system CDA's. It reads the digital switches and analog controls that are connected to the game port of joystick port. The digital annouciators can be enabled and disabled for supported devices on the game port. Standard Apple paddles and joysticks only need 3 millisecond polling for ananlog readings. Other devices may need a longer polling and it can be adjusted to ensure accurate readings.