💾 Archived View for mirrors.apple2.org.za › archive › apple.cabi.net › FAQs.and.INFO › IIGS.SPEC.INF… captured on 2024-12-17 at 13:01:44.

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

Path: news.uiowa.edu!hobbes.physics.uiowa.edu!math.ohio-state.edu!uwm.edu!vixen.cso.uiuc.edu!news.uoregon.edu!cie-2.uoregon.edu!nparker
From: nparker@cie-2.uoregon.edu (Neil Parker)
Newsgroups: comp.sys.apple2
Subject: Re: What is 'Encoder Bd Apple II' ????
Date: 23 Jun 1995 08:34:53 GMT
Organization: University of Oregon Campus Information Exchange
Lines: 48
Message-ID: <3sdubd$nql@pith.uoregon.edu>
References: <3s7nr6$luk@stork.qut.edu.au> <DAJsv6.AEA@IRO.UMontreal.CA> <3sc099$2fh@acme.freenet.columbus.oh.us>
NNTP-Posting-Host: cie-2.uoregon.edu

In article <3sc099$2fh@acme.freenet.columbus.oh.us>
dalloff@freenet.columbus.oh.us (Dave Althoff) writes:
>[...munch, crunch, chomp, yum yum...]
>In my ][e, I made a little keyboard modification...cut an hourglass jumper
>and solder across a diamond jumper...which does the same thing to that
>machine.  It's really nice to be able to reset with one finger, and
>re-boot with two.  In fact, I've been known to use SA-RESET-RESET to
>reboot when the OA and RESET keys were just too far apart for my free hand...
>
>Now if I could just figure out a way to do the same with my IIgs... 8-)

Suprise!  You CAN do that on your IIGS.  And there aren't any hardware
modifications to make--it's software-programmable.  The only problem is that
it only works once...the ROM restores the normal RESET handling fairly
early in the reboot cycle, so to get the single-key-reset to work again
after the reset, you'll have to run your single-key-reset-enabling program
again.

The following machine-language code should do the trick:

00/0300:18          CLC         ;go native
00/0301:FB          XCE
00/0302:C2 30       REP #30
00/0304:F4 01 00    PEA 0001    ;send 1 byte
00/0307:F4 00 00    PEA 0000    ;data buffer at $00/031A
00/030A:F4 1A 03    PEA 031A
00/030D:F4 04 00    PEA 0004    ;ADB command = 4 (Set Modes)
00/0310:A2 09 09    LDX #0909   ;_SendInfo
00/0313:22 00 00 E1 JSL E10000
00/0317:38          SEC         ;back to emulation
00/0318:FB          XCE
00/0319:60          RTS         ;return to caller
00/031A:80                      ;set mode bit 7: turn on single-key-reset

This code is designed to be called in emulation mode (from BASIC, for
example).  You would, of course, want to take out the CLC/XCE at the
beginning and the SEC/XCE at the end for a native-mode program.

It would be pretty easy to put code like this into a temporary INIT file so
that single-key-reset would be available whenever GSOS boots.  In fact, if
anybody's interested, I could write one up and post it in short order.

          - Neil Parker
--
Neil Parker                       | No cute quote, no cute ASCII art, no cute
nparker@cie-2.uoregon.edu         | disclaimer, no deposit, no return....
nparker@cie.uoregon.edu           | (This space intentionally left blank:
http://cie-2.uoregon.edu/~nparker |                                           )