Ask The Readers
Robert Lock, Richard Mansfield, And Readers
COMPUTE! welcomes questions, comments, or solutions to issues raised in this column. Write to: Ask The Readers, COMPUTE! Magazine, P.O. Box 5406, Greensboro, NC 27403. COMPUTE! reserves, the right to edit or abridge published letters.
A Bigger Set Of Commands
I keep reading about this new POKE, and that new POKE, to do all sorts of wonderful things. But it seems cumbersome to me. As micros evolve, might not some scheme evolve so these memory addresses do not need to be memorized?
In other words, a much larger command set. The new commands are directly translated internally to the proper POKE, so it wouldn't require that much more memory. And it would be both easier to remember and more transportable.
What do your readers think? Perhaps some of them already have done such a program!
Kevin Sinclair
Language designers face a tough decision: they must balance convenience (many commands) versus the amount of ROM or RAM granted to them (such as 8K BASIC).
Fortunately, many languages can be extended, permitting you to add extra, custom commands. If your language is "soft-loaded," coming off disk or tape into RAM, you can usually "patch into" (modify) the language to force it to recognize your new commands. However, the new commands will generally have to be written in machine language and reside in RAM somewhere.
ROM-based languages are more difficult to alter. Most Microsoft BASICs (Apple, OSI, Commodore) put a fragment of the language into RAM during their start-up sequences when you turn power on. You can put a machine language "JMP" command (a "wedge") in the midst of this fragment which causes the computer to regularly "jump" to a machine language routine of your own which would check to see if you had typed "SPECIAL" or whatever instead of a normal BASIC word.
The "Universal Wedge" for disk commands, Basic Aid, and other BASIC enhancement programs use this method. Non-Microsoft BASICs, such as Atari 8K BASIC, can also be made to recognize new commands, but it is a tricky business. Watch upcoming issues of COMPUTE! for an Atari Wedge routine.
For further information about adding "Wedges," see Bill Wilkinson's "Insight: Atari" column COMPUTE!, May, 1982 #24), "Modifying Apple's Floating Point BASIC" (COMPUTE!, May, 1982, #24) and, for Microsoft BASIC in general, "The Wonderful Wedge" (COMPUTE!, April, 1981, #11).