SEPT/OCT 86 PLS RATES
PAID
COLTON. OR 97017
PERMIT #51
computer
curry
“We know the QL ... We've been appreciating it longer.”
QL Special #1 — $289.95 QL Special #2 — $299.95
>QL Computer-free ground shipping > QL Computer
>WD Utility Prg. worth $16.95 > Free |.C.E. ROM
>Subscription QL Report $15.00 | CON-based front end
>8 Free programs including: operating system for QL
— music program > $8.00 shipping
— windows demo packages include the 4
— graphics pictures Psion programs.
— calculator prg. These same 4 prgs. are also
— and more avail. on the IBM and
retail for $695.00.
— Take 20% off the following if ordered at the same time: ICE, QSpell and/or Centronics I/F
QL Special #3 $299.95
> QL Computer QL Special #4 — $299.95
> Your Choice of One Sighicomauier
Mea) aie S Free UPS 2nd Day Air
— Wanderer SREBIS
— Peintre
— Othello
— Nucleon OR
— Vroom
All Packages include the Psion Programs — Word Processor, Data Base, Spread Sheet
and Business Graphics.
Write or call for our FREE Catalog full of Software, Books, Hardware and Peripherals.
To place Orders 24 hours a day Call: 1-800-628-2828 ask for extension 950.
P.O. Box 5607 @ Glendale, Arizona 85312-5607 e 1-602-978-2902 e Telex (via WUI): 6501267701
OFFICE: 2412 West Greenway e Suite B-10 @ Phoenix, Arizona
SEPTEMBER/OCTOBER 86
VOL.2 NO.6
MAGAZINE
FOR ALL TIMEX AND
SINCLAIR COMPUTERS
TIME DESIGNS MAGAZINE CoO.
29722 Hult Rd.* Colton, Oregon 97017
(503) 624-2658
TIME DESIGNS MAGAZINE is published bi-
‘monthly and is Copyright © 1986 by the Time
Designs Magazine Company, Colton, Oregon
97017. All rights reserved.
Editor: Tim Woods
Assistant Editor: Stephanie Woods
Editorlal Assistant/Production: D.L. Woods
Photography:
(unless otherwise noted): Thomas Judd
Printing by; Toad’! Litho Printing and Comp.,
Oregon City, Oregon 97045
SUBSCRIPTIONS: $15 a year for six issues (US
funds only). No extra charge to Canadian
subscribers. All other countries please write for
information on air mail rates.
CUSTOMER SERVICE: Customer satisfaction is
our goal. For subscription service problems
please write or call TIME DESIGNS.
CHANGE OF ADDRESS: Write or call to prevent
delay of sevice,
Reproduction of this magazine in whole or in
part by any means without written permission is
Prohibited by law
NOTICE: Contritutors 1o TIME DESIGNS are independent
of the TIME DESIGNS MAGAZINE CO,, and opinions ex-
pressed in the contents ofthe magazine arenotnecessarly
‘hose of the management or its advertisers. Time Designs
‘Magazine Co. wiinotbe heldliale foranydamago or conse-
quences resulting trom instructions, assertions of fact,
review of products or companies provided in the magazine's
content."
***NEWw!*?*
WE ACCEPT VISA
AND MASTERCARD
= ©
(503) 824-2658
For Books, Subscriptions
and Renewals
small 4%
for
iers
Note: We must charge
additional f
Credit Card
COMMENTS
by the editor
Commodore...Soon to join our ranks?
It's been a downhill slide ever since Jack saw the
greener grass over at Atari, packed his bags and left
Commodore, the company he saw rise to prominence in just
three years. Things are bad at Commodore. Real bad.
Experts say the the company is losing nearly 120 million
a year--that figures out to be around 3 million a week!
If Commodore does bail out, one can only wonder
what's in stone for countless enthusiasts world-wide.
Will the small company and cottage industry be the main
source of support, just like our own community emerged
two years ago? Will the slick magazines bail out (just
Vike SYNC and TIMEX/SINCLAIR USER did)? A lot of after-
market software and hardware houses are counting on the
health of Commodore for their very existence.
What does all of this mean to you and me? Actually,
I want to use Commodore as a "vehicle" for my annual
Jecture on SUPPORT. Where would we be without our disk
drives, printer interfaces, Spectrum Emulators; not to
mention some really great home-brew software and various
Publications? We would have been dead in the water
months ago.
Will our supply of computer “goodies” last. 1
believe so...but it will require everyones participation
and SUPPORT. Unless we send for that great-looking new
Program or board for our Sinclair, or even just respond
to catalog offers that we read in newsletters and mags--
we won't have Aerco, E. Arthur Brown, Zebra Systens,
Novelsoft, Weymil Corp, Curry, Knighted--so forth and so
on. If you have been thinking about a new purchase...now
is the time...tomorrow maybe a little too late.
I always wonder as I'm “pasting up” the ads in TIME
DESIGNS, just how many readers actually pay attention to
them. Some company has paid us good money for a spot in
the magazine. This helps offset our production costs.
Please SUPPORT our dear advertisers, they SUPPORT us.
Well, another lecture has come to a close. I'll get
down off my soapbox now. Enjoy this issue of TDM, and
get ready for the next one--our Second Anniversary
Issue, And what a celebration that one's going to be!
lim (Joo
“the editor”
on the cover:
Renew Your
Subscription Today!
KAKKKK KKK KKK
CRITICAL MASS (Arca
‘An outlying system of the Terra Federation has set up an advanced
NEW FOR YOUR T/S 2068
KKKKKK KKK KKK
SABOTEUR (Martial Arts Arcade Adventure)
You are a highly skilled mercenary trained in the martial arts You are
3 anti-matter conversion plant on a centrally positioned esterold to employedto infitratea central sécurity building which is disguised as a
© _ supply the local colonists with energy. A surprise attack by alien forces warehouse. You must steal a disk that contains the names of all the
1 has successtully overcome the asteroid's defences and the aliens are rebel leaders betore its information 1s sent to the outlying security
—& Now threatening to self-destruct the power plant unless the colonists stations. You are working against the clock. both in getting to the disk
, _ offer an unconditional surrender. The self-destruction process would and.in making your escape. You mustenter the building from the sea by
effectively turn the power plant into a massive black hole that would rubber dinghy. and will then only be able to leave by the helicopter on
| wipe out the entire planetary system along with a number of nearby theroot. You willhave to find your way around the warehouse, making
|__ stars Unconditional surrender offers an equally horrific prospect, Your use of the guards’ own weapon supplies in your struggle through
| mission is to infiltrate the enemy position and disable the anti-matter overwhelming odds.
plant before the aliens achieve CRITICAL MASS,
a CATALOG #1026 $15.95 CATALOG #1098 $15.95
8
5 eek DUAL DISC DRIVES & INTERFACE FOR QL--$250.00 zk kk KK
a DUAL DISK DRIVES & INTERFACE
a FOR YOUR QL COMPUTER .......
f Now you can cut the rising
i costs of data storage on
oA your QL in half (at least).
2 These 3" drives are answer
Ss to your prayers........ top
sg quality and they hold about
< 160K per side (the "hard"
a : P
cased floppies can be flipped
=
3 over) for additional 160K of DISK DRIVES
storage space! And, don't
forget the great convienience
ADD 5.00 S&H
(not to mention the super reliability of these disks) of having
a second disk drive on line!
cn
-including and we'll
even put the WP,DB,SS, and BG programs on one of the two disks
supplied with the drives -- ready to run -- and our regular disk
drive interface ALL INCLUDED.....
++sNOW ONLY $249.95 !
3" DISKS - (for above)
disks.
- Encased in hard plastic with a sliding
metal "door" to keep dust (& fingerprints)
from getting onto the
SWALI MIN ANVW---SHOIYd MAN TIV--- SOTVLVO Ja¥d UNO YOd TIVO YO ALTYM
The metal door opens automatically when the disk is put
into the drive. BULLETIN - A NEW FACTORY JUST OPENED UP IN HONG
KONG TO PROCUDE THE 3" DISKS - WE BELIEVE A PRICE REDUCTION FOR
THESE DISKS WILL FOLLOW SOON! $4.50 each or 10 Disks for $43.50
KNIGHTED COMPUTERS
707 Highland Street FULTON, NY 13069
(315) 593-8219
LETTERS
To the Editor,
I really enjoy your magazine and please keep up the
good work! I have a question...do you know of any 88S
Program for the 2068 (using the 2050 modem)?
T have included two graphic printouts that I made
using a program that I call "draw". Hope you enjoy them
as much as I did making then,
Truly yours,
Clifton Tiddle
Diamond Bar, CA
Editon: CLégton, your in luck. 1 just tatked to Eben
Brown on the phone, of E. Arthur Brown Co. (3404 Paunee
Drive, Alexandria, MN 56308, 612/762-8847). He has a new
BBS prognam that wilt be featured in his next catalog.
12's catked CASBOARD 2068, and is avaitable on eéther
cassette on ALJ wager. The Load and Save commands are in
BASIC, 40 the program could be easity converted to any
disk drive system. CASBOARD, was programmed by Kurt
Casby, best known fon his LOADER series of prograns.
Preliminary speci¢ications sound great...and should be a
Lot of fun setting up a smake home-based BBS. Paice is
$19.95 plus $1.95 for postage.
T déd enjoy your drawings.
here gor others £0 admire.
ssand I've printed them
To the Editor and the Readers:
Can anyone cone up with a simple program for my
T/S 2068 which will print the characters immediately on
the printer instead of on the screen? With this capa-
bility T would like to use the computer and its printer
without the TV/monitor to do simple computations, Can
anyone help?
Sincerely,
Michael J Nowak
San Diego, CA
Editon: I'LL forward any possible solutions on to Mr.
Nowak that we receive, as well as publish them in an up-
coming issue. I assume that the regerence to a "printer"
means the Timex 2040 thermal printer. C'mon programmers!
Dear Tim,
Thank you for showing interest in my little gizmo.
I have written to other publications, but no one even
answered to say the were not interested. You have my
Permission to print my address, I will be glad to cor-
respond with anyone who needs more information on adding
automatic two-key entry from a one-key closure (to an
external keyboard like the TI 994/A surplus keyboard),
Sincerely,
D. (Sandy) Rea
« Rt. 1 Box 18
Priest River, 1D 83856
Editon:
T appreciate you sharing your circuit diagram
with us.
Be Sa... 4, bu,
fits of
Ps Stir key 4066A chin
"As Fer bower
leks Lath, Re.
Om Resistance,
‘Fat
When key is closed, +5 volts is applied to
both gate inputs. Gate #1 switches immediately
Closing switch #1 in 4066 for shift function.
Gate #2, because of delay in charging Cl thru
Rl switches after gate #1, closing switch #2
Keybenra key for cursor-left function. If this’ circuit te
Eater beet duplicated for more functions such as shift
cursor-right, the shift key sections of the
4066 may be tied in parallel, as many sections
of the 4066 may be done this way, as desired.
The gates! chip can be any OR Function chip,
TTL, CMOS or LS.
Tim:
T remember some time ago in TDM that you asked
readers to send some simple programs for publication, so
enclosed is one for the 2068, which you may use if you
wish. AS you can see, this calculates the number of days
between any 2 dates (I think the limits are 1900 to
2010) and accounts for leap years, also.
By the way, in the Jan/Feb 86 issue, page 3, you
published a T/S 1000 “bubble sort” for a reader. 1 could
hot make the program work without deleting line 230 (LET
Nel).
Leo Schroeder
Billings, MT
2 REN DAY BETUEEN oATES.
BOKE GIVES KEY BEEP
49 POKE 23603,108: Go TO 900
200 LET Onys (MS); LET JeINT (2
5447S) -INT (79047) /4436 747 40-28
Fo ULENT (Q7100144) 3374). RETURN,
924 INPUT “PIRSt GATE? MO-DAYY
BU,Ng0.V; CRINT “PERST DATE");
925 Go sUB 100: Ler visu
S28 INPUT “LAST DATE? MO-DAY-yR
SER /BoY: PRINT “LAST OATE "iM;
26 Go’ SuB 100: PRINT “DAYS BET
WEEN Bates “dou.
What’s In A Name?
Early in 1983, advertisements for
INTERNATIONAL appeared in the national Sinclair
magazine SYNC, Ramex, of Utica, Michigan, sold
external 2X81 keyboards, RAM packs, among ‘other
items, With the advent Of the 2068, the company
‘expanded further, under the direction of general
manager, Scott Duncan. They obtained the ex-
clustve'marketing rights to TASHORD TWO word
processor from Tasman Software in Great Britain.
Later on, after Timex bailed out of the U.S.
Computer market, Ramex imported a Spectrum disk
Grive interface for the T/S 2068 and coupled it
with quad drives as a package...it was called
the "Hillennia K", An “overkill with the quad
Grives later led to an Andek 3" disk system.
Then in February of 1986, Ramex announced
that they were no longer supporting Timex con-
puters or their disk drive system, but instead
‘opted to carry the American version of the QL
from Sinclair Research plus peripherals and
software. They changed the name Ramex Inter~
ational to FOUNDATION SYSTEMS. About the same
time, they moved from their original facilities
to an address in Kashington, Michigan, A new
public relations manager wrote a review on the
QL, which appeared in the February issue of
Computer Shopper.
When At Computer Response of Keene, New
Hampshire, took over distribution of the QL in
the U,S.," Foundation Systens became a fully
authorized dealer.
In June and “July of this year, several
readers of TOM wrote, requesting assistance in
contacting Foundation Systems, because Qls they
had sent for were not being delivered. What TOM
Jearned was that the distributor, Ar
Response was receiving similar complaints, and
that Foundation’s phone number had been’ dis~
connected. A spokesperson for At informed TOM
that Foundation was no longer an authorized QL
dealer.
By surprise,
that once wore,
RAMEX
Computer
in August, TOM was informed
nother company had surfaced
using the s hington, Hichigan address.
4s called MATRIX TECHNOLOGIES. The company
out a small ad in the Septenber 1986 issue of
Family Computing Magazine. The new product? 10
PC clones for $399.
Sir Clive’s Confessions
Entrepeneur extraordinaire, Sir Clive Sinclair, has ended several
months of silence, following the sale of major interests in his company that
pioneered low-cost home computers, to Amstrad Consumer Electronics PLC. Last
week, Sir Clive came out of seclusion and spoke with the British press. The
following comments were taken from two separate interviews relating to
questions posed about Sinclair microcomputers.
Sir Clive on the Spectrum-
"The Spectrum was and still is an enormous success although it is
showing it's age a bit. I was rather surprised to see it turn out to be a
games machine...we really knew very little about that side of the market."
What about the QL?
"I think the QL was an interesting idea
in the end it didn't work out very well, as we had originally anticipated.
The market for a 68000-based micro wasn't as big as research led us to
believe. The QL had teething troubles early on, The truth was, that when the
project came up, that later became the QL...I wanted to do the whole thing
on the 280 microprocessor, but most of the engineers and Nigel (Nigel
Searle, former Sinclair Marketing Director] wanted to do it on the 68000. I
couldn't see the point of that because it seemed to me you were paying a lot
of money for the chip and I couldn't see what you were going to be able to
do on it that you couldn't already do on the 280. Sure it was a bit faster
in principle...but it wasn't that in practice. Looking back there was no
need to go for 68000 technology. He just haven't found a way to use the
68000 that gives any extra benefit to the customer."
Sir Clive on the Microdrives~
"The bad press the Microdrives received was unfounded, I'd defend them
absoulutely. I think they were a marvelous approach to low cost mass
storage. Their technology and application should be studied further."
What about the Pandora?
"T want to go ahead with the Pandora project. It will not be compatible
with either the Spectrum or QL, as we have lost all rights to their tech-
nology. I think it will be best in a way, as it opens the door for a new and
customized operating system. Most of the portable computers available are
compromises of one sort or another. To me, a portable computer must be
totally portable and no trouble to use.”
Anstrad director, Alan Sugar?
"I hope to keep in touch with Alan Sugar, and I like
Sir Clive's future?
"Tam most happy right where I am now..tinkering with new projects
the future, To be perfectly honest, I have never
the business manager role.”
NOVELSOFT Emerges As
Premier TS Software House
If one were to imagine what the ideal Timex/Sinclair software
would be like, some attributes might include a full time office, open for
customer's questions and support, professional products with “complete”
documentation at a fair price and prompt order processing. NOVELSOFT of
Toronto, Canada, may come close to filling the bill.
The reviews are out, and the word is spreading fast about recent soft-
ware releases from Novelsoft; TIMACHINE, quite possibly the best BASIC
Compiler ever for Sinclair computers; ARTWORX Version 1.1, a sophisticated
graphics package; and a brand new release called THE WORK!, which is a
collection of useful mini-programs. All of these releases are on their way
to achieving "hit" status in the T/S community...a small accomplishment that
would blush next to the giant software houses, but a respectful one never
the less.
According to Novelsoft, Senior Partner, David Ridge, the company was
started to promote their programs in Great Britain. They have had some in-
terested U.K. software publishers, but the current situation in England with
+a sophisticated machine, but
him very much."
for
felt comfortable playing
company
Amstrad and the Spectrum, has put a halt to most major investments. The
whole industry is waiting to see what will happen next.
Novelsoft has generously included a version of their popular programs
on one side of the tape for the Timex/Sinclair 2068. The other
side has a
Spectrum version of the program,
Product/Dealer News
Sinclair telecomputing experts Ed Grey and Dave
Clifford (G & C Computer Products), based in Southern
California, have officially announced the release of
SPECTERM-64 terminal software and the Z-SI/O card, an
RS-232C interface for the T/S 2068. The Specterm-64
software will operate on a Spectrum-emulated T/S 2068. A
stock 2068 version is planned for a later release. The
terminal software includes a true 64 column display
uses XMODEM protocol for file transfer, will transfer
all control characters including ESC, has a 35K+ buffer,
and is fully compatible with the T/S 2050 modem and the
Sinclair Microdrives. Specterm-64 comes with extensive
documentation, and a special version configured to run
the Z~SI/0 card. The card was designed and manufactured
by Dave Clifford, who also developed the Z-LINK Spectrum
interface in 1985. Z-SI/0 includes a standard RS-232
connector (DB 25 pin), and a full buss feed-through. It
will drive a wide range of peripherals, including any
300 and 1200 baud modem (including Hayes compatibles
with the 2068. Note: Specterm-64 can be overlayed to run
almost any RS-232 I/F currently available for the 1/S
2068, including the circuit featured in the March/Apri
1986 issue of TOM. Specterm-64 also has built in 1200
baud compatible routines. Price for Specterm-64 {
$30.00 plus $2.00 S&H in U.S. (Canada add $2-U.S. funds)
The Z~SI/0 card is $75.00 plus $3.50 S&H (Canada add
$2). Additional information can be obtained by writing
Ed Grey or Dave Clifford at: PO Box 2186, Inglewood, CA
90305, (213) 759-7406 or 516-6648
Another good value for your T/S modem-ing dollar,
is the LOADER V software package by Kurt Casby (25
Battle Creek Court, St. Paul, MN 55119). It is an en:
hancement for the 2068, 2050'modem and MTERM (Smart II
terminal software. Loader V is the final suite in the
“Loader” series previously offered by Mr. Casby. Loader
V features: An additional 20 number dialing directory,
an auto-repeating dialer, capability to Load Mterm
buffer with any standard "Bytes" file, Loads text files
Created with either TASWORD II or MSCRIPT into Mterm'
buffer, an XMODEM protocol, among several other user-
friendly features. The program on cassette with complete
documentation is priced at $9.95.
Robert C. Fischer, producer of PRO/FILE EXTENSIONS,
T/S GRADER, WORD PUZZLER, and WORD GAMES, has changed
his address and can now be found at Rt 2, Arizona St.
Emerson, GA 30137.
QL SCREEN DUMP is a utility program that allows the
user to dump items produced on the screen in SuperBASIC,
to any Epson-compatible printer. QL Screen Dump is
written in fast, compact machine code and reportedly
takes up less than 3/4K RAM. The program is available
for $24.95 from E-Z KEY, Suite 75, 711 Southern Artery,
Quincy, MA 02169.
The English Micro Connection of Newport, Rhode
Island, closed it doors for good on August 5th, due to
some "serious health problems". EMC owner and operator,
Bob Dy] was an early supporter of TIME DESIGNS, and gave
TOM several news items of Sinclair computing in Great
Britain, obtained from several trips that Bob made to
England. The editorial staff of TOM wish Bob a speedy
recovery and best wishes for the future.
knighted Computers, 707 Highland St., Fulton, NY
13069, (315) 593-8219 has obtained some stock and items
as a result of the closure of EMC. For information and
prices on some interesting QL goodies, write to either
Ray or Joe at Knighted.
Stan Lemke, a regular columnist for TOM, and owner
of Lemke Software Development (2144 White Oak, Wichita,
KS 67207), has done it again. His new program, COLOSSUS.
looks like a winner. The program is a graphics banner
designer package that allows the user to create a banner
32 screens long, with a variety of font styles/sizes,
and add low-resolution graphics on, over and around the
es
——— aS
5
banner text. There are also extensive editing features
Printing is to either 2040 or a full-size printer, with
modifications by the user for specific printer/interface
combinations. A bonus feature of Colossus is a “movie
animation" function, that flips a total of 32 screens at
the rate of four screens per second for an interesting
effect. The program is available on cassette, with full
documentation, and a sample animation file, for $19.9
(postage included).
HIGH RESOLUTION programming for Zx81-based micros,
is the trend, up at Fred Nachbaur's workshop (address
C-12 Mtn. Stn. Group Box, Nelson, B.C., VIL 5P1 Canada).
We're not sure exactly how he does it, but we do know it
takes a lot of memory. Fred's latest offering is a high-
res maze adventure game for the Timex 1500 with either
a 16K RAM pack or 8K Hunter Board (purchasers must
specify which version). A later version for the ZX81 and
T/S 1000 will be released. DUNGEON OF YMIR, is 100%
machine code, with monsters and multi-levels.. Price i
$24.95. Other hi-res programs are available.
Users Group Update
T/S User Group Correspondents: Send us your group's
address and we will list it in an upcoming issue. We
will also print announcements, special events and User
Group news (if it's brief).
Anyone interested in forming a T/S User Club in the
Leesburg area of (Central) Florida, should contact
Warren Fricke, 225A Highland Dr, MFL, Leesburg, FL 32788
or phone (904) 589-2729,
Timex-Sinclair User Club, c/c Mr. Richard K. Norek,
188 St. Felix Ave.k, Cheektowaga, NY 14227.
Timex-Sinclair User Group, 1545 Alta
Apt. 1402, Ottawa, Ontario, Canada K1G 3P4,
Vista Drive,
Over 45 guests attended the Grand Opening and Open
House at the new facilities of Time Designs Magazine on
August 30. Attendees included some members of CATS and
PATS Users groups of Oregon, as well as a number of
subscribers from the Northwest. Highlights included
a QL demonstration by TDM writer, Mike de Sosa; preview
of LIGHT SHOW 2000 (a program featured in this issue) by
the author Michael Carver; Sinclair merchandise was
displayed and sold by RMG Enterprises; and there were
door prizes and refreshments. The day was enjoyed by all
those who came. Tim Woods, Editor of TOM, announced that
‘the Open House would be an annual event.
————— OO
———————
“Se LIGHT © SHOW
Revox (a manufacturer of "Top-of-the -Line” audio
equipment) recently introduced a cassette deck with an
RS232 port, allowing control of the unit via a computer.
For a mere $1,400.00, this cassette deck could be yours.
LIGHT SHOW 2000 will turn the tables on the Revox for
about 1/100th of the cost. LS 2000 is a program which
will allow your cassette deck (or any other musical
source) to control your computer.
LS 2000 will poll the ear port of your TS 2068 and
decipher any pulse detected into one of four tonal
groups (the shorter the pulse, the higher the note). De-
Pending on the tone detected, a corresponding color
pattern will be displayed on the screen. The user has
control of the tonal groups, colors, duration of display
and the speed at which the tones will be read. This
flexibility allows one to "view" the same piece of music
in a multitude of ways, or to tailor the program to a
certain musical selection. LS 2000 comes with one preset
Set-Up to "display" music and provides for four user-
defined set-ups.
LS 2000 HOOK-UP
To use LS 2000, some means of providing a musical
source to the computer must be used. There are several
ways of accomplishing this, some more flexible and pre-
ferable than others. The simplest means is to hook up a
wire directly from the speaker of a stereo system to the
earphone jack of the TS 2068. (IMPORTANT: Do not hook up
more than one channel of a stereo system as this may
damage the stereo amplifier.) This can be done by
running speaker wire from the rear connectors of a
speaker (or from the speaker output of your stereo) to
your computer. Do not leave the speaker disconnected
from the amplifier. A phone jack can be attached to the
ends of the speaker wire and plugged directly into the
computer's ear jack. Or alligator clips can be used to
make a connection to your computer patch cords, The
drawback of this approach is lack of control over the
signal going into the computer. If the music is played
at a low volume, the signal may be too low. Conversly,
“Heavy Metal" from a 200+ watt system at full blast may
cause your 2068 to become light dust.
If the tape recorder you use with the 2068 will
play through the earphone jack while in record mode, it
can be used to feed the sound source into the computer.
A similar wire will be needed to plug into the micro-
phone jack of the recorder, as previously discussed. Run
PARTS LISTS.
Radio Shack Part # Description
42-2370 4 W/RCA phono jack to
wire 36 ine
42-2371 . + 72 Am
42-2372 . + 184 in
ack Attenuate
or wire m
RCA Phono jack to 1/8" signal
a patch cord from the earphone jack of the recorder to
the earphone jack of your computer. Place a tape in the
recorder and set it to record. If you opt for this
method and plan to play your music at medium to high
volume, I would suggest placing an attenuater in-line
between the microphone input and the speaker wire from
the stereo. (An attenuater may be obtained from Radio
Shack for $1.99 -~ Part #274-300. This part has an RCA
Jack for input and a regular mic/earphone jack for out-
put.) This will help prevent distortion and possible
overloading of your recorder. The preferable choice is
to use Radio Shack's mini-amplifier ($11.95 -- Part #277
-1008). The hook-up is the same as with the tape re-
corder. This method will allow control of the signa
volume going into the computer. Once again, use an
attenuater, if the musical source is to be played at any
volume. If LS 2000 does not respond to inpute while
using the attenuater, the attenuater should be removed
(NOTE: This mini-amplifier can be used to boost the out-
put of computer tapes you may have difficulty loading
It also can be used to amplify BEEP output from your
computer.)
A "walkman" type cassette player can also be used
to supply music to the computer if it has two headphone
Jacks. Use one of the jacks to run a patch cord to the
computer.
USING LS 2000
Upon running LS 2000 you will be presented with a
main menu (see example 1). "ENTER LIGHT SHOW" (Option 0
will pulse color patterns on the screen based on the in:
put through the ear port. (NOTE: To return to the main
menu while in this mode, press the "q" Key.) Option 1,
“SYSTEM SET-UP", will provide a second menu allowing the
user to select 1 of 5 permutations of LS 2000 (see
example 2). The current set-up is highlighted via
BRIGHT. (NOTE: If any of the parameters are changed, no
current set-up. is shown.) This menu also allows viewing
of the parameters for any compiled set-up (Option V)
Option $ will define a set-up based on the curren
setting (i.e.; mode, colors, tone, pulse, tempo). The
user is prompted to choose a number to be compiled (2-
5) and for a name. When this new definition is compiled,
it then becomes the current set-up.
From the main menu, the user can create different
set-ups or setting. By changing any of the variou
options (2-6), LS 2000 can be customized to any musical
input or user preference. The best way to learn what
each option does is to experiment. After changing an
option, one can view the results by “Entering Light
ENTER LIGHT sHoU,
SYSTEN SET-UP.
SET Hope,
SET coLor:
‘CONTROL.
TONE
SET PULSE...
SET TEHPO.
SAVE/LORD
Peducer tattenuater’ 199
274-297 eds jeonuetocy 18: (pone he qr Returns from Lignt show
(277-1008 Mint Audio Amplifier w/sps 04.98,
SAID Bese: «cane
Show". Each setting option is provided with prompts and
explanations from within the program. (See Sample Set-
ups for examples.) Depending on the type of music or the
quality of the input (dynamic range), one may need to
retune the tone control. Tone 0 is the highest tone
range, Tone 3 the lowest. The number assigned to a tone
oe the upper limit at which LS 2000 will produce a
pulse.
The Save/Load option allows the saving of favorite
compiled setting to tape for later retrieval,
COMPILE CURRENT SET-UP
VIEU SET-UP... 2.
RETURN TO HAIN HENU,
example 2
BEHIND THE SCENES
When the TS 2068 is loading a program from tape, it
reads through the ear port (port FEh) the signals re-
corded on the tape. The data needed to send the program
is tored in bit 6. If the bit is set ("1") the frequency
of the signal is 1020hz, if it is not set ("0"), the
frequency is 2040hz. The frequency is determined by the
length of the pulse detected. Port FEh also uses bits
4-0 to poll the keyboard. By sending out this port
BORDER colors can be controlled (bits 2-0) or a BEEP can
be triggered through bit 4. When a program is sent to
tape, bit 3 of port FEh is used. The threshold of the
ear port is 23khz, with the input being 4-10 volts p-p.
KEYING IN THE LISTING
Carefully key in the BASIC listing. After you have
typed in the program, SAVE the listing to tape before
running the machine code loading routine. To load the
machine code portion, ENTER as a direct command [RUN
9000]. This portion of the program will POKE the machine
code into its proper address. It also checks for various
typing errors and will provide instructions in case an
error was detected. After the machine code has been
Placed in memory, the program will set up the User
Graphic “A", delete this portion of the program from the
listing, and prompt you to SAVE & VERIFY the completed
Program along with the compiled code. After VERIFYing,
the program will self-run, Go ahead and try it out.
NOTE: In Line 3, the A in quotes is typed via GRAPHIC
mode [Caps Shift/9] CA] [Capts Shift/9].
Name
Defaurt
Lata
Pu
Ripple
Lines
ia
to
400-120
130
140-160
4000-1010
2000-2100
2200-2240
2300-2320
2400-2430
2999
3000-3050
3100-3170
3200-3280
3300-3390
4000-4200
9998-9999
The author will provide a copy of this
on tape for $4.00 (includes shipping). Please
send a check or money order to: Michael £.
Carver, 1016 NE Tillamook, Portland, OR 97212.
Please specify “Light Show 2000".
a
SAMPLE SET-UPS
mode Tone Limit Timing Course/Fine
wo mL wz ws, Tempo Pulse
1 240 208 192 160 10/256 in
1 245 208 192 160 tors 12/256
° 213 208 192 160 2/150 in
° 213 208 192 170 in 10/176
1 | 213 208 192 170 3/100 10/176
BASIC LISTINo
nots
= up the acres
Ls 2000. NOT!
blank, the compi:
as INK hae be
‘The machine
Proper INK color. Check th
INK color in Line 1 to *7",
direct command <Go TO 1>
by chant
Line 9 sr
The POKE @ only. This te the USR call
for the l@ portion of Ls 2000,
Contains data for Iine/column placement of Ls 2000
graphics.
ables ¢or LS 2000 Bast
for Default "Set-Up*
System Set-Up Menu
Compiies current paramete
defined Set-Up
Parameters into
(See Line 2999)
Machine Code as current
Dimplays parameters for a compiled Set-Up
ntains addr of Machine
eters for current Set-Up
Code which nord
Option 2 -- Set Mode
Option 3 ==
¢ Colors
Option 4
Tone Cantrot
Option 5 ~~ Pulse Controt
Control. NOTE: This subroutine 4
Options. Control of option t=
Al IF 5 THEN Pulse Contro!
& option 6
Save/Load Option. Also allows for
SAVE and LOAD without By
ROM Error Report.
verification of
aking the program with =
Subroutine to akan keyboard for input
Routine to POKE Machine Code into menory
Routines to SAVE and LOAD LS 2000
program
LIGHT SHOW
1 BRIGHT 0: BORDER 0: RE
STORE PAPER O: INK 0: CLS: L
ET x=2
2 FOR a=1 To 69: READ y
205 THEN LET xexei NEXT @
3 PRINT AT x,y!"A*: NEXT &
10 POKE 23658,0: RANDOMIZE USR
45056: INK 9: GO TO 1000
100 DATA 15,255, 12, 18,255, 15,25
5,10, 13,17, 20,255, 15, 255,8, 12,1
4,16, 18,22, 255, 10, 15,20, 255,12,
14, 16,18
4110 DATA 255,7,
124,23
420 DATA 255, 12,14, 16, 18,235, 10
+15, 20, 255, 8, 12, 14, 16, 18,22, 255
+15, 255, 10, 13, 17,20, 255, 15, 255,
12,18, 255,15
130 DATA 0,BIN 1000010,BIN 1111
00,BIN 11000,BIN 11000,BIN 1111
©0,BIN 1000010,0
140 RESTORE 150: DIN (5,14
OR a=i TO 14: READ bi LET wit,
deb: NEXT af DIM s8(5,31): LET
(2) = "DEFAULT SETTING.
weeett LET ai
IFy
o11y 13, 15,17, 19
F
FOR a=2 TO
Si LET ee(avede: NEXT «
150 DATA 1,0,240,208, 192, 160,,
345,25 10,0, 1,1
160 LET current=
DIM cs<3)
1000 PAPER 1: BORDER 1: CLS: PR
INT AT 0,8) INVERSE 15 "LIGHT SH
OW MENU*SAT 4,0) INVERSE 0; “ENT
ER LIGHT SHOU... +208"
SYSTEM SET-UP.
A****SET MODE... 2.
se2s2****SET COLORS...
vees3****TONE CONTROL.
se:4*°"*SET PULSE
25°07 *SET
2 DIM becs2):
TEMPO...
“SAVE/LOAD SET-UPS.
78
41005 PRINT wos" Returns ¢
rom Light Show": ON ERR RESET
4010 GO SUB 8000: GO TO 1010+«99
© AND k@=*i")-(1009 AND keto")
+1990 AND ke=*2")+(2090 AND kw
3*)+(2190 AND k@="4*)+(2290 A
ND (k@="5* OR k 394(2990 AN
D kee*7")
2000 PAPER 2: BORDER 2: CLS : RE
M mystem set-uptieeeee
2010 INPUT INKEYS: PRINT INVERS
E 1sAT 0,95 "SYSTEM SET-UP*s INV
ERSE Os7**+*
2020 FOR ami TO 5: PRINT (ee(a)
AND @(a,1))4(*SETTING NOT DEFIN
pan AND NOT w(a,1))
fatti NEXT @
2030 PRINT “COMPILE CURRENT SET-
UPS on “VIEW SET-UP,
seeeeeeeee eV"! *RETURN TO
MAIN MENU. - me
2040 IF current THEN PRINT BRI
GHT 11 OVER 1;AT current#z+3,03
be
2100 GO SUB 6000: GO TO 2100+110
© AND (k#="5* OR k@=*S"))+(200
AND (k@>=*L* AND kw@Cm*5*)) 4300
AND (k@=*v" OR k#=*V"))~ (1100
AND (k@=*m* OR ke=*M*))
2200 REM compile set-up
2210 PRINT AT 15,03 OVER 1) PAPE
R SibS: PRINT WO} "Set-Up w (2-5
2": GO SUB G000: IF kec="1" OR
ke>e*6* THEN INPUT INKEYS: BEE
P .35,10: GO To 2010
2220 LET kmVAL k@: PRINT AT ke2t
3,0) OVER 11 FLASH 1;bs: RESTOR
© 2999: LET w(k,i)=1: FOR anz T
© 14: READ bi LET #(k,a)=PEEK b
NEXT a
alia
2230 INPUT “Set-Up Name? “} LINE
ke: LET ms(kiede: LET aeik, TO
(LEN k® AND LEN k@<30)+(30 AND
LEN k#>=30) ke
2240 LET current=k: GO To 2010
2300 REM make set-up current
2310 LET keVAL INKEY#: IF s(k,1)
=O THEN PRINT AT k#2+3,01 OVER
1s FLASH 1sbs: BEEP .35,10: FO
1_TO 50: NEXT az INPUT INKE
Ys: G0 To 2010
2320 RESTORE 2999: LET current=k
READ b: POKE
G0 To 2010
2400 REM View Set-up
2410 ON ERR GO TO 1000: PRINT
PAPER 31 OVER 11AT 17,0sb@iMis*
View Set-Up # (1-5)
IF k@c=*0* OR ka>=
INPUT INKEY@: BEEP
To 2010
2420 LET KmVAL INKEY@: IF s(k,1)
=O THEN PRINT AT k#2#3,01 OVER
41 FLASH isbe: FOR a@i TO 100:
NEXT a: BEEP .35,10: INPUT INK
Eve: PRINT AT k#2¢3,01 OVER 15
Go To 2010
PRINT INVERSE 1) mek
Dik) INVERSE O°'*MODE “hm(k,2)°
**Tone Color and Limit": PRINT
PAPER O} INK @(k,7)}AT 6,31 °TO
NEO *SCHRS 1445" *s0(k,3), INK
(k,8)4" TONE 1 *ICHRS 144;* =
$e (k, 4) FAT 7,34 INK w(K, 991" TON
E 2 “iCHRS 1445 *s0(k,5), INK
=(k,1004* TONE 3 *ICHR® 1445" *
16k, 6)2 PAPER 2
2440 PRINT ***Timing"*'TAB 45*co
+s" Fine****Tempo "ye(k, it
)4(296 AND wk, 11)=256)5TAB 18s
8 (k,12)4(256 AND #(k,12)"0)* =P
Awe “suk, 13)+(256 AND w(k, 13)
MODNTAB 18}m(k,14)+(256 AND w(k
114) "0)
2450 PRINT WOS"Prese any key to
return to Menu*: 60 SUB G000: @
0702000 |
2999 DATA 45351, 45076, 45080, 4508
4,45088, 45129, 45117, 45105, 45093.
145213, 45216, 45196, 45199
3000 REM wet mode
3005 ON ERR GO TO 1000: PAPER 3
BORDER 3: CLS : PRINT TAB 115
INVERSE 11 *SET MODE*
3OL0 PRINT *'"**Mode 0 -- Tone P
attern will staylit only during
ON Period.**"*Mode 1 -- Tone P
attern will staylit until next
Tone Pulse.*'**Currently set at
") INVERSE 1s"MODE *}PEEK 4535
1
3020 PRINT WO} BRIGHT 1s*Enter D
@sired Mode (0 or 1) ria
for Menu*sbe(i3 To )
3030 GO SUB 6000: IF Ks<>*O* AND
K@C>*L* AND k@C>*M* AND k@C>*m
* THEN G0 To 3030
3040 IF ke="1" OR k@="O" THEN P
OKE 45351, VAL k@: LET current=0
2 INPUT INKEY@: PRINT AT 0,0: @
© To 3010
3050 Go To 1000
3100 REM set colors
3110 ON ERR GO TO 1000: PAPER 4
3 BORDER 4: CLS : PRINT INVERS
& 1sAT 0, 105*SET CoLoRs**
3120 PRINT BRIGHT 1) INK PEEK 4
5129) PAPER (4 AND PEEK 45129=0
DEAT 6,31" TONE O *SCHRS 144)" =
+ INK PEEK 45117) PAPER (4 AND
PEEK 45117=0))* TONE 1 "ICHR® 1
445" "SAT 7,35 INK PEEK 451055
PAPER (4 AND PEEK 45105=0)1*TON
© 2 “ECHRS 144s" *, INK PEEK 45
093) PAPER (4 AND PEEK 45093=0)
J" TONE 3 "SCHR 144y" ©
S430 INPUT INKEYS: PRINT OI" To
ne # (O-3: Me" for Menus
3440 GO SUB B000: IF KS<"O" OR k
S53" AND (kC>*M* AND KeC>*m™?
THEN G0 TO 3140
3130 IF ke='m* OR K@="h* THEN 6
© To 1000
3160 LET a=VAL k#: INPUT INKEYS:
PRINT WO}"New color for TONE *
skes* (0-7)
3170 @0 SUB 8000: IF Ke<"O" OR k
$>°7" THEN GO To 3170
3180 POKE 45000+(129 AND a=0)+¢4
47 AND a1) +(105 AND a=2)4(93 4
ND am3),VAL k@: LET currents:
G0 To 3120
3200 REM tone control
3210 ON ERR GO TG 1000: PAPER 5
BORDER Si CLS: PRINT INVERS
E 11AT 0,95 *TONE CONTROL****
3220 BRIGHT 1: PAPER O: PRINT I
NK PEEK 45129)AT 6,31°TONE 0“)
CHR® 144)" "5: LET ce=sTRe PEEK
43076: PRINT c®}, INK PEEK 451
471" TONE 1 "ECHR® 1445" "4: LE
T cB=STRS PEEK 450G0: PRINT cei
AT 7,35 INK PEEK 45105; "TONE 2
CHRS 1445" "5: LET cemsTRe PE
Ek 45004: PRINT c®, INK PEEK 45
O31" TONE 3 "ICHRS 144s" "yh: L
ET c®=STRs PEEK 45068: PRINT ce
3225 PAPER 5: BRIGHT 0
3230 INPUT INKEYS: PRINT #Os* To
ne W (0-3) == "8M" for Henut
3240 G0 SUB 8000: IF Ke<"O* OR k
S>*3" AND (k@C>*M* AND k@C>*m™)
THEN GO To 3240
3250 IF kee"m* OR ke="M* THEN 6
© TO 1000
3260 LET amVAL ke: LET 1imitias-
a: LET limitz=(254 AND a=0)+ (PE.
EK 45076-1 AND a=i)+(PEEK 45080
1 AND a™2)+(PEEK 45084-1 AND a
=3)
3263 INPUT B*New 1imit ¢or TONE
T+STRE ast (*4STRE Limitise-"45,
TR Limit2e")? "ys LINE Ke
3270 LET keVAL kW: IF k¢limiti 0
R 1imit2 THEN Go To 3265
3280 POKE 45000+(76 AND a=0)+(80
AND a=1)+(@4 AND a=2)+(@8 AND
a=3),VAL k@: LET current=o: Go
To 3220
3300 REM pul
and tempo control
3310 ON ERR GO TO 1000: LET a=V
AL k#: PAPER 6+(a=6é): BORDER 6+
fame): CLS
3320 PRINT INVERSE 14AT 0,95 ¢°P
ULSE* AND a=5)+(*TEMPO" AND ané
)¢* CONTROL*
3330 LET course=PEEk (45196+(17
AND a=6)): LET fine=PEEK (45199
#017 AND amd): PRINT ***Curren
t *+(*Pulse* AND a=S)+(*Tempo*
AND 'a=6)'"TAB 45 "Course", "Fine:
‘TAB 6}course+(256 AND course=0
DE" "NTAB 1756¢ines(256 AND #1
pesos =
3340 PRINT ***Courss
Number o
"*Fine**period is repea
Fine ~~ Sets timing via
jecond:
3380 PRINT AT 11
ngth of time ne
one pattern on acres
O1(*Pulme -- Le
to place T
ne" AND a=
d¢(*Tempo -- Length of pause be
tweenreading Tor AND ana)
3360 PRINT WOs"Set Course or Fin
eC or FI? =" for Menus
3370 GO SUB 6000: IF KE<>*C* AND
K@Q>"E* AND kS<>*F* AND kec>"#
"AND kec>*m* AND KMC>"M* THEN
80 To 3370
3390 LET teske: IF 4
“M* THEN 60 TO 1000
3390 PRINT OVER 14 FLASH 1;AT 5
14¢(12 AND imme¢* OR femrFe) 5
* OR i=
"¢(* = AND (igetc* OR ie=rc
"))1 INPUT "Enter @ (1-256) "5
LINE ke: LET keVAL ke: IF K¢1 oO
R k>256 THEN GO To 3390
3400 POKE 45196+(3 AND (ie="4* 0
R d@e"F4))4(17 AND ans) ,k- (256
AND k=256): LET current=o: GO T
0 3320
4000 REM save/load set-ups
4010 ON ERR GO TO 1000: CLs : P
RINT TAB 75 INVERSE 15*SAVE/LOA
D SET-UPS"5WO} BRIGHT 11°S = SA
VEL = LoaD oN = MENUS
4020 60 SUB 8000: IF Ke<>"S* AND
ke@cotm* AND K@C>*L* AND keC>*1
"AND kac>"M* AND kw<>*m* THEN
60 To 4020
4030 IF Ke=e"S* OR ke="=* THEN G
© To 4100
4035 IF ke=*M* OR Ks THEN
© TO 1000
4040 PRINT *'*Ready to LOAD Set-
Ups": INPUT ‘Load title ?
PRINT ***Loading “ine: PRINT WO
s*Start tape, then press any ke
ys"! GO SUB 6000: INPUT INKEY®
4050 IF LEN n®>10 THEN LET ne=n
‘8¢ TO 10)
4060 ON ERR G0 TO 4200:
DATA 580):
© To 1000
4100 PRINT *'*Ready to SAVE Set-
Ups": INPUT "SAVE title ?*5ne:
LET ne=(*Set-Ups" AND ne=*") ene
(TO LEN n®-(LEN ne-10 AND LEN
n>10)): PRINT AT 6,05"Saving *
tines
4110 SAVE n® DATA S80): SAVE ne
DATA @()t PRINT WOS "Verity (Y 0
r NY?*: 0 SUB 6000
4120 IF k@=e*N* OR ke="n* THEN @
© To 1000
4130 INPUT INKEYS: PRINT AT 6,01
verifying SET? sRewin
@ tape"sMos*Start tape and pres
© any key.": GO SUB 8000
4140 ON ERR GO TO 4200: VERIFY
n® DATA £80): VERIFY n® DATA 8(
2% @0 TO 1000
4200 CLS : PRINT FLASH 1sAT 5,
J*Tape Loading Error: PRINT
"TAB 6) INVERSE 1}*Please atten
pt Again") INVERSE 0140s "Prees
any key for Menu": 60 SUB 800%
80 TO 1000
8000 REM keyboard scan
Loa ns
LOAD ne DATA 80: @
@010 IF INKEYS<>** THEN @0 To @
010
8020 IF INKEY@=** THEN G0 To 80
20
8030 LET k@sINKEYS: RETURN
9000 CLEAR 45055: LET
TORE 9100: FOR i= To 3:
NEXT 4
9010 IF LEN a€<>592 THEN PRINT
FLASH 11*Error in Machine Code
DATA Lines 9100 - 9136"
FLASH O}*There are too "+(*tew
= AND LEN a@<592)4(*many *
AND LEN a8>592)+"Data items! *
"PLEASE CORRECT BEFORE CONTINUI
No*
9020 LET address=45056:
TO LEN as-1 STEP 2
9OS0 POKE addream + INT (¢1-19/2
), (CODE as(1)-(aB AND CODE amici
)<58)=(35 AND CODE a@ii)>64)) #1
6+CODE as(i+i)-(48 AND CODE as¢
141)¢5@)~(55 AND CODE as(i+i1>6
a
9040
9100
FOR t=1
NExT 4
DATA *3AOSSCFE712001C9*
9101 DATA *16FFiSAFDBFECE77~
9102 DATA *20F87AFEFOSOE9FE*
9103 DATA *CB302CFEAOSOICFE*
9104 DATA *78300c110002EDs3* 9230 RESTORE 9300: LET address=4
9105 DATA *Bosc21a7B0102211* S056: FOR t=0 TO 36: LET check=
PINEIDATA. sC0OsmmesBOSCaIG?® Of FOR jmi TO 8: LET check=chec
9107 DATA “Bo1si611000sED5s" K+PEEK address: LET addrese=add
9108 DATA *BOSC21E7BO1@0A11" reusts
9109 DATA "ooosEDSsposcz107" 9240 NEXT §: READ tally: IF chee
9110 DATA *Bi3A27B1FE01 2205" ke>tally THEN PRINT FLASH 1)"
9414 DATA "ESCD7FBOEICD7FRO* ERROR"! FLASH OF" =~ in DATA*'®
9112 DATA "1996 7EE638577EE6" Check for an Error in Line “391
9413 DATA *07070707BAzZ006ED" O0+i"*And then procede by <RUN
9414 DATA *SBBOSC1@0SsASDSC* 9000)": sToP
9115 DATA *77C9E6Fe8277C906" 9250 NEXT {
9116 DATA *103E235623E52100" 9300 DATA 759, 1268, 1431, 1036, 519
9117 DATA *Sei9csosoicsoso1* 719,825
9118 DATA *1OFECI10F@CicD62" 9310 DATA 562,759, 634,751, 1470, 1
9119 DATA "BOE 10ES060cCs06" 037,
9120 DATA *OO10FEC110F@C90F* 9320 DATA 679, 1254,528,521, 1223,
9121 DATA *0151018FO14D01CF* 867,943
9122 DATA *oos30icFo14no1er* 9330 DATA 512,511,256, 289,514, 76
9425 DATA "0035010F0249014F* 8,779
9124 DATA *0037014F02470130" 9340 DATA 453,290,546, 713, 482,83
9125 DATA *0170016€012E01F2" 1,830
9126 DATA *00BZ01ACOLECOOBa* 9350 DATA 320,399
9127 DATA “OOFa01EA01AAooR1* + 9400 CLS : PRINT “Machine Code h
9128 DATA "O4sioasiogsi043z" been Loaded into memory. *
9429 DATA *0172016C012C0114" ‘**Prems any key to SAVE & VERT
9130 DATA *O19401sA01oAOIFé* FY Light Show 2000!*: Pause 0
9131 DATA *0oRs01As01E@0081* 9410 INK 9: RESTORE 130: FOR asU
9132 DATA *oasioasioasioaar+ SR TO USR *a*+7: READ y: PO
9133 DATA *o1FocoPOO1AKOLEE* KE ayy: NEXT a
9134 DATA *OOB100F 101EDO1AD* 9420 CLEAR : DELETE 9000, 9500
9135 DATA *00720032022c026C" 9998 SAVE "1s 2000" LINE 9999: S
9136 DATA *0081048104810400" AVE "1m 2000*CODE 45056, 296: CL
9200 RESTORE 9300: LET tally=o: S i PRINT "Rewind Tape and Play
FOR {=o TO 36: READ d: LET tall to Verity*: VERIFY VERIFY
yetally¢d! NEXT 1: IF tally<o26 “*CODE : G0 TO 140
767 THEN PRINT FLASH 0} “ERROR 9999 CLEAR 45055: LOAD *1= 2000"
"1 FLASH OF* in DATA Lines 9300 CODE 45056,296: INK 9: RESTORE
= 9350"*"*P1, correct and < 43 TO USR “a*+7
RUN 9200>": STOP 2 READ yi POKE ayy: NEXT a: GO
To 140
Machine Code Listing
ORIGIN BOCOh (as0S8a)
ADDRESS OP CODE LABEL MNEMONIC
B000 3acesC = START LD A, (ScoBh)
Boos FE7i cr 7in
BOOS: 2001 JR _NZ,LISTEN $1 not continue
B007 ce RET Hreturn to BASIC
BOOB. A6FF LISTEN LD D,FFh iset pulse counter
BOOA 15 COUNT Dec D feount down
BOOB ar XOR A fclear A & flags
Booc DBFE IN A,(FER) fread ear port
BOOE B77 BIT 6,0 Ipulse detected?
BOLO 20F8 JRNZ,COUNT 414 so keep counting
Boiz 7a READ LD A,D JA = pulme length
BOS FEFO cP FOh supper limit Tone o
BOs SOE JR NC,START 1 too high start over
BO? FeDo cP Doh Supper limit Tone 1
Bos 3o2c JR NC, TONEO
BOLB FECO cP con supper Limit Tone 2
Bo1D 3oic JR NC, TONEL
BOIF FEAO cP Ah supper limit Tone 3
Bozi 3o0c JR NC, TONEZ
Boz3 110002 TONES LD DE,0Z00h fink colar for Tone 3
Boze EDS3BOSC LD (SCBOM),DE bepare byte = ink
BOZA 21a780 LD HL, TABLES.
Bo2D ie22 JR ROUTE
BozF 410003 TONE2 LD DE,0500h__ sink color for Tone 2
BOs2 EDS3BOSC LD ¢ScBOn) DE
Bose 210780 LD HL, TABLE2
3039 ieie 3R ROUTE
BOSE 410003 TONEL = LD DE,0300h_— fink color for Tone 1
BOSE EDS3B0sC LD ¢scBon) DE
Boaz 21E7B0 LD HL, TABLE:
Boas 1808 JR ROUTE
3047 110006 = TONEO LD DE,0400h__ sink color far Tone 0
Boa EDS3BOSC LD (SCBOn) , DE
BOSE 210731 LD HL, TABLEO
Bost 3A27B1 «ROUTE «LD A, (MODE) froute depends on mode
3034 FeoL cP Oih
BOSS 2805 IR Z, SKIP $1 mode 1 90 to skip
Bose es PUSH HL Ssave table addre
BOS? cD7FBO CALL PULSE —Jdimplay pattern
program continued on page 11...
BANK SWITCHING I5 HERE!
BE READY FOR IT.
C is Atotty an extended
mbler and SPY program resids
Machine code located above YUP”
hine stack. Printing to the 2048 is not
desirable, 0 a terface is
When used, te kernel is
rinter buf
er. Because this LH
it GOES not iatertenk with any
DIP Ca. WiLL
Usage by other banns oF peripherals.
To help convince you of the oreat features oF
1his Program, Send us no more. thal
Be
60 bytes oF
any code you Like and SASE.
mb
about Tauarey ce
ty of that code and more info
Hew’s that for bart?
Try it.
Tht WSDIUP Ca.
f| 1128 Merrifield Se,
Grand Rapids, HI 49587
TOURIST C
Order w: TSESPYEsS
Price:§32,58 inc P&H
WINKJET 1 lets you use @ll the Features
your OLIVETTI PR23GG ink jet printer,
PICHS 45 9 MENU buile universal interface,
Use your TASMAN, SERCO, or home brew parallel
Physical interface,
LFRINT Speaks fluent 2
adepe at the ese Baar
WOOPY dus e
normal size or ZOOM,
high resolution srap
printer in
eupported in
Ss using WC:
WHAT YOU SEE IS WHAT YOU GET!
WINDOW dumps Part of the scresn in variable
length lines up to 119 characters per line,
Its default configuration prints the lowar
fuc screen lines as 44 wide,
The WIDJUP Co, word processer/data base
program TYPGLOt uss § Soild to prepare ads
like this and the
68 W/OLIVETTI FROZO9 printer
anres B sa
914,95 Plus $1, aH
OFFICIAL 2068 TECHNICAL MANUAL...
CONTROL THINGS with your
Timex/Sinclair by R.L. Swarts..
ZX81: Programming for Real Applications
Robot by B.C. Taylor...
The Best of TIME DESIGNS Volume 1.
90-00
by Randle Hurley. .§6.00
WE PAY THE POSTAGE
Both “CONTROL THINGS” and “ZX81”..,....510.0O ON ALL ORDERS!
PAYMENT: Check, Money Order
Build a Microcomputer - Controlled NEW! WE NOW ACCPET VISA
TIME DESIGNS MAGAZINE COMPANY
29722 Hult Rd., Colton, OR 97017 (503) 824-2658
TIME DESIGNS MAGAZINE
BACK ISSUES
$3.00 EACH
All Volume Two Issues aval lable:
Nov/Dec 85 thru Sept/Oct 86
Sorry, Volume One issues are
longer available
no
individually.
and MASTERCARD.
s emnet 4%
Credit Cord Orders
10
LIGHT SHOW 2000
Program continued from page 9
PoP HL Srestore table address
SKIP CALL PULSE —fremove pattern
JR START Sread next tone
SCREEN LD A, (HL) JA = temp. attribute
AND 3am 1A = paper only
Lp Da De
LD Ay oH) iam
AND 07m 5A = ink only
RLCA Fmove ink attribute
RECA 4} to paper position
RLCA + ina
cr oD fink =
JR NZ,MSAME S44 not make inke=p.
LD DE, (ScBOn) 1DE = ink for tone ®
sae perm. attribute
‘ttribute ile
RET done
LATTR AND Fen A= all but ink
ADD A,D SA + D Cink) =
LD (HL),A fet attribute File
Ret Hdone
PULSE LD B10 14 of graphics to pulse
PULSEA LD E, (HL) Sload DE with the off-
TNC HL ‘ t of location in
Lp py (Hy J attribute #11e.
Ine He
PUSH HL je next table entry
LD ML,5¢00n putart of attr. tile.
ADD WL,DE = FHL = Location
BLOOP
Lp B,oin
10rE Loop D3nz'LLooP.
cn Por pc
tors DINZ BLOOP
1 Por ac Iretreive count.
cpe280 CALL SCREEN
et POP HL Iretreive table entry
toes DINZ PULSEA
0608 LD B,oan
cs BLOoP2
‘0400
10FE LLoor2 psnz'LLooP2
cL Por ac
tore DINZ BLOOP2
ce RET
Boce Tames
Boc7 - Bors TABLEZ above but for
2
BOE? ~ Bios TaBLes above but for
+
Bio? = Bi26 TABLES above but for
+ tone 0
B27 on MODE = -DEFB oth Ivariable for mode
Pattern for Tone 3 has 16 graphic locations,
been provided in the other tables ta, Bring
This offset + start of attribute file
points to the Printer Butt The reason for maintaining «
fount of 16 for all Tones was to produce @ simpler code and to
Provide = similar timing for displaying all tons
TIME DESIGNS MAGAZINE
Subscribe Today!
‘ONLY
$15 yoar
SIX ISSUES
{check one)
© NEW SUBSCRIBER
a RENEWAL
Your expiration date can be found on the shipping label.
EXAMPLE: Sep/86 = September/October 1986--your last
issue. We also send one renewal notice just in case you
forget to do so. Keep TOM coming to your door!
A A ae a a EO 11
@ Resdiurion
Graphics
Scrotting
‘Wanner
Program
Colossus
wetcome
fHome
BA nde
ean
COLOSSUS is a graphics-banner program, Now you can mix
banner-size TEXT with banner-size graphic PICTURES,
Route your graphic banner to the 2040 thermal printer of a
full size printer (you must supply your own customized
Zprint-80 printer driver code.)
‘Specifications:
Banner size: 24 rows x 1024 continuous columns
(@2 sereens long!)
36
Them
Font Types: Standard Modem, Italics, Bold,
Lond Font (Chancery included)
Font Size:
x, 16 x, and 24 x normal
Functions: Scroll Forward / Backward
Insert/Delete Columns
Insert/Delete Rows
Copy/Erase Segment
Load/Save Banner Data
32 Screen, Low Res Animation
‘Output: 2040 Printer
Full Size Printer (Z-Print 80
printer driver required!)
(Print from any column!)
Get your copy of Colossus (only $19.95 ppd!) from:
Lemke Software Development
2144 White Oak
Wichita, KS 67207
DON'T MISS OUR
GIANT ANNIVERSARY ISSUE
NOV/DEC 86
Send Check or M/O To:
TIME DESIGNS MAGAZINE CO.
29722 Hult Rd __ Colton, OR 97017
Name lease print
Address
en oe sou?
ot
proP
What if Michelangelo and Leonardo da Vinci had
owned some good graphics software? Would they have
utilized a computer for their creative efforts? Would
the Sistine Chapel be covered with fanfold paper? Would
‘the Mona Lisa be stored as electrons on a disk instead
of pigment on a canvas?
Those gentlemen were the masters of
Unless you have a comparable skill with
paint brush, maybe you'd better rely on
their media
pallette and
joystick and
keyboard. PIXEL SKETCH And GRAPHICS EDITOR Version 2.0
employs both,
PS/GE lets you create, edit, and label original
graphics and modify, merge, and analyze existing screens
with electronic tools. Some of the editing functions on
PS/GE are found in Apple graphics software like Mouse
Paint and Dazzle Draw. PS/GE even provides some func-
tions the 128K Dazzle Draw doesn't include.
PS/GE operates in three somewhat compatible mode:
standard color, extended color, and high resolution.
Mode can be selected once the program has loaded. The
standard color and extended color modes can be elec-
tronically switched at will while you're working with
PS/GE. The high resolution mode must be maintained once
it is selected.
In the standard color mode, one ink color and one
paper color are allowed in each 8 pixel by 8 pixel
character position. The brightness and flashing attri-
butes may be on or off.
In the extended color mode, PS/GE creates eight
“elements” within each character position. Each element
is 1 pixel high by 8 pixels wide. One ink and one paper
color and one bright and one flash attribute are per-
mitted in each of these elements.
‘One screen character could thus be printed with 8
ink and 8 paper colors with alternating bright and/or
flashing horizontal elements. In this mode it's possible
to create new colors on the screen by juxtaposing the
appropriate ink and paper colors. The manual suggests
using red ink on green paper to make brown.
The high resolution mode amazes me. Although the
hardware limits you to one ink and one paper color on
the screen at any time, the software extracts the finest
detail possible from the T/S 2068: 512 pixel horizontal
resolution. All three modes offer the standard 176 pixel
vertical resolution
The incompatibility between modes is seen in the
input and output routines. A standard mode picture is
saved or laoaded as a standard SCREENS: 6912 bytes at
address 16384. An extended color graphic is saved or
loaded as two files, each having 6912 bytes. One file
at 16384 holds ink (pixel) and paper (no pixel) data. A
second file at 24576 stores extended color and attribute
data.
A high resolution display also saves or loads as
two files. They extend the identical length and reside
at the same starting addresses as an extended color
screen. The first records the odd number column data;
the second, the even number column data. The program
tape includes a utility, PS/GE-32/64, which will convert
one or two standard mode screens into a high resolution
screen, (The listing for this utility appears in the
March/April 86 TDM.)
If you've ever used MacPaint or a MacIntosh or
Mouse Paint on an Apple II, you'll be right at home with
PS/GE. Although the former programs employ a mouse for
input instead of a joystick, they offer nearly the same
drawing, text, and editing functions.
The drawing functions of PS/GE are as follows:
SOFTWARE
PIXEL SKETCH And GRAPHICS EDITOR Version 2.0
Reviewed by Duncan Teague
PS/GE 2.0
employs 2
different
character
fonts:
Standard &
Chancery,
and uses 3
modifiers:
Bold Rosé
Hodern
Mogern
and
Ttats
etR
Mona Lisa courtesy of “Art For All Ages”
Conlon for Games to Learn By. I
Screen, mirror imaged half,
block-erased. Then I
by R.
loaded the
Diock-copied, and
added’ the text balloon.
1, Plot and Erase (free hand sketching and erasing);
2. Draw (disconnected) and Connect (~ed straight lines);
3, Circles; 4, Draw Arcs; 5. Fill/Shade (with textured
paseaensls 6. Paint (with solid colors); 7. Text (1abel-
ing).
The ink and paper color and the flash and bright
attributes can be changed at will. Cursor speed can be
adjusted from moving one pixel at at time to four times
that rate. Cursor speed could be further changed by
altering the program listing.
The plot (sketch) command is controlled by the fire
button on the joystick. The joystick is also used to
select other functions from a menu screen accessed by
pressing the ENTER key. Keyboard commands can also
change the cursor speed and activate the erase function
without having to leave the drawing screen.
Two status lines at the bottom of the screen
vide a constant readout of the cursor's
wether the plot and/or erase functions are in
cursor's coordinates are important to know. Most of
PS/GE's editing functions operate optimally only when
the edges of drawn figures coincide with the normal
character position boundaries. 1'11 explain later.
The text you use to label your creation can be the
ordinary system font, or you may load an additional font
from the program tape. The extra font is called “Chan-
cery". It looks like it flows from a calligrapher's pen.
You can alter either font from the menu. You may choose
bold, modern, and italic versions of either the system
font’ or the Chancery font at any time.
The editing functions of PS/GE are operated
an adjustable, but not elastic, window. PS/GE's window
moves 8 pixels at a time. Window boundaries are always
aligned with the edges of the normal screen character
rows and columns. If a portion of an area to be edited
extends beyond a normal character row or column, the
editing window must be large enough to extend to the
next row or column boundary.
Here is a list of PS/GE's window editing
tions: 1. Block Copy (cut and paste); 2.
pro-
position,
use. The
within
func~
Block Erase;
3. Block Rotate (90 degrees clockwise); 4. Mirror Image
(horizontal only); 5. Inverse (exchange ink/paper);
6. Wide View (shrink); 7. Zoom (enlarge); 8. Digitize
(analyze like a UDG-help create sprites?!);
9. Merge (a portion of one screen with another).
12
Mirror Image Butterfly
i ia
arial
Drawn with PS/CE 2.0
The butterfly is my own drawing using PS/GE. 1
and
text.
Created the left side, filled and painted,
then mirror imaged it. Then I added the
When you select any of these functions from the
menu, a window appears on the drawing screen. The
window's size can be adjusted in one dimension at a time
by using the unshifted arrow keys. The "S" and "L" keys
will make the window smaller or larger by changing its
height and width simultaneously, The joystick places the
window in the appropriate position.
After using any of the editing functions, you'll
have a chance to reconsider. A "SAVE?" prompt will
appear, and you may “undo” the last procedure by re-
sponding with any key except "Y". The drawing functions,
except Plot, Erase, and Text, can also be undone.
Hard copy can be obtained of any screen in any
mode. Only the ink/paper pattern is reproduced. Colors
are not represented by different dot patterns as in
Tascopy or Z-Print 80. The screen can be printed on the
2040 printer or in small and large sizes on 80-column
printers,
Tf you want to use an 80 column printer, you'll be-
come more familiar with your printer's manual than you
used to be. You'll need to know how to adjust the Tine
feed pitch and how to send the appropriate commands for
bit graphics.
My printer has to know how may bytes will
the bit graphic command. The correct number for my
C. Itoh 8510 is 256 in the standard color mode, and 512
‘in the high resolution mode. Those numbers had to be
doubled for the large printout.
To make the large printout of a high resolution
mode screen (1024 bytes per line), fit on my printer
paper, I had to set the printer's DIP switches for pro-
follow
portional characters. This gives a print density of 1280
dots per 8-inch line, slightly more than required for
this mode,
If your bit graphics mode prints each line upside
down, as mine did, there's a simple solution. Alter the
Programs's machine code with the following POKE's, which
are courtesy of program developer Stan Lemke:
ore
Memory New
Address Value Value
avis 2498
4292328
a2von 2a
a2yes 148
42966
AERCO FD-68 owners will easily be able to convert
PS/GE to disk. The utility for converting standard
screens into high resolution screens is another matter.
PS/GE-32/64 uses OUT 255,0 and OUT 255,54 to alternate
between 32 and 64 column modes. The FD-68's OUT 244,1
command interferes. Disk access must be switched off
with OUT 244,0 before performing the conversion pro-
cess. Loading two screens is much more difficult. I used
short machine code routines to store one at 40000 and
then recall it for conversion.
I really enjoyed using PS/GE. Cursor movement is
slow, especially across the 512 pixel-wide high res
screen, but the sophisticated editing functions surpass
those of any other T/S 2068 graphics program I own, The
functions for creating and editing screen segments,
merging one screen with another, converting standard
mode screens to high resolution screen, and printing out
with excellent dot density exceed my present ability to
exploit them. But I'm learning. My joystick finally has
something to do besides play games.
PIXEL SKETCH And GRAPHICS EDITOR Version 2.0 is
available from Lemke Software Development, 2144 White
Oak, Wichita, KS 67207. The T/S 2068 program comes on
a cassette with users manual for $19.95 ppd. A joystick
is required.
148
TIMACHINE — A BASIC Compiler
Reviewed by Mi
Deja vu! That was my first thought upon opening the
large envelope from editor Tim Woods. Let's take a trip
via H.G. Well's time machine by setting the controls to
travel back in time one year. Exactly one year ago,
was asked to review a BASIC compiler for the T/S 2068
called ZIP (Sept/Oct '85 issue of TOM). Back to the
Present! I now have the task of reviewing a new BASIC
compiler for both the 2068 and Spectrum (two different
versions on the same tape). It's called TIMACHINE.
First, a short review. BASIC is the resident ROM
Janguage in the Sinclair machines. BASIC is a language
we humans can easily use to make the computer and its
Processor perform a desired task, and is a fairly
effortless language to learn and use. It is also a
fairly forgiving language, especially with the help of
Sinclair syntax and error checking. The trade-off for
this simplicity is a lack of speed and flexibility. The
actual resident language of the Z80A CPU (the main brain
of the Sinclair machines) is machine code, also known as
assembly language. This "language" is composed of about
50 different instructions, though most have many vari-
13
chael E. Carver
ations, The advantages of machine code include fast
execution, efficient use of memory, and freedom from the
dictates of the Operating System. The other side of this
coin are the following disadvantages: programs are hard
to understand and follow, a simple manipulation of data
may involve many complicated steps, real-number calcu-
lations can be difficult and it can be very unforgiving.
Programming in machine code can involve extensive study
of the machine, books and tables, developing tools
(assemblers and monitors), and, of course, patience.
Enter the BASIC compiler, which attempts to marry
the advantages of both BASIC ‘and machine code, while
trying to avoid their drawbacks. TIMACHINE is the best
compiler I have seen to date for the Sinclair 280
machines. Timachine will compile virtually all of the
Sinclair BASIC commands into a much speedier program
This compiler is quite different from others I have seen
in both speed and versatility. Where many compilers only
allow the use of integers (whole numbers from -32768 to
32767 or 0 to 65535), Timachine will allow the use of
real numbers (decimals and numbers far larger or smaller
Now at last.
The FootePrint Printer Interface
The FootePrint Printer Interface was originally described in the January-March 1985 issues of SUM Magazine.
Now improved and professionally built, it is available direct from the designer! FootePrint plugs into the
cartridge slot of the TS-2068 and works with both Tasman (B and C) and Aerco print driver software. Just
load the software and print, No POKES required, No modifications.
© for Centronics parallel printers © plugs into cartridge dock—door completely
© works in both 2068 and Spectrum mode closes with cable running back under computer
+ SOMALI EROS ORG teem Caalators © frees up rear edge connector allowing other
peripherals to be used; less chance of a crash
Sn SO EU NO * print driver software for LPRINT, LLIST, and
* requires no modifications to computer COPY included for 2068 and Spectrum modes
FootePrint Interface w/software & cable .. $459 postpaid
FootePrint with OS-64 option included . $65° postpaid
Bare board & instructions only ... $15° postpaid
Cable only for use with bare board $15° postpaid
All prices are pre-paid and include shipping charges. Florida residents must add 5% state sales tax.
FOOTE <, SOFTWARE
P. O. Box 14655 — Gainesville, FL 32604
904/462-1086 (6 pm - 9 pm EDT)
EEEEEEELCEEEEEEEEEEEEEEEEEEEEECECEEEEE EEE EEE EEE EE EEEEEEEEL EEC EE ELE CELE EL EEEEEL
vce, DUAGEON OF YMiR wee
A MULTI-LEVEL HAZE ADVENTURE GAHE by Fred Nachbaur (C1996
FOR THE TIMEX TS1500
FINALLY! A FULL-FEATURE, HIGH RESOLUTION DUNGEON GAME FOR THE TS1500!
This 24K game, written entirely in machine-code, is the most spectacular program
ever written for the TS1508. Nine le 16 types of monsters, 14 objects, six
spells. Easy to play, difficult to ma Includes FAST-SAVE with auto-boot to
save in-progress games: time to load entire program reduced to 7@ seconds!
Revolutionary TRUE HI-RES puts your TS15@@ on a par with much larger machines.
Send $24.95 (cheque or MO) to FRED NACHBAUR, C-12 MIN. STN. GROUP BOX, NELSON BC
VIL 5P1 CANADA. Specify version: Vi (TSI5@@ + 8K Hunter NUM or equivalent) or V2
<TS15@@ + 16K RAM pack). V2 requires a minor hardware addition (included).
COMING SOON: V3 for 2X81/TS1888. Inquire. *¥* ALSO AVAILABLE: TS150@ HI*RES
EXTENDED BASIC (416.95)
EEL bab
Oe eb oe
4
Ti cean |g - meat sritt via
1g > Petaare tamer
OL TCHPLE FTE
yo celline the
= Toe eat
est Liat 18 Tae ace
Hite 8 [taps a0 be B [tek 154 Tore [81 [teas
Eee EE EEE EELEEEECEELEEEEECEELCELECELECEEECEEECELEELLELELEECEECEELCELELEELEEEEEEELE
than 16-bit nunbers). There are also floating-point (or real
nunber) compilers available for the Spectrum, but. unlike Ti-
machine, can not compile both integers and real numbers, and run
only 3 to 5 times faster. Timachine allows the user to” specify
which nunbers are to be real or integers, thus greatly speeding
up performance when doing integer mathematics.
Unlike other compilers, Timachine also allows string arrays
and defined functions and 2dimensioned arrays, along with many
other commonly used BASIC commands, Because it allows floating-
Point mathematics, one can also compile trigonometry functions
(TAN, COS, ACS, SIN, ect.). In fact, according to the manual,
Timachine will’ support all but the’ following BASIC commands:
CLEAR, CONTINUE, ERASE, FORMAT, LIST, LLIST, LOAD, MERGE, MOVE,
NEW, RESET, RUN, SAVE, VERIFY, FREE, "ON ERR, and’ VALS.” A few
‘other conmands may have some limitations connected with then,
(e.g.5 RESTORE, GOTO, and GOSUB must be followed with a valid
Vine ruber and not an expression or variable; an array can only
be dimensioned to one set length; a defined string variable may
not be later dimensioned; VAL A$ is not supported.)
Speaking of ‘the manual, I must compliment Novelsoft and
Cameron Hayne (the author of the manual and program) for pro-
viding an extensive and easy-to-follow manual. The manual con-
tains $2 pages of excellent step-by-step tutorials (sample
Programs included on tape), thorough explanations of conmands
and directives (even explaining how to obtain certain Sinclair
Keywords), detailed notes on how the compiled code handles
certain BASIC instructions, clear and helpful hints, definitions
of Error Messages, a list of helpful POKES, a memory map, and a
Vist of the runtine’ routines.
Timachine is loaded into the memory location normally re-
served for BASIC (right after the system variables) with the
normal 2068/Spectrum memory map shifted upwards to allow for
BASIC programs. There is approximately 27k available for a BASIC
Program (30k on the Spectrum). Once loaded into the computer,
Timachine 4s completely transparent. One can LOAD or type in. @
BASIC program and RUN it as if Timachine was not in memory. Ti-
machine is accessed through direct commands prefaced by an
asterisk, "** (e.g.; [*] will compile a BASIC program). In fact,
the only’ time Timachine makes itself apparent (except for less
available memory) is when the trace (an interrupt-driven pro=
gran) $s on. While running a BASIC program, the trace will log
20686 KEYBOARD
OVERLAYS
QUICKEY™
2068
Order Yours
Tooay!
Put commands at your fingertips!
Darth stay uysmudge free plastic stock cut to fit your
eyboar:
Available for: TASWORD/TASPRINT,MSCRIPT, rev, NSCRIPT V. 5.8,
ONNICALC 11, FIGHTER PILOT, KEY IDENTIFIER, and « BLANK overiay to
customize your special software.
Only $6.95 each,including postage & handling.
Send check or Noney Order to:
At-T0 PRopucT IONS
9009 H. Elm Street #2
Phoenix, firizona 85037
and type the program variables every 1/60th of a second (1/S0th
on the Spectrum) and provide a listing of the variables with
their type (i.e.; real, integer or positive integer) and the
length of string variables. This is a very helpful tool. There
is a limit of 255 simple numeric variables, whose name ‘can be
any length and the standard number of string variables.
Directives to the compiler (instructions) are included in
the actual BASIC program in REM statements with an exclamation
point, “!", following the REM (e.g.; 10 REM! OPEN # will start
compiling at this point). Some of these directives are instruc-
tions on where to halt or re-start compiling (allowing access to
BASIC or ones own machine code routines), maximum length
alloted toa string variable, and setting types of numeric
variables (i.e.; real, integer, ect.). One can direct a listing
of the addresses for the runtime routines and the machine code
variables used by the compiled program. Also, a listing of the
execution addresses for individual compiled BASIC lines can be
obtained. Once can specify the address at which the compiled
code will reside, giving flexibility in locating ones own
machine code or BASIC routines.
Learning to use Timachine is simple, but practice and study
is needed if one plans to master its uses. Simple BASIC programs
are easily compiled into fast-running programs. An understanding
of real numbers and integers is needed to obtain maximum and
exact results. When real numbers interact with integers, in-
teresting, but usually unintended, results can occur. While
testing Timachine, I used various BASIC programs I had already
developed and debugged. During the first pass, Timachine checks
the BASIC for any unsupported BASIC commands and provides clear
Error Messages displaying the offending BASIC line, usually with
a flashing "2" cursor marking the part in question. The next
pass is a dry run to fix the amount of memory needed for the
final version and check for destination addresses for GOTO, GO-
SUB, ect. commands. The last pass is the actual creation of the
machine code. The user is provided with information on the
length of the compiled code, amount of memory allocated for
variables, length of the BASIC program, and instructions on how
‘to SAVE, LOAD and run the compiled code. This complete com-
pilation process is quite speedy. Timachine compiled the demo
Program included with the ZIP compiler in 9 seconds compared to
‘the 31 minutes taken by ZIP (see Sept/Oct ‘85 TOM, pp. 18-19). I
was able to compile most of my test programs satisfactorily,
with only minor modifications to the BASIC. However, the one
larger and complicated of the BASIC programs proved to be too
convoluted to simply modify. I did not have time to fully test
this program, but feel it would require a major reworking to
obtain proper results via Timachine. If the program had origi-
nally been written with Timachine in mind, I see no reason it
could not be easily compiled,
‘As the compiled code is in machine code, it can be unfor-
Siving and provide undesired results. In BASIC, "PRINT HS (X)"
will print HS(1) if x=.5, where the compiled version will
attempt to print HS(0). Another problem I encountered dealt with
FOR/NEXT loops. In BASIC, one can leave a FOR/NEXT loop, jump
into the middle of another FOR/NEXT loop using the same variable
and upon execution of NEXT (X), resume operation at the start of
the second loop. However, in machine code the continuation is at
the start of the first loop, There are many runtimes (machine
code routines used by the compiled version to execute selected
operations) which use extensive ROM routines. This allows for
simple conversion and efficient use of memory, but can slow
down performance. When these runtimes are used, the improvement
in speed is slight, (e.g.; CIRCLE, DRAK, COS, ect.). It 1s up to
the user to develop a BASIC program that will utilize a more
efficient compiled version. This will come with practice and ex-
perience, though knowledge of machine code will be helpful. One
can use Timachine as a tutor on how to write their own machine
code utilizing ROM resident routines.
Timachine 4s the most comprehensive, flexible compiler 1
have seen for the Spectrum or TS 2068. It is always a pleasure
to encounter a program of this class, and I must applaud Cameron
Hayne for obtaining so much from our hunble Sinclairs. Depending
on the programming skills of the user, one can compile fast and
efficient machine code programs, though not necessarily using
less memory. It is a program that will allow the novice BASIC
progranmer some degree of success, while allowing the more ex-
perienced programmer greater flexibility. One should not expect
to produce amazingly impossible feats from this product, as
‘these usually come from direct manipulation of the processor via
ones own machine code. One will be able to produce effects that
are avajlable in BASIC, but a speeds that will greatly enhance
then, In last year's review of ZIP, I stated that one should
choose a compiler based on its limitations. Kell, Timachine has
few limitations and 4s a quick and comfortable program to use.
Wil] this be the "last word" in compilers? I don't know. Let's
Set our "time machine” for one year into the future...
TIMACHINE is available for $19.95 + $3.00 S&H (U.S.) from
Novelsoft, 106 Seventh Street, Toronto, Ontario, Canada MBV 384,
416/259-8682,
LARKEN TS1000 Disk Drive Interface
Reviewed by Sean Wenzel
I am sure a1] of you have thought about the speed and re-
Viability that a disk drive can offer, but it just cost too darn
much or the reviews said it wasn't much of a DOS, it was more
like a "semi-dos” (in lower case), and you had to be an elec-
tronics engineer to put the thing together, ect...that {s why
you didn't go ahead and get one.
Well there is no excuse now, because Larry Kenny of Larken
Electronics has come out with a disk drive interface which is
not only inexpensive, but also has a real live D0:
0.K., $0 you order the drive interface...what do you get?
1 ordered’one, and when I found it at my door, I quickly ran
inside and carefully opened the package wrapped in cardboard and
discovered a circuit board about 3x6 inches, a power connector
for the disk drive, a disk, a ribbon cable for connection to the
2x81 and one for the drive, and a manual. I opened up the manual
and found out that I now needed to buy & power supply and a
double sided 18M compatible disk drive. The power supply must
provide § volts and 12 volts each, at a couple of amps. The
drive and power supply are easily obtained at almost any con-
puter store, when I got the drive and power supply, I hooked
‘them up according to the diagrams in the manual and ‘powered up
the computer and watched for smoke...there was none! Then I did
@ RAND USR 14336, then LOOS* appeared on the screen, and I for~
matted a disk by” typing FORMAT, and the drive whirred and
“clunked" and completed the format successfully. I then sat down
and read the manual and found out that LARKEN DGS is extremely
flexible and easily lends itself to modification by the be-
ginner who uses BASIC, through to the advanced machine code
hacker. All of the locations and a brief description of useful
routines in the 2k DOS EPROM are given in the manual. If you
wish to convert an auto-run BASIC program, you can just load it
normally and break into it (or if it is un-breakable, use RAND
USR 837 ~~ auto break on Toad), and where the save line is, just
Put RAND USR 14336 followed by a REM statement containing the
command (e.g.; REM SAVE "NAME.B1"), then GOTO the USR 14336 Tine
and the program will auto-save and run,
You can have up to 52 files per disk and the maximum file
size is 47080 bytes. There are 6 commands available on the 2k
EPROM. LOAD, SAVE, DIRECTORY, FORMAT, EXIT, and DELETE. Other
commands which are actually basic programs, are provided on the
supplied disk. There are things such as a “badblock scanner",
and a 2 drive copy program, for copying drive 1 to drive 2.
The documentation provided is short, sweet, and as complete
as you could want. If you have any problems with anything, you
can call Larry Kenny (Larken Electronics)...he is extremely
friendly, and glad to help.
In my opinion, the LARKEN DISK DRIVE INTERFACE has got to
be the most useful extension that I have made to my 2x81. The
money it cost, is nothing compared to the joy of getting rid of
the frustration of knocking over stacks of tapes on your desk,
or losing that program you just spent the last 3 hours typing in
(and didn't backup, because of the "5 minute save").
The Larken Disk Drive Interface is available from Larken
Electronics, RR#2, Navan, Ontario, Canada K4B 1H9. Phone: 613/
835-2680. Price 15 $99.00 (U.S.). Add $5 for 2-drive version (an
upgrade is available for $10, if you change your mind later).
ZX-CALC + R.F.R.G.
Reviewed by D. Hutchinson
ZK-CALC + R.F.R.G., is a complex and comprehensive spread=
sheet/accounting package. It is in this reviewer's opinion, that
‘the programmer has made an “all-out and honest attempt to” sur-
pass the features and flexiblities of another spreadsheet; YU-
CALC from Timex. Vu-Cale has been around for sometime, and it is
Jacking in a number of spreadsheet functions that the pro-
fessional packages offer. ZX-CALC comes as close as possible to
a professional package.
The R.F.R.G. part is a supplement to ZX-CALC called an
"accounting model" (R.F.R.G. stands for Rodriguez Financial
Report Generator). The author states that it is used primarily
for sole proprietorships who do not have the company's assests
tied up in land. R.F.R.G. sets up several templates and "work-
sheets” for various calculations. I found this section very
useful in analysis of a companies financial picture using in-
formation supplied by financial reporting.
It should be noted up front, to prospective buyers of this
spreadsheet package, that it does soak up memory...a lot of
memory. In fact a 64k Ram Pack is a must. Also, printing is done
on the 2040 printer. Be prepared to have a lot of rolls of the
shiny” stuff around, because if you're going to really get into
this program, your 2040 will be working overtime.
Perhaps the biggest drawback of ZX-CALC, 18 the printing
feature. A spreadsheet consists of several columns and rows
across a page (ZX-CALC has a maximum of 15 colunns across). When
hard-copy 1s done on the 2040, one would have to physically glue
the strips all together to compare the full report. This is an
inconvenience and would never do for professional copy. My
suggestion would be to add the facilities for the use of full-
size printers. The Memotech and Aerco interfaces are the most
popular for the ZX/TS computers, and print drivers for these
would make this already great program, a fantastic one!
16
Z2X-CALC has many sub-menus and features (probably more so
than we have time to describe them all). There is a grid (or
matrix) of 30 rows by 15 columns, with a total of 3360 char-
acters per spreadsheet/file (420 "cells" total). The built in
math functions of the ZX81 are availble to perform the calcu-
lations. Editing and manipulation of the cursor and across the
spreadsheet is very slick.
Z2K-CALC is a very sophisticated spreadsheet, and at the
$16.95 price (plus $3.00 for shipping and handling), it presents
an excellent buy, and perhaps the most flexible spreadsheet I've
seen for the ZX81/TS1000, There is also a version available for
the T/S 2068.
You can get your very own copy from: A.F.R. Software,
1605
Pennsylvania Ave., No.204, Miami Beach, FL 33139.
305/531-6464,
nex =
Sm eee
Cd
F608 om on os on ce es
ee
“More About... The Mystery of the Missing 253”
by Wes Brzozowski
THE GREETINGS
Welcome back to another episode, as we try to unravel a few
More clues about the Extended Bank’ Switching for the Timex
Sinclair 2068. This time, we'll be getting heavily involved in
how the bank switching hardware would have worked, making this
installment the most complicated of the series. But this article
will cover a lot of subjects, and if one item seems hazy, just
skip it and move on to the next. With some rereading, things
WILL get clearer, so don't get discouraged. And don't forget
that the order that's easiest for YOU to learn these things, may
be different from that of others, Keep rereading, and learn in
your own way.
Since this kind of information hasn't been published else-
where, I've had to invent my own notation for a lot of things.
These were covered in Part 1, but if you've missed it, you can
still get the back issue--July/August 1986 for $3.00 ‘from TIME
DESIGNS MAGAZINE.
This paragraph is for those who may have written or called
me with information/advice/questions, If it appears that I'm
ignoring you in this column, I must beg you to remain patient,
Most of this second installment will have been written before
Part 1 has even been put into print (publication delays, you
know). As such, there's a good chance you'll have “missed™ being
mentioned in this installment. But rest assured that I do
appreciate your interest, and WILL get to you in Part 3.
Some of you who've been looking up my page references for
the 1S2068 Technical Manual have probably been a bit befuddled.
If you bought your manual from Timex, everything will be fine.
However, the new version from TOM has the pages re-numbered a
bit, and the page numbers I gave last time won't quite match up.
I wasn't aware of this when I wrote Part 1, and will give the
section nunbers instead, from now on. I hope no one was incon=
venienced by this. In order to accomodate everyone, let's define
yet another notation. From here on, Technical Manual references
will be abbreviated, The expression "TM3.3.2" would then refer
to section 3.3.2 of the TS2068 Technical Manual,
By the way, I do hope no one is grumbling because of the
renumbering trick. In doing this, our good friends at Time
Designs have been able to reduce the total number of pages in
the manual, and so perhaps they can avoid actually losing money
on the venture,
And now, on to the good stuff!
@ (NOT SO) QUICK DESCRIPTION
OF THE RAM RESIDENT CODE
Let's first turn to page 255 of the User's Manual that came
with your TS2068. The memory layout shows two blocks called the
Utility Function Dispatcher, and the Bank Switching Code. They
originally come out of the EXROM, and are copied to RAN during
the computer's power-on initialization. The two memory maps on
page 254 refer to these as “RAM Resident Code", and show that
they may reside in two possible memory locations. To make this
easier, the EXROM contains a routine that can relocate the code
for us. Well, almost. The “relocator" fouls up on a couple of
routines when it moves them to high memory. Ke'll discuss how to
fix these in a future installment. Nevertheless, a short look at
‘them now will make other things easier for us to understand,
The function dispatcher is a prime example of the right pew
in the wrong church. In most computers, CALLing ROM routines
directly through their memory addresses is considered about as
civilized as blowing one's nose on the tablecloth. This is be-
cause later ROM versions may change the locations of the sub-
routines, rendering your programs unworkable. This was precisely
what happened when Sinclair changed the ROM on the early ZX8ls,
(If you remember this, you're a true "old timer".)
The “proper” way to get at ROM routines is to pass up your
CALLs through an “Operating System” that can find the routines,
nto matter what ROM version is in place. This wouldn't give you
access to all of the ROM, however, and so requires an extra
Measure of programming discipline.
Is it worth it? Only when handled properly and consist-
allows
ently. A very similar kind of discipline
many programs
that run on a “plain vanilla” 18M PC to also run on the PC Jr,
and the PC-AT, which are all radically different from one
another, from their disk systems, right down to their ROMs. It
also allows the programs to run on the “PC Clones", that have
VERY different ROMs in them. While this programming discipline
means a bit more work, it has great advantages.
The TS2068 Function Dispatcher is a scaled down attempt to
mimic this portion of an operating system. As mentioned last
time, it's likely that at least someone at Timex hoped to re-
write the ROMS. The Function Dispatcher may have been a way to
insure software compatability. By sending a "function number” to
the dispatcher, the proper routine can be accessed, It also
Contains presently unused abilities to pass and receive data
from the routines it controls. Those future ROMs may well have
tapped this ability. Note that TM3.3.2 contains a reference to
“the original TS2068" (as it describes OUR machines). Follow-on
machines were certainly planned,
But we Timex enthusiasts, ‘ever the unruly lot, totally
ignored the Function Dispatcher, happily CALLing anywhere we
liked. hile the Function Dispatcher might make it easier to
get at the ROM if we were running in one of the (presently non-
existent) expansion banks, it's otherwise fairly useless.
He would only use the Function Dispatcher to protect our
Programs against ROM address changes. But instead, no one uses
it, and no one is protected, Therefore, no one wil] market a ROM
or EPROM with address changes, because precious little software
will run on it. And therefore, we needn't worry about ROM
changes, and can CALL the ROM to our heart's content. It was a
noble thought, Timex, but it was a bit like trying to domesti
cate a mongoose,
The block called the Function Dispatcher also contains sone
Code that allows the maskable interrupt to work properly when
the EXROM is switched in. It will also work with expansion
banks, if they have a copy of the code at X0038 at their own
location 0038. (The initialization code was supposed to copy
this code into RAM expansion banks--unfortunately, it misses a
byte, and anyway errantly tries to copy from the RAM bank to the
EXROM; a truly useless exercise.) The interrupt code makes
Considerable use of the rest of the RAM Resident Code to manage
the necessary bank switching.
Following this, almost as an afterthought, is a copy of the
NMI handler at Home ROM location 0066. This inclusion is some-
what perplexing, as the Home ROM already has it, the EXROM
doesn't link to it, it's short enough to be easily included in
any expansion bank, and it doesn't work, anyway. The widely
publicized NMI bug, first seen in the Spectrum and perpetuated
in the TS2068 Home ROM has been faithfully copied here. There
may be some subtle reason for the NMI handler to be there, but
it's more likely that a Timex programmer, feeling the pressure
Of overdue schedules, included it without actually understanding
it. At best, it reserves space for some proper code to be put
later, but to us it's fourteen orphan bytes of code that are
NEVER’ used,
Following the Function Dispatcher is the Bank Switching
Code, which will be quite useful in this series. This code is a
bare-bones memory manager which, with a little bit of extra
flesh (and a lot of debugging), would shield us from the “hard-
ware realities" of bank switching. While it's fairly easy to
write our own machine code to switch the standard banks, the
expansion banks are another thing altogether. But by always
using the Bank Switching Code, we should never have been able to
tell the difference. The code contains portions to do standard
bank switching, portions to access the expansion hardware, and
enough "smarts" to know when to do either. As such, bank
switching is changed from an occasional migrane to a constant
minor irritation.
Ironically, it would be
better to describe the “useful
_
stuff” next time, when we'll be concentrating almost completely
fon the system software. But as a quick description, the code
allows us to switch banks, move bytes between banks, find out
which banks own which chunks, do the equivalent of CALL and JP
functions to other banks, and other necessary niceties. Flow-
chart 2 (which we'll discuss next time), shows how the BANK
ENABLE routine works. This does the actual bank switching for
Doth standard and expansion banks, and after we've seen how the
hardware would probably have worked, you can check the flowchart
for an example of how the hardware and software mesh together.
As has been said, this code could have resided at two
different locations. Normally, it starts at location 6200, but
it can be relocated’ to F9C0. There are several reasons for’ this.
Tf we want to add code into the RAM, there are two basic
places to put it and not interfere with a BASIC program being
entered. One is above RAMTOP. This is so easy to do that it's
the location of choice for most T/S programmers. Yet, it's
almost as easy to clear a convenient memory nook down BELOW the
BASIC program in memory." The RAM Resident Code can do either.
Now, the Spectrum has no RAM Resident Code, lots of pro-
grams for the Spectrum reside above RAMTOP, and the folks at
Timex made a reasonable effort to convert Spectrum programs for
‘the TS2068. (Almost ALL programs Timex released were first sold
for the Spectrum.) As such, the low memory spot is preferable,
as it avoids memory conflicts. This is, in fact, where we
usually find the code.
Unfortunately, the convenient low menory area is right in
the middle of the space used by the second display file for the
extended display modes. There are hardware reasons for this.
Some of these allow both display files to reside in just two
memory chips, which must be faster (and hence, more expensive)
than the rest. Also, the exact location of the second display
file should have allowed then to employ sone little used proper~
ties of dynamic RAMs to squeeze some extra speed out of them,
when reading them for display data. Therefore, when the second
display file 4s being used, the code is moved to the less pre-
ferable (from the designer's viewpoint) location above RAMTOP.
By the way, when you're switching chunks in and out, it's
always necessary to have at least one RAN chunk available, to
hold the machine stack. It's needed, among other things, to make
CALL and RET conmands work, and they work so well that we often
forget about the stack altogether. The good folks at Timex
sought to help us out in this regard, by moving the stack along
with the RAM Resident Code. Since this code must be available,
ST CLASS MAGAZINE
At last a computer
magazine _on cassette
3 for the TSee08 . No
poner will you have
mows ye in long
Fastisious Prograns,
Just load and punt
BYTE POWER is_the ultimate
magazine for the Teeo0d: Each
Scull gf prograns,
Peal TS2Q68 owner’s dream= “a
BYTE POWER is a soft
magazine with over
per year, most of
machine language.
And all that for...
LESS THAN, 39 cents A PROGRAM
(based on 1 year subscription)
2 he
re based
programs
hen in
or Hardware for your TS2668 and
tips on how to program better.
4 Issue . $5.50
6 Months (G6 issues? $29'99
4 Year Ge issues} $49:99
48 Months (48 issues? $69:99
2 Years 4 issues> $8999
All prices in U.S. currency.
SEND CHECK OR MONEY ORDER TO:
BYTE POWER
er EAR NEMO Ho EAN Fin
Lav 368 ”
the stack always remains available with it, and we can happily
forget about it, once more. The only disadvantage is that the
stack size Decones limited (they allow us 512 bytes, or 256
entries), This is normally not a problem.
The ability to have the RAM Resident Code in two different
locations has another advantage. Although the TS2068 only moves
code to high memory when the second display file is active, you
can move it (and the stack) there yourself. If you can choose to
run it in either chunk 3 or 7, you don't have to tie up one of
your precious eight chunks just to keep the RAM Resident Code
available to you. Simply switch back and forth to whatever chunk
your own code isn't using at the moment. (Of course, you'll have
to keep track of where the RAN resident code IS, in any given
situation.) Also, if you should return control to the 152068
ROM, you'd do well to put the RAM Resident Code back where the
computer expects to find it.
ONWARD, INTO THE PAST
Last time, we looked at how to read and write to the bank
switching registers in the extended bank switching hardware. We
then saw a quick sunmary of what the registers did, with a
promise to explain them in detail, this time.
To recap, there are four input and four output registers,
which correspond to four memory-mapped 1/0 locations. We cali
the registers CO, AO, 80, and 40, and they sometimes are linked
to menory locatfons C000, A000, 8000, and 4000, respectively.
Each expansion bank has its own register set. When we write
to certain registers, every bank will “pick up" the information.
In other cases, when'we write to a register, the information
goes only to a selected bank.
To further complicate things, only writing to some “reg-
Asters" will actually cause data to be put in a conventional
register. In other cases, it may only change certain bits in a
register, or not go, into any hardware register at all! The “Bank
Switching Registers" form a motley crew of circuit functions
that are as different from one another as the Marx Brothers, and
are just as wild when we put them together.
Figure 1 is a block diagram of a “generic* bank switching
SCLD. Note that in reality, a RAM bank SCLO would have included
menory refresh and address multiplexing circuitry, for dynamic
RAMS. A ROM bank SCLO would have a set of chip enable signals.
But the figure does contain all of the Bank Switching Registers,
and these should be common to both SCLO types. It cna then be
used to show how the bank switching scheme works. It also shows
how the odd bank switching philosophy selected by Timex would
have allowed the SCLD chip to go into an inexpensive package
with a very smal] number of pins.
Note that this fs only a block diagram, not a complete
circuit layout. Also note that it's based entirely on an an-
alysis of what the ROM software is doing. If the designers at
Timex intended additional functions not supported in the ori-
ginal TS2068 ROMs, we'll know nothing about them. Lastly, please
note that the connection to the RESET signal {s probably not
what the Timex designers actually planned. It's included here to
suggest that there has to be some way to “disarm” all the hori-
zontal select registers when the computer is first turned on.
Otherwise they'd start out filled with random bits, and numerous
banks would all try to "take over” the same memory chunks at
Power-on, with some very lively results. Actually, an odd bit of
code in the initialization software suggests that each bank is
“unlocked” after the Horfzontal Select register is disarmed
through software. This suggests that the SCLD should also con-
tain sone power on "lock-up" circuitry to keep each bank out of
mischief until the computer straightens it out. We'll talk about
this more when we look at the software that actually uses it.
(See Flowchart 3.)
As we said last time, register data is sent to the Ex-
pansion Bank SCLOs one nybble at a time, to cut down on the
number of SCLD pins. This means that the SCLO has to alternately
steer the nybble into the right and left half of the byte it's
reconstructing. We also said that sending 02 to register CO will
reset the nybble steering logic, just in case a noise pulse may
have sent @ “false nybble” out, messing up the steering of later
nybbles.
But if this is all we do, it won't work. If the nydbles are
not being read propely, then the 02 sent in to correct the
problem won't get read either. This is why we said that the CO
register must interpret the 02 command, even if the nybble
synchronization is faulty. It also has to be able to interpret
it if it's sent as only a SINGLE NYBBLE (just the 2), since
that's how the routines READ BS REG and WRITE BS REG send it.
A “proper” implementation Fequires all of this, though it's
a fod to implement. Things get much simpler if we "bend the
rules", just this once. Our little trick centers around the fact
that ail commands to the CO register have "O" as their most
significant nybble, only the "02" command has data line D1 set,
and this command is only sent by the REAO BS REG and WRITE_BS
REG routines, which send it in the single nybble version, only>
And so, if we agree NEVER to send the 02 command to reg-
ister CO except in the single nybble version, the hardware will
be much simpler. Any time we write to the CO register with the
D1 line set, the nybble steering logic is reset. The ROM code is
Completely agreeable to this trick, and so the good folks at
Timex may well have had the same idea. Figure 1 is drawn to re~
flect_this simplification. Let's walk through it now.
The lower 4 data lines come in at the top, flowing to the
Nybble-To-Byte Converter. Every time the select logic detects
that we're writing to a Bank Switching Register, it sends the
NYBBLE CLOCK signal, allowing the NyDble-To-Byte Converter to
accept the nydble. ithenever the select logic detects that we're
writing to register CO with D1 set, it sends the CO-RESET-NYBBLE
Signal, which resets the nybble steering logic.
The functions mentioned so far are common’ to every bank.
This means that if you're building your own expansion banks, and
are putting more than one bank on a single board, they can share
this circuitry. (Just thought you'd like to know.
The Nydble-To-Byte converter reconstructs the original byte
we intended to send. Whenever ‘the "second nybble" is written in,
the select logic sends out another signal. If the nybble is
written to register CO, then the signal WR-CO is produced, Khen
it goes to register AO, then the signal WR-AO is sent. Similar
things happen for WR-80 and WR-40. Note that these signals must
be timed so as not to occur until AFTER the Nybble-To- Byte
converter has a byte ready to present.
Using this scheme, when we write to register 8, our value
ends up in the Bank Number Access block. This block may also be
shared. This works because each bank has its own number. If we
wish to change the Horizontal Select byte for a certain bank, we
first write the bank number to register 80 (Bank Number Access)
and then the Horizontal Select byte to register 40 (Horizontal
Select). Only the Horizontal Select register for the bank we
have “accessed” will be changed. The bits are high active; that
is, if a bit contains a "1", then its corresponding chunk is
allocated to that bank,
Registers that cannot be shared have that property because
they contain information that's unique to their own bank. As
such, we'll refer to them as Unique Bank Registers. Those that
can be shared will be called General Bank Registers. (Bank
Number Access is General; Horizontal Select is Unique.)
A bank knows it's being accessed when the number in its
Bank Number Access register matches another block called the
Assigned Bank #. When they're equal, the 8-Bit Comparator sends
the ACCESS~THIS-BANK=1 signal, which makes it possible to write
to the Horizontal Select register, or to read from any of the
four read-registers in that bank. The Assigned Bank # register
is set from a write to register AQ, but only under a very
special situation that we'll call the “setup mode". We'll
discuss this in the section on the Daisy Chain. Ordinarily,
writing to register AQ does something very different,
When the system 4s in what we'll call the “normal mode", a
write to register AO sends the "Universal Deselect Byte" to ‘all
expansion banks. This looks a bit like a Horizontal Select byte,
but has important differences. Each bit represents a menory
chunk, just like a Horfzontal Select byte, but if a particular
bit contains a zero, each Horizontal Select register will leave
its corresponding bit alone. If a particular deselect bit con-
tains a one, then if ANY Horizontal Select byte has a one in
that location, it RESETS it. As such, the Universal Deselect
byte tells all banks which chunks they must give up.
So, if we want to give chunk 5 to expansion bank #07, we
first make sure that the Dock and EXROM banks don't have’ it.
(The BANK ENABLE routine would first give this chunk to the Hone
Bank.) Then we send the hex value 20 (bit § set) to register AO.
Now, if any expansion bank had chunk 5, it will have relin-
Guished it. Next, we send 07 (the bank number) to register 80
(Bank Number Access) and finally we send 20 (bit 5 set) to
register 40 (Horizontal Select). We have now given chunk 5 to
bank 07.
Unfortunately, in the above example, we've also wiped out
whatever value was originally in the Horizontal Select register.
(Actually, even the BANK ENABLE routine acts this crudely for
all but the Home Bank.) Tf we wished to treat at least the Ex-
pansion Banks with a bit more dignity, we could have first read
its Horizontal Select register by sending 07 (the bank number)
to register 80 (Bank Number Access) and then reading the regi-
ster pair 80 and 40, (Remember, the READ BS REG routine reads
PAIRS of registers.) We would then have the Horizontal Select
byte as it had already been set for that bank. We could. then
have only changed bit 5, and any other chunk that was already
Selected for this bank, would remain selected.
It's also possible to read the register pair CO and AO, for
‘the bank number presently being accessed. While the ROM software
reads this pair, it only looks at bit 2 of the resulting byte.
This happens to be bit 2 of register AO, and every bank has this
bit grounded. If we look at the TSZ068 Schematic, we see that
Great New
ma Graphics he
at Design '
| Program
|
Lemke Software Development
Pixel Sketch and Graphics Editor 2068 version 2.08 an update ofthe original PS/GE
268 with the same powerful graphic editor capabilities: WINDOW COPY, ERASE,
ROTATE, ZOOM, WIDE VIEW, PAINT SHADE/FILL, MIRROR IMAGE, 1N-
VERT, and DIGITIZE, MERGE parts of two screens intocone screen. Full use of all TS
2068 attributes
ae! Sketch and Graphics Eitror 2068 uses the ADVANCED VIDEO MODES for
EXTENDED COLOR and HI RESOLUTION ($12 x 176) GRAPHICS. PS/GE 2068
version 2.0 is JOYSTICK controlled, MENU ériven, EASY to vse, and FUN. FREE-
HAND draw and erase are 2 times faster now. “OOPS!” function helps un-do errors
‘Compete 20* page user guide. NEW FUNCTIONS: CONNECT will connect designated
Points together, CHANGE FONT activates STANDARD, BOLD, MODERN, and
ITALICS set motitiers. Any character set can be modified to get BOLD, MODERN or
ITALICS versions ofthat characte set. LOAD FONT allows the user fo LOAD theie
‘own favorite FONT. A sample font - CHANCER Y- is provided wth he program. With
‘CHANGE FONT you get BOLD CHANCERY. Pixel Sketch and Graphics Editor 2068
version 2.0 s Tasman, Aerco, and A&J Mikrodrive CPI compatible in al of the 2068
ideo modes (Standard, Extended Color, and Hi Resolution). Compatible with most dot
matrit printers. Can access variable dot density functions of STAR and EPSON type
Brinters to control page size and location! Also 2040 type printer compatible. Get YOUR
‘apy of: Piel Sketchand Graphics Editor 2068 version 2.0 from LEMKE SOFTWARE
DEVELOPMENT today! Only $19.95 ppd. (owners of the original PS/GE can send
xiginal tape (proof-of-purchase) and pay ony $10.95), Send legal size SASE for infor
‘mation and a complete catatlog of top quality programs. EXTRA: Now with your order
you pet FREE a 32 column screen 0.64 column (bi resolution) screen conversion utility
‘rogram. Can even combine 2 standard sereens to make I hi resolution screen!
—_—
al Y, SD Lemke
eae Lemke Software Development
Sorewarel, : 2144 White Oak
T Wichita, KS 67207
[D eve ronment!
02 Vine (and ONLY the D2 Tine) has a 10K pullup resistor.
such, if we put a bank number in register 80
read that bank's CO and AO register pair, the resulting value
will have bit 290 if the bank exists, and bit 2=1, if not. This
function is used during system initialization to find out how
many banks are actually plugged into the system.
If all of this looks like a programming nightmare, that's
because it is. Don't forget though, that the initialization
software and the RAM Resident Code will normally handle it all
for us. The only people who really need to know how to directly
progran the expansion banks are those who plan to build their
‘Onn, and have to know how to debug then.
Since the bank switching SCLO only uses address lines A13~
Al5, there can only be a limited number of possible Bank Switch-
ing Registers. These are E0, CO, AO, 80, 60, 40, 20, and 00,
Since only the top 3 bits are actually used, £0 would be the
same as FO, or £7, for example. Each of these corresponds to a
single memory chunk.
But the possibilities are even more limited than this. What
we've said implies that reading a register happens when we read
a menory location from its corresponding chunk, and the menory
mapped 1/0 is enabled. But running machine code in that chunk
also causes memory to be read. As such, code that can activate
the memory-mapped 1/0 cannot run in a chunk that corresponds to
any register. The only routines that ever access them are WRITE_
BS_REG and READ BS REG, which we walked through last time. These
routines are part of the Bank Switching Code, and can be located
in either chunks 3 or 7, so the corresponding registers £0 and
60 must not be implemented in hardware. (Nor should the Bank
‘Switching Code be relocated outside of chunks 3. or 7!!!)
Also, it's possible that.an interrupt could occur during
the short’ time that these routines enable the memory-mapped 1/0.
This would cause the keyboard routine fn chunk 0 to be run be-
fore returning, so register 00 cannot be implemented in hard-
ware. This leaves register 20, which fs not used, and has no
apparent problem with being used. Al] of this’ is mentioned
because, if you've implemented the necessary registers, it
should be fairly easy to try to add more for your own use. This
explanation (hopefully) shows that only register 20 is worthy of
any consideration, whatsoever. But note that register 20 1s com-
parable to memory locations 2000-3FFF. If we totally forget
about using 20 as a new register, it would be possible for a ROM
19
As
and then try to
Continued on page 22...
EW PRODUCTS
ANNOUNCEMENT
For TS2068 and SPECTRUM
Novelsoft announces a new dimension in capability for you 2068!
..And it’s about time!
THE WORX! IS A SUITE OF PERSONAL ORGANIZATION PROGRAMS WHICH
HELP YOU MAKE THE MOST EFFICIENT USE OF YOUR TIME AND THOUGHTS!
A unique combination of planning aids, decision tools, and utilities,
* Scheduler/Planner * Biorhythms
* Notepad * Perpetual Calendar
* Telephone Book * Intemational Time Zones
* Programmable Calculator * Superb Manual
* Decision Factoring * Includes Spectrum & TS2068
* Real Time Clock Versions
* Supports Microdrives
A TIMELY ADDITION TO YOUR SOFTWARE LIBRARY...T HE WORX!
— $19.95 U.S. Plus $3.00 S & H
Novelsoft
A FORMAT FOR THE FUTURE
106 Seventh Street, Toronto, Ontario, Canada M8V 3B4 © TEL. (416)259-8682 * CompuServe 70416,1435
NEW PRODUCTS
ANNOUNCEMENT
For TS2068 and SPECTRUM
n ovelSo ft PROUDLY PRESENTS THE ALL NEW...
VERSION 1.1
* Pull-Down Menus * Auto-Speed Control * Includes Spectrum & TS2068 Versions
* Several Brushes * Magnify & Reduce * Supports Microdrives and Kempston
* Spray * Rotate & Mirror Joystick
* Auto-Fill © Full Attribute Control © Includes GALLERY, the slide
* Zoom * Fully Elastic Shapes including Circle, _ show/animator
* Undo Box, Triangle, Ray and Line * 5 Samples of Artwork
* Several Text Fonts © Fast Ellipse and Arc © Excellent Manual
* Cut & Paste Windows
Unshackle your creativity with ... ARTWORX!!
ARTWORKX V1.1 - $19.95 U.S, plus $3.00 S & H
n ovels (e) ft INTRODUCES THE REVOLUTIONARY NEW BASIC COMPILER...
TIMACGCHINE
The dream of every BASIC programmer has now been realized!
* TIMACHINE will turn your BASIC * Handles all BASIC except I/O
into super-fast machine code, * Includes an excellent manual and
running up to 200 times faster! 4 demonstration programs
*“ Handles floating point operations * Compiles up to 27K in seconds
like SIN, COS, TAN * Includes Spectrum & 2068 versions
Super-Charge your BASIC programs with... TIMACHINE!
TIMACHINE — $19.95 U.S, Plus $3.00S & H
Novelsoft
A FORMAT FOR THE FUTURE
106 Seventh Street, Toronto, Ontario, Canada M8V 3B4 * TEL. (416)259-8682 © CompuServe 70416, 1435
bank with just a 16K EPROM to contain a completely new and
graded version of the Bank Switching Code in those
(The stack would have to go elsewhere.)
At the bottom of the diagram, we see a block called Chunk
Select Logic. This compares bits Al3-15, which define which
chunk 4s being accessed, and the Horizontal Select byte, which
define which chunks the bank "owns". The use of IOAS tells it
wether we're really accessing memory or just a bank switching
register. If the TS2068 is accessing one of this bank's chunks,
then the ENABLE signal is sent out.
Note that this logic doesn't check MREQS. If the TS2068
isn't accessing memory, then the ENABLE signal may switch back
and forth, but it will do so harmlessly, since the memory select
logic further downstream will sort it out. However, the address
Vines settle out a full clock cycle before the MREQD line does,
and so this buys us extra switching speed. This is needed be-
cause ENABLE is used directly to generate the BE signal, and
this HAS to be applied fairly early on, but again is harmless if
memory isn't being accessed. (Those of us who've used the BE
line in our own projects learned this the hard way; it just
seemed polite to pass it on to save anyone else the trouble.)
The ENABLE signal should be sent out if 10A5 is high and
Al3-15 match the appropriate bit in the Horizontal Select
Register. It also could optionally be sento out if IAS is low,
Al3-15 match the Horizontal Select, and the chunk in question is
3 or 7. (This would let the READ 8S REG and WRITE BS REG rou-
tines run in an Expansion Bank without getting cut off in mid-
instruction when they switch I0AS. No, I don't know why you'd
want to do this, but you may have some good ideas that 1 don't.)
Figure 2 shows an entire expansion bank, including the SCLO
we've just discussed. The BE signal is generated from the ENABLE
Tine as an OPEN COLLECTOR signal, so that many banks can share
the output. An alternate method in use in some products today to
simulate a Spectrum Bus generates BE with a logic inversion and
a blocking diode. This is also quite acceptable,
The Memory Decoding Logic will then decode the bank's
memory as normal, except for one, or possibly two, additional
constraints. For’ the first, memory is only enabled if ENABLE is
active. The second possible constraint is based on educated
speculation, but is still, admittedly, a bit of guesswork.
We know that the TS2068 is basically an enhanced Spectrum,
Whenever possible, Sinclair's design was used, and Timex did
announce that it would release its own version of the Sinclair
Microdrives. This device uses its own crude version of bank
up-
locations.
SPRITES 2068
FANTASTIC NEW PROGRAM! Exciting & Educational
You've heard of SPRITES. Explore the subject.
Create Moving Displays and Games. Buy a copy
for your TS-2068, they belong together.
FEATURE}
- SPRITE SERVICE UTILITY (2520 Bytes IMPROVED
professionally written machine code)
SPRITEDRAW Program (Great NEW program makes
drawing a SPRITE both fun and easy)
Operate from BASIC (Utilizes a Machine Code
Interface. Twelve SPRITE Commands)
Operate from Machine Language (VERY QUICK
Screen Action! Bonus MCSPRITES program)
Cassette Tape (Includes demonstrations and
instructions. Menu driven. Fun to watch)
Manual (34 pages written in "user friendly”
style for all programmers)
Authors INTRODUCTORY SPECIAL Includes Postage
To ORDER: Send Check or Money Order $19.00 To
VERN TIDWELL
1303 Whitehead St.
Key West, FL 33040
+1 nave
OR RON RUEGG
37529 Perkins Road
Prairieville,LA 70769
1 SPRITES 2068. 1 have read it and I have tented
ae
& an
you NEO. SPRITES. 2068
Unsolicited Testimonial hon
—
nyOsLe clock
Flcues."€OuWALENT SCL" FOR Extwiiow Paves
Tan segert ove wey Gat crest oy wag) te
BHianeod a Beck, Boiling Regis dora
switching, werein it disables the Spectrum ROM and
its own when the code in the Error Handler
run.
switches
(location 0008)
The extended TS2068 commands, like LOAD *, SAVE *, FORMAT,
MOVE, and CAT are implemented in the RON almost exactly like
they're implemented in the Spectrum. That is, if you know the
Conmand format, you can type them into a line of BASIC, and the
TS2068 will accept them. However,. they're set so that when you
try to RUN them, the error handler at location 0008 will be
executed. The only way to make the conmands work 1s to switch in
another ROM when the instruction {s run at 0008. It must then
check the cause of the “error”, and run an extended comand, if
‘one is pending.
There are two ways to do this with Extended Bank Switching.
We could define another special bank number (perhaps FD) which
switches into chunk 0 when the instruction at location 0008 is
executed. But every other expansion bank would have to contain
‘the circuitry to check this, and switch themselves in and out,
adding cost and complexity. Alternately, we could put the
checking and switching circuitry only inside the microdrive in-
terface, and give it a way to disable all banks when it switches
in its um-numbered "Superbank™.
The superbank method needs a signal that does to. the ex-
pansion banks what BE does to the Standard Banks. The TS2068 has
3 backplane signals that are named but not wired into the
computer. These are DZIN, DZOUT, and BUSISO. We'll see in a
minute that DZIN and OZOUT are needed elsewhere, so let's specu-
Jate that BUSISO would have disabled the Expansion Banks. (I've
heard mention that BUSISO was instead intended to tri-state UI5
in the TS2068, but the schematic says it isn't wired to that
chip. For the moment, let's consider this is an. unreliable
rumor, but I'd welcome any evidence to the contrary.)
Getting back to our memory decoding discussion, we may then
guess that no menory would be enabled if BUSISO were active. The
diagram shows a "Special Buffer” at the BUSISO line, because the
Jack of a “bar” over its name suggests that it's high-true. This
means that the buffer must "see" a low signal if no microdrive
interface were plugged in, leaving it floating. This 1s opposite
to what a TTL buffer would do, although some DTL structures
would fit the bill nicely. Note that if the microdrive interface
were part of the BEU, then BUSISO would never be floating and
the special buffer would be unnecessary.
in
is
“WHAT DO WE DO NOW, BATMAN?’
Now, a1) of this may be very nice, but there's still
glaring problem. khen we want to send information to a Unique
Bank Register, we must first put its number in the Bank Number
Access register. If this matches a bank's Assigned Bank #, we
can then access that bank's Unique Registers. But the Assigned
Bank # fs itself unique, so how do we get a value in there, in
22
one
the first place? When we first turn the machine on, that reg-
ister will be full of garbage. How do we find out what it is?
Worse yet, what if THO banks “power up" with the same Assigned
Bank #?
Tt would seem we've painted ourselves into a corner.
DAISY, DAISY, GIVE ME YOUR ANSWER DO
To our rescue comes an incredibly oddball kludge called the
Daisychain. The main purpose of this whackiness is to let us put
a value into the Assigned Bank # register for each bank. Since
we can't use the Assigned Bank # register to access the bank at
this time, each bank contains a flip flop that's one bit of a
shift register (the Dafsychain). Ordinarily, each bank's flip
flop contains a "0", but a single "1" bit is stepped through,
from bank to bank. If a bank has the "1", then we can put a
value into its Assigned Bank # register.
Figure 3 shows the BEU functions that are needed to add
Expansion Bank capability. It will drop the BE line if BUSISO is
active, or if I0A5 is low and Al3-15 indicate that the chunk
being used is not 0, 3 or 7. This wil] prevent the memory in the
standard banks from trying to “answer” an attempt to read a Bank
Switching Register. The rest of figure 3 is the start of the
Daisychain,
The BEU contains its own form of the CO register. It
normally operates in what we'll unimaginatively call the Normal
Mode. Everything we've described so far assumes this mode.
However, if we send 00 to register CO, we reset all the bits in
the Daisychain and enter what we'll call the Setup Mode. This
switches flip flops in the BEU and all the expansion banks.
Also, DZOUT at the BEU goes high.
But DZOUT at each expansion bank is still low! Figure 4
shows how this can be. Unlike all other backplane signals, which
are shared on a common bus, OZIN and DZOUT are not. This is
necessary in order to retain the structure of a shift register.
Unfortunately, this 1s not readily compatable with the normally
sed method of stacking additional items onto the backplane,
which would short al1 the OZINs together and OZOUTs together,
and wouldn't match one OZOUT with the next OZIN. In fact, it
would seem that the most convenient method would’ use expansion
banks on edge-connected cards, plugged into a motherboard,
filled with female edge connectors.
By sending an 01 to register CO, we clock each flip flop in
the daisychain, and the "1" bit moves into the next bank. When
we're in the setup mode (and ONLY then) we can write the
Assigned Bank # to register AO, and it will be put in the
Assigned Bank # register of the bank that has the "1" in {ts
flip flop. In this way, we individually access each Assigned
Bank # register. When we're done assigning numbers, we send. 04
to the CO register, which clears all flip flops and puts us back
into the normal mode,
AN INTRODUCTION TO THE sys
ON TABLE
If you haven't yet done so, read 1M3.3.2, which gives a
snail's eye view of the subject. The “proposed expansion banks”
are the very same banks we've been talking about. The SYSCON
table is a list and description of all the extra "memory"
plugged into the TS2068. The LROS and AROS parts describe what
you've got plugged into the Dock bank, and comprise 12 bytes.
Note that each expansion bank takes up twice as many bytes,
Suggesting that the good folks at Timex planned to put a lot
more "horsepower" into those guys.
FR
BARK SUITOHWG Ga
"EQUIVALENT SLD
FIG. 2° Expausio DANE (SLigHTLY moviF LED?)
23
One thing may appear just a bit distressing. The table
description says there's room for only ELEVEN expansion bank
entries. Well, it's even worse than this, because the space for
eleventh entry is used as a scratchpad by the initialization
software . (Possibly a bug.) But if we really want more, we
Should note that the system variable SYSCON contains the address
of this table, and we can change this, and put a larger table
anywhere we'd like. Each expansion bank has a chance to run some
of its own code during initialization, and one of these can re-
write the table, But the hardware that contains this bank should
also contain some fancy buffering circuitry for the additional
banks, or there'l] be TTL fanout problems, not to mention un-
acceptable capacitance on the bus lines. (Actually, if you try
to figure out just how many TTL chips will be needed to replace
‘one bank switching SCLD, you may find it unlikely that even ten
expansion banks will ever be run together at the same time.)
The table contains numerous options, and is laid out as
follows:
mkt 0 for AROS followed by 4 for LROS. See TH.3.2 2
opted fron Lect 0000-0015 of ROM Expansion Bankes
02) tm lt Banks Chunks Avaliable, Ri true. For RO will have bit 5 reve
oe ror non Chase 3 bytes’ may contain a oP
Tnatroction for REGET 7” (out not used in TEZOUO ROM)
15 For ROM Bankes oosbon"t Inttialize } olstnitiatize
17 Interrupt Prigrity. Ram banks get 285. Ron get Lonershigher priority
HHTRHHHA RHEE HEH HEAR EE
**> RMG ENTERPRISES <««
ANNOUNCES
SEKTOR 2068
FOR THE FD68 USER
Femi A full-featured sector editor for use
with your 2068 and AERCO FD68 disk systen.
Very user friendly! Hany features that you
would not expect at this price!
Some of the features included ari
READ DISK SECTORS - WRITE SECTORS - CORRECT SECTORS
DELETE/ERASE FILES ~ COMPARE BLOCKS - COFY SCREENS
‘TRANSLATE IBM ee (2 VERSIONS)
ALL of this at a price that all FDé8 users can afford:
ONY $15. O@22ph
failable on 5 1/4 disk, 3* disk or cassette.
Please add $5 for 3* disk version.
Complete with very thorough documentation.
AVAILABLE EXCLUSIVELY FROM:
RMG ENTERPRISES
1419 1/2 7TH STREET
OREGON CITY, OR 97045
FOR CATALOS, SEND $2.00
REFUNDED WITA FIRST ORDER
HHHHHHHHHHH HAHAHA
The portions marked as not used may have been reserved for
future expansion, but at least one byte was probably set aside
to identify the actual function of each ROM bank. This would
allow us to find, at a glance, what additional functions were
actually "squirreled away" in the extra banks.
The left hand column contains the SYSCON Entry numbers. For
example, SYSCON 01 contains the bank #, and every bank has its
‘own SYSCON O1. AS such, the SYSCON Entry number is not a dis-
Placement into the SYSCON table, but the displacement into the
entry for a particular expansion bank. Only some of the table
entries are self explanatory. Each will be discussed as we wade
through its use in the ROM code,
A LOOK (FINALLY) AT SOME ACTUAL CODE
From here to the end of the series, you'll have the chance
to double-check everything I've told you so far. All of my
pictures, tables, and descriptions will have to be consistent
with the Timex code. It's fully possible that I've missed some-
thing in my search through the ROMs, and 1'1] be counting on you
to let me know if you see anything that looks “suspicious”
Together, we can add whatever finishing touches are needed for a
full description of the Extended Bank Switching.
Don't forget my promise last time that the software is
fairly civilized, though somewhat amusing. If reading the hard-
ware description has been as draining for you as writing it has
been for me, we can take heart in the fact that it's all down-
hill, from here on
Flowchart 1, given last time, is part of the very top level
initialization code the machine runs when we turn it on. Part of
the Home Bank RAM has already been intialized, and some system
variables reflect this, but the memory map on page 255 of your
TS2068 USER'S Manual shows "Machine Code Variables". The size of
this is determined by the contents of the Dock Bank, (See
TMS.1,2, 1M5.1.2.2 for more information) and the system “hasn't
yet found out how much memory to set aside. Therefore, this, and
the memory following it have not yet been set up. At this point,
we check for extra memory plugged into the system:
‘At XOBE7 we set the initial location of the SYSCON Table.
This has space for AROS, LROS, 10 Expansion Banks, and an 11th
Expansion Bank area, which (possibly due to a bug) is used as a
Scratchpad. Its size is fixed, and if we need a larger table, we
Must move it somewhere else, ourselves. We then CALL XO9F4 which
actually builds the table (we'll flowchart this next time).
We then check the SYSCON Table for an LROS. If there is
one, there are no machine code variables, so we finish setting
up the system variables, and run the LROS according to its in-
structions (see TM5.1 for more information.)
If there is no LROS, we end up at XO90F, checking for an
AROS. If we find one, we check its type (see T™M5.1.2.). A BASIC
‘AROS uses no Machine Code Variables, so we finish setting up
system variables, and return to Home ROM, after setting a flag
telling it to run a BASIC program out of the Dock bank. A mc.
AROS uses Machine Code Variables, which we insert and then
finish initializing the system variables. He then run the AROS
as required.
If there is neither AROS nor LROS present, we end up at
x0918, where we can initialize the system variables. At XO99A,
we set up so that the main execution loop in Home ROM will run
after initializing (an Expansion Bank can override this, if set
up properly). Ke then point to SYSCON 00 for the first expansion
bank, and enter a loop to check each bank,
In this loop, starting at XO9AC, whe check SYSCON 00. A
value of 80 marks the end of the table, causing us to end the
loop. If it's not 80, then we check if SYSCON 00 has the value
00. This marks the bank as inactive, causing us to point to the
ext bank in the SYSCON table, and loop to XO9AC.
If the bank is active, we get its number from SYSCON 01.
Then from SYSCON 15, we get the Initialization Flag. If this
flag fs 01, then we will have already run some code in that bank
when the SYSCON table was built (more on this next time) and
this bank may also “take over” the system after we're done
initializing. This depends on its "Boot Up Priority", which we
will discuss in a moment. If the flag is not Ol, then we point
to the next bank in the SYSCON table, and loop again to X09AC.
However, assuming that the Initialization Flag was Ol, we
end up at XO9C4, which gets SYSCON 16; the Boot Up Priority.
(The Tower the value, the higher the priority.) If this is the
highest priority found so far, then we save it and continue.
Otherwise we loop back to XOAC,
If it IS a higher priority, we get SYSCON 10. (Note that in
my flowchart I accidentally reversed the digits and called this
entry O1. SORRY ABOUT THATII!) If the code were written properly
the contents of SYSCON 10 would be the boot up address. (Where
we'd run after initializing.) Unfortunately, due to a bug in the
ROM, the address of SYSCON 10 is used instead. (This is a very
nasty bug, but at least I can blame THIS error on someone else.)
The new boot up address is saved, and we loop again to XO9AC.
2
Fouee
Connections
onirres
Bite.
152068 | ie ADDITIONAL
BANKS, AS
NeEDeD
ptealy)
FIG 4. TSZ06B WITH EXPANDED BUS AND DAISY CHAIN
When we find a value of 80 at SYSCON 00, then we've reached
the end of the table. We leave the loop, find the highest
priority bank and boot up to the given address. (Default is Home
Bank, at OE2F; the Main Execution loop.)
“eee Aerco FD-68 Sortware
Disk File Manager: Lists detailed directory and
tracks. Checks disk. Copies sing! 11 prograi
All functions support 1 to @ dri Optional printer
output. Available on 5.25" double density disk or on tape.
DFH-disk or DFM-tape ......+ +2 818.00
OnniDisk
Conversion program for Omnicale (version 64000).
Customize all colors and keyboard buzz. Supports both tape
and disk save/load. On 5.25" double density disk or on tape.
OaniDisk-disk or OmniDisk-tape $9.00
MSbiski Conversion program for MScript.
Customize varioui
default valu
Supports both tape and disk save/load.
On §.25" DD disk or on tape.
eed eeee 188000,
or MSDisk-tepe ..
* Programs from JRC Software *
Diawond Mike 11: & true arcade quality game with excellent
graphics, speed, color, and sound. Collect enough diamonds
and find the exit before time runs out. 22 different screens
and 6 levels. Available on 5.25" DD Aerco disk or on ta
Diamond-disk or Diamond-tape .....++ nl
Compass: The COMPILER converts BASIC to 100 times taster
‘chine code. 1t supports over 30 integer BASIC commands
The ASSEMBLER supports labels, multiple s nts per line,
and user comments. 5.25" double density Aerco disk or ta
Compass-disk or Compass-tape .... 19.00
Great Game and Graphics Show: This program package includes:
Oscilloscope, 3D City, Touch Type Tutor, Lunar Lander Gi
3D Graph, Color Mode 2, Easy Editor, and MANY MANY HORE
Available on 5.25" double density Aerco disk or on tape.
GGGS-disk or GGGS-tape ....... 117.00
JRC Software Catalog: Also has: Diamond Mike game demo and
3D Tic-Tac-Toe. On 5.25" double density Aerco disk or on
ta NOTE: This log 1s FREE with any order of
PFO} on disk or 1
$1.00 with any order of TS2068 ta,
IRC-tape eo. sees
IRC-disk or
NY TWO JRC PROGRAMS ORDERED AT THE SAME TIME
>>> All prices include first class shipping. <<<
Please send SASE for more information or check/money order
tot Chia-Chi Chao, 73 Sullivan Drive, Moraga, CA. 94556
That's the entire flowchart. I should point out one tiny
“puglet" that also crept in. The box marked XO9E9 should say
"..sEnabling 0,1,2,4,5, and 6 would...". I left out chunk 5 in a
transcription error as I copied over my notes. This shows once
again that it was more than Just my penmanship that began to
fail near the end of that long flowchart! (Is my face ever red!)
THE HOMEWORY
If you want some extra things to do, there's plenty. Walk
through Flowchart 2 and use {ts information to continue your ovn
annotated disassembly of the bank switching code, Try to follow
what it's doing with the Bank Switching Registers (it's a fairly
Simple example). If you can do that, then do your own dis-
assenbly and flowcharting of the GET STATUS routine at 6405 hex.
Don't disassemble it until after including corrections shown in
TM6.5.2. The Expansion Bank portion doesn't change, but the rest
is a real mess, and you won't get a feel for how the routine
sorts out different banks unless you include the corrections,
Read through the listings of the RAM Resident Code in
Appendix A of the Technical Manual, if you haven't yet done so,
and also read TM4.1 in 1/0 channels (yes, streams and channels
figure into this subject, too).
Once again, feel free to write with questions or comments,
and please include a SASE, if you wish a reply, 1 am Wes
Brzozowski, 337 Janice St., Endicott, NY 13760. I also like
phone calls, 607/785-7007...provided you don't call collect, and
call before’9:30 PM, EASTERN time, See you next time!
very familiar game, but this arrangement has a different
twist. In this version the program constructs three
identical playing planes, numbered 1, 2, and 3, reading
from left to right. Refer to the screen’ dump of Figure
1. By considering all three of these planes’ jointly. a
piayer can win--or score points--when three of his marks
are arrayed in a straight line, in any direction.
AS in the conventional game, players take” alter-
nating turns to plot their marks, an "KX" or an "0", in
any of the three planes. He (or she) does so by first
touching a number key designating the plane, and then a
letter from the group of keys in the lower-left corner
Of the keyboard, the keys QWE ASO 2XC, These nine keys
Correspond to the sane nine positions in each plane. The
Player does not need to press the ENTER key for a selec~
Lion to be received and recognized by the computer.
Touching the ENTER key fs reserved for the signal to the
Computer to clear the screen and start over on anew
So avoid ENTER unless a new game 15 what you have
To be fair with the players, the program is’ de-
‘Signed to determine randomly, for each new gane, whether
the player on the left or the one on the right’ starts,
But the starting player is not permitted to place. his
initial mark in the desirable center spot of the middle
plane. And neither player is permitted to place their
harker over one belonging to his opponent. The penalty
for any of these illegal moves 1s forfeiture of that
turn to play.
This routine contains several error traps which
prevent the players from selecting an {Vlegal number or
letter. These traps are contained in Vines 425, 445, and
590.
System address 23559, rather than INKEYS, was used
to indicate which key was’selected by the player. This.
approach simplifies the construction of the program,
which requires @ wide range of input values.
In a program of this type, the computer must make
any tive-consuning decistons in the principal loop that
lays between lines 60 and 600. Some speed-up would ensue
if Vines Tike 500, 510, ect., contained an additional
statenent: GO TO 600. Such a’statenent would obviate the
eed to test any of the conditions that follow. But, the
Slight additional speed was not considered to be worth
the effort here,
Have, fun. Feel free to embellish the program
further, 1f you so desire,
metaemon neon wanaun » OD TIC-TAC-TOE
by Warren Fricke
2 REM #4 THREE-DIMENSIONAL
‘TiC-TAC-TOE
for
SPECTRUM of TS 2060
Alverson bg
Warren Fricke
OREN ss "A-22"
S$ BORDER 1: RAPER Ss: CLS
18 FOR j=UsR CHRS 14 To USR Cc
pgs 24esa8 READ e* POKE Ja) NE
LET pea-(1 AND
RND<.S): LET t=0
6° IF p=i THEN PRINT AT 0,0;
IGH";AT 0,30; INK 2;"0"! LET ms=
CHRS' 144: ‘LET i-2: "Beer .os,0
70 IF p= THEN PRINT AT 0.0; "
LER"; AT 0,90; INK d;"4") LET
CHRs 145: 'LEt s=1. BEEP .63,12
400 REM sePRINT PLAYER'S PLECES
410 PRUSE
420 LET a=PEEK 29559: IF a=19 T
HEN CLS: "Go TO 40.
aggS FF acé8 oR 3952 THEN Go TO
230 PAUSE o
440 LET B=PEEK 23559: IF b2ig T
HEN CLS : "G0 TO 40.
445 IF t20 AND 2250 AND balis T
HEN'GO TO 600
Now Available!
“THE BEST OF SUM”
One of the most popular features of SUM Maga-
{ine has been our stockpile of back issues. But our
‘stockpile has been depleted. In its place we now
have “The Best of SUM” — 112 pages of the arti-
Two Special Issues
SUM MAGAZINE
‘SUM Magazine has two Special Issues for sale
which were devoted to special topics:
QL Special issu
—28 pages devoted mostly toan
‘les, reviews, program listings, and hardware pro-
jects that have made SUM so popular — all taken
{rom the frst 3 years of our publication.
Some of the articles include: Buliding Your Own
‘Spectrum Emulator, Doing 1000 Repairs, Word
Processors for the 2068, UDGs on the TS-1000,
Extensive Review of the Zebra Disk System,
‘Adding a Keyboard to the 2068, and Enhancing
the A & J Microdrive,
$11.95 postpaid
SUM Magazine, 3224 NW 30 Avenue, Gainesville, FL 32605 — 904/462-1086 (eve.)
indepth review of the QL hardware and an over-
View of the software. Very popular with readers
‘and of great interest o all thinking of purchasing a
Sinclair QL. Price: $3.95.
TS-1000 Special ssue — 28 pages devotedtoart
cles, reviews and programs for the TS-1000 and
2X-81 computers. A lot of new products are dis-
Cussed and suppliers listed. Price: $3.95
‘Special Deall! Get “The Best of SUM”
and BOTH Special Issues for only
*16.95 postpaid
450 LET cxge(a-e9)
500 IF bsS7 THEN PRINT AT_7,54¢
jpiNK isMS AND SCREENS (7,54¢) 26
bas! 32
510 °2F b=S9 THEN PRINT AT 14,94
cL INK iim$ AND SCREENS (14,95e)
Stuas 32
S20 IF b=100 THEN PRINT AT 12,9
+E, INK i)m$ AND SCREENS (11,946
Vsturs ae
$90 IF $101 THEN PRINT AT 6,94
cpaiNK i/M$ AND SCREENS (8,94) =
Shes 32
‘$40 TF b=119 THEN PRINT AT_4,S+
cj) INK ijm$ AND SCREENS (4,53¢) =
ches 32
‘$50 TF b=115 THEN PRINT AT_9,74
cj INK iim$ AND SCREENS (9,7%¢) =
Shes 32
‘$60 IF b=il9 THEN PRINT AT 6,74
ci aiNK {ims AND SCREENS (6,740) =
Chas s2
$70 If b=120 THEN PRINT AT 12,7
$C) INK ims AND SCREENS (12,756
Tecnke 32
$00 If be122 THEN PRINT AT 10.5
$€i INK tims AND SCREENS (0,S+e
Tstuas 32
$90 IF b<97 OR b=98 OR beiid OR
b=121 OR (b¢li9 AND bo138) OR t
(213 AND b>i01) THEN GO-TO 430
98 LET p=NoT p. LET 60 To
2000 REM seTITLE 2 rNsTRUCTIONS
4010 PRINT AT 2,7; “THREE-DIMENST
ONAL“; AT 4,9; "Tic-Tac-ToE:
1020 PRINT’AT 7,3; "This version
goes not neep ‘score nor determ
ine a winner. Players must do.
this themseives,as the rules may
2030 PRINT AT 11,3; "The computer
determines ran- ‘domly whether L
ERT of RIGHT Starts the game
1040 PRINT AT 16,2; “computer wit
(keep tract of ‘whose turn it 4
5 blagers alternate.
2045 PRINT AT 17,3; "Use the ENTE
Rkey only to ‘start a new gam
me
205@ PRINT AT 20,3; "stand by.”
4100 PLOT 56,150! "brau 136,
BRAU 83,0
1120 PAUSE add: CLS
URN
2002 REN #2 3-p soARD
2010 FOR m=35 TO 166 STEP 64
2020 FOR N=iso To 8a STEP -24
2030 PLOT m,n: DRAW 43,-49
2070 NEXT n! NEXT m
2200 LET m=i2e
2210 FOR N=38 TO 212 STEP 16
2215 PLOT nomen: BARU O, 72
2220 IF need THEN LET maiss
2290 IF n=ide THEN LeT massa
Next’
2250 FOR n=20 TO 212 STEP 64
2260 PLOT n,8e: DRAW 16,0
2270 NEXT A
2290 PRINT AT 0,4; "T-HAND PLAYER
*3 TURN. USE"
2309 PRINT AT 2,9) 1,AT 2,11;2;8T
2,49;9;AT 16,14;4;aT 16,192) AT
36,2773)
2316 PRINT AT 18,9; "uUst touch t
Wo keys: 4,2, of’3'a one tetter
Key. Use thé ENTER Key onty to
start a new game. Gowhen ready.”
2358 RETURN
3000 DATA 49,75,58,55,65,94,50,1
2,144,80,48,45,24,26,18,17
Beaver Character Advanced
Writer Font Video Modes
: Generator
irst 80 column
word processor design your own UDG OUT #1 best seller!
for the T/S 2068 or character sets supports normal, dual,
compatible with comes with ASCII, extended colour,
AERCO I/F and most Bold, Future,and 64 column mode and
EPSON compatible Medieval fonts now with 80 columns
printers joystick required loads in 15 seconds
$25.00 US _ $30.00 Can $15.00US _$2000Can§$20.00US $2500Can
Send cheque or money order for $1.50 for our complete catalogue with Demonstration
Tape plus bonus programs. We pay the postage & handling costs on all orders!
Paes
ee BEBE COMPUTER MeopucTs
999 MUNROE AVENUE, WINNIPEG, MANITOBA, R2K 1J4
'The best DAM software around)
99 gun
To REMark PROGRAM BY RON S. MORR 10/04
11@ REMark CHICAGO DATA CENTER MAIN F
120 REMark CONVERTED TO
® REMark oH IND PERM:
WRITTEN ON &
ME USEING PASCAL
> BY DAVID JOHNSON ©:
ROM THE AUTHOR FOR THE Sinclair QL
DEFine PROCedure gun
LET chamber
i=l inso TO 6
IF click=chambers THEN BANG
chambers THEN 1ive
live
For now! @1geKe
QL KILL (not reconmended for weak
s stomachs) is a simulation of the
PROCedure death ever so popular (7) RUSSIAN ROULETTE
RSOR 50,30,10 game. The listing was converted from
3 YEA & PASCAL program and contributed by
PRINT"PLAY A David Johnson, with permission from
INPUT 2 the author, Ron S. Morr. David would
Tike to get in touch with other QL
users. Write to: 2399 St, Rt. 95,
Edison, OH 43320.
QL Peintre
A Review
by
Paul Bingham
French language suffers
times; being difficult to pronounce properly when read
the fate of English at
from text. So it is with QL "Pine tree", “Pain tree",
“Pee-in-tray", or “Pay entry" as this program may have
been so falsely introduced to you. If we could all read
French it would be instantly obvious that QL "Painter"
is a French screen artist program.
QL PEINTRE is a classy program in many ways. After
loading begins a picture of two chimps appears: seem-
ingly a digitized photo image. Nearly three more minutes
of on-and-off file loading finally brings a blank sub-
screen with sharp surrounding icons. French and English
titles toggle back and forth with a key press. The look
is sophisticated, elegant. The icons are easily readable
and easily used.
Should one require additional help, the docu-
mentation is excellent. Now this is not a flashy in-
struction booklet, but it is the first one I have seen
which states simply what to press next and then accur-
ately tells what the outcome will be. Even though the
instructions do not mention it, I have found it helpful
to have a formatted cartridge on hand for saving a sceen
prior to running QL Peintre. There is a Microdrive icon,
but like so many other QL software titles, it does not
Provide for formatting of a cartridge. It does provide a
nice scrolling directory option, though!
Like GRAPHIQL, reviewed by Vince Lyon in the March/
April 86 issue, QL Peintre has many, many abilities.
WD EASY Sy
GGAQS
eect
FIWAaL ScoRE:
_—SSSass
QL Peintre is sharp and professional.
limitations but is very polished and easy to
If the programmers in France keep this up, I
learning to read French.
It has
adapt to.
Ga
Some are far more versatile as well. Circle and Arc
drawing are so much improved! Fabulous, too, are the two
type faces (one very MacIntosh) in two sizes with four
spacings each. Line and spray widths with intensities
are very adjustable as are the colors and textures, But
keep in mind that QL Peintre is capable of only four
colors in High Res mode Fl, and will not run in mode F2
on an American TY. QL Peintre supports all the colors in
F2 mode.
Is Peintre perfect? It does have a limitation or
two. It incorporates the standard security checks re-
quiring a backup and original present. The screen work
area is much smaller than other such programs. It only
Provides 63% of the screen that GraphiQL uses. It also
does not have a wrap-around feature when drawing. If one
bumps into the work space edge diagonally, the cursor
continues straight along that edge until stopped. Jot-
ting and spraying do not quite reach the edge of this
work area either. These are really minor items, however.
Unlike GraphiQl, Peintre never does "grow!" back!
QL Peintre isn't intended as a drafting design or
CAD program. QL WORLD MAGAZINE (from England), carried a
review in the May '86 issue, of six such programs. Most
CAD packages were more expensive than Peintre, too.
Missing from their review was a new release, TECHNIQL
(from Talent...writers of GraphiQL). Such would be good
future Quick Look fare.
Ql Peintre has a good set of save and printer
options. The Printdump program is unprotected and may be
included by the user in other programs. I was amazed to
find that it will load almost any saved screen, in-
Cluding ones from COSMOS (reviewed last issue) and
GraphiQl, too. Screens can then be altered and printed
out on an Epson printer. But the output process takes 22
minutes! GraphiQL's beats it by three or four minutes.
But unlike other dumps, this produces an output side-
ways! So if your printer is like my little Epson Home-
writer 10, most graphics look slightly elongated. Now
with Peintre they just come out taller.
2o6s_To_er
WE ARE BUILDING BRIDGES BETWEEN TS2068 AND QL.
WHETHER THIS IS UPLOADING OR DOWNLOADING QL. IMPORTING
OR CONVERTING BASIC FROM TS2068 IS IMMATERIAL. THIS IS
NOT SOFTWARE. THIS IS A SERVICE. WE CAN TRANSPORT THE
BASIC FROM TS2068 OR SPECTRUM TO GL. NO SOUND OR MC.
BASIC PRICE PER ‘LOAD’ ON SUPPLIED CARTRIDGE...$16.95
ON OUR CARTRIDGE--ADD $3.00
WE ACCEPT PERSONAL CHECKS. ORDERS GO OUT THE NEXT DAY.
THE ‘LOAD’ CAN BE:
1+A BUNCH OF MERGED PROGRAMS.
2.PROGRAMS AND DATA.
3.DATA IN ONE OR TWO DIMENTIONAL STRING ARRAYS.
4.DATABASES LIKE PRO/FILE 2068 OR MASTERFILE.
IF YOU WOULD RATHER SKIP THE MERGING PROCESS THEN
ADD $1.00 FOR EACH ADDITIONAL PROGRAM AND ARRAY.
EACH ADDITIONAL ‘LOAD’ WITH THE SAME ORDER.....£11.95.
YOU WILL GET TWO FILES OF YOUR BASIC PROGRAMS: THE
TRANSLATED VERSION, WITH THE SAME LINE NUMBERS, AND
THE FACSIMILE FOR REFERENCE--BYTE FOR BYTE.
IF YOU ARE ONLY THINKING QL AND WONDERING HOW YOUR
SPECIAL BASIC WOULD LOOK IN SUPERBASIC THEN SEND US
A CASSETTE WITH ABOUT SO LINES OF IT, SASE AND $1.00
FOR THE PRINT-OUT. ENCLOSE A CARTRIDGE AND ADDITIONAL,
$3.00 TO GET BOTH THE PRINT-OUT AND THE SAVED LINES.
EVERY BYTE OF YOUR PROGRAM OR DATA WILL BE TRANSFERED.
LESS THEN 2% NEED BE EDITED. DATA NEEDS NO EDITING.
EUGENE PERERVA, 358 RAILROAD AVENUE
BRIDGEPORT, CT 04404 (203) 574-8728
SPECIAL FREE GIFT WITH ORDERS:
THE FIRST ISSUE OF AMERICAN FIRST QL MAGAZINE:
QUANTUM LEVELS
SHARP’S INC.
Rt. 10 Box 459
Mechanicsville, VA 23111
(804) 746-1664 or 730-9697
QL Computer with I.C.E. & War in the East ..$289.00
jludes Postage)
QL Printer $249.00
512K Ram.
Microdrives (AiPack)et )...c:.ca..ctaesee sae re ne $9.95
QL War in the East (Secenario !)
QL Service Manual -
Includes all Circuit & Layout Diagrams
Write for Entire Catalog
VISA & MASTERCARD ACCEPTED
= QL QL QL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL QL AL AL a
aL RMG ENTERPRISES @L
aL IS PROUD TO ANNOUNCE
QL ‘ANEW BUSINESS SOFTWARE PACKAGE FOR THE QLI st
aL
aL INVENTORY/INVOICING PACKAGE aL
aL FROM EXECUTIVE WORKSHOP QL
aL If you are running a small business that depends on a GOOD aL
aL Inventory control program, THIS IS THE ONE FOR YOU! QL
al With our new package you can keep track of all SALE, INCOMING STOCK, aL
aL CURRENT STOCK VALUES - BOTH WHOLESALE & RETAIL, aL
aL as well as generate the folliwng hard coples: aL
a INVOICES - BACKORDER MEMOS - PAKCING LISTS - SHIPPING LABELS - INVENTORY REPORTS aL
Ee PURCHASE ORDERS - FLAGGED ITEM REPORTS - PRICELISTS - SELECTIVE PRICE LISTS on
aL All of thls and the best part Is, WE WILL CUSTOMIZE THIS PROGRAM TO SUIT YOUI aL
aL When you order this package, you will be sent a short questionalre to fill out aL
aL and retum, Within 2 weeks you will receive your program, ready to gol aL
aL aL
a ALL THAT AND AT A PRICE OF ONLY $59.95 +2ph a
aL FOR MORE INFORMATION ON THIS AND OTHER FINE QL PRODUCTS QL
aL CONTACT:
aL RMG ENTERPRISES aL
aL 1419 1/2 7th STREET aL
aL OREGON CITY, OR 97045 QL
a (503) 655-7484 aL
aL aL
aL (FOR CATALOG - SEND $2,00 - DEDUCTED FROM FIRST REGULAR ORDER) aL
aL aL
QL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL AL
The Future of the QL in America
And
Some QL Graphics Systems
by
Mike de Sosa
THE QL IN AMERICA
Many of us in recent years have, in anguish, wit-
nessed the demise of first the Timex Computer ‘Corp.,
then Sinclair Research USA, and finally Sinclair Re-
search Ltd., itself. I say “in anguish" because with
their failure went fond hopes of continuing professional
support for our computers and dreams of a proliferation
of third-party hardware and software. These organiza-
tions, blessed with an excellent product and the good
will of many thousands of cult followers, just plain
"blew it" and, in the event, passed up the opportunity
for millions in profits. None seemed to learn from its
predecessors. In each case, arrogance and poor customer
relations prevailed. Statements like “we don't really
need the U.S. market” and “each Sinclair employee pro~
duces millions in earnings” added to the insult of tele-
phone calls that were not returned and letters un-
answered. Many recommendations from periodicals, users’
Groups, and loyal customers, some based on time con-
suming research, were spurned. If it was not the
company's idea, it was not, needless to say, a good
idea, The outcome, the result of arrogance and delays
due to poor management, was probably inevitable.
QL users and would-be users in the U.S. are now
dependent on a single distributor offering a limited
number of QLs through a dozen dealers--without factory
or engineering back-up. Before taking the plunge, would-
be QL buyers should be aware of a few things and then
satisfy themselves that their QL will be adequately
supported. Item--the QL will be replaced in a year or so
(perhaps this fall in the UK) by one or more follow-on
"QL-compatible” systems that do not use Microdrives.
Item--when the present small stock of QLs are gone, no
more may be manufactured; this will affect the avail-
ability of replacement parts and maintenance and the
quantity and cost of future software for the QL. Item--
there is a difference in QD0S addressing that causes
many software programs to work improperly on U.S.
machines: for example, QL Project Planner, QL Decision
Haken, GraphiQl, and (ROOT (This problem also affects
-S. software designers trying to get their programs to
work on European QLs.) Item--the Psion software programs
sold with QLs in the United States are now several
versions old and the documentation for these programs is
older yet, Item--the QL is poorly documented in the QL
User Guide, and scores of books on the Ql--all written
early on before the operating system was perfected and
before peripherals were available--do little to help the
situation. (This problen--a major shortcoming of the QL
since its launch, and before it the 1/S 2068--was
ignored by Timex and Sinclair organizations despite
urgent pleas and recommendations by QL users.) Item-~
many QL users are now getting bad advice...better
methods of communicating authoritative information re~
garding the QL are needed.
Ido not believe that the QL distributors and
dealers are moving nearly fast enough to correct these
29
problems, al] of which are capable of easy and in-
expensive solution. For this reason, prospective QL and
QL software buyers should pressure the distributors and
retailers to do something about all of these problems
ASAP. In doing so, you would do yourself and them a
favor, possibly saving them from a rather predictable
self-destruction. Lets have some cards, letters, and
calls on this, folks!
The following things should be done soon (and that
doesn't mean "next year"):
a. Supply QLs with the latest version of Psion QL
software. (It should cost very little to do this, and
buyers would gladly pay an extra cost.)
b. Supply Qls with additional documentation to
supplement the inadequate, frequently erroneous, and
badly out-of-date QL User Guide. (Making this supplement
available to QL owners here and abroad could make this a
profitable endeavor.)
¢. Devise a universal "patch" which would permit
al] European QL software to work properly on U.S. QLs.
(This is long overdue--a result of inaction.)
d, Insure they are getting good technical advice
regarding which QL peripherals and software to market in
this country.
e. Decide whether the current U.S. version of the
QL, Microdrives and all, should be manufactured further,
perhaps with additional built-in or plug-in RAM and RAM-
disk software. (An enhanced QL could be profitably
marketed in this country for another two to three
years.)
f. Make on-the-shelf QLs available with distributor
installed disk interfaces, RAM cards, and RAMdisk soft-
ware.
g. Select and standardize use of a disk
with the QL and a single DS-DD drive,
5 1/4" drive.
h, Establish a toll-free "QL HOT LINE" for three or
four hours a day to answer consumer questions.
i. Advertise the improved product. If nothing is
done, that is, if things proceed at the present pace, my
prognosis for the QL in the U.S. is a slow death.
interface
preferably a
QL GRAPHICS/CAD SYSTEMS
There are now many types of graphics systems for
the QL, ranging from those used to draw pretty pictures
to two-dimensional computer-aided design (CAD) programs
to three-dimensional graphics design programs. With one
exception, I believe the best of these QL graphics pro-
grams are discussed below. (The exception, QL Peintre
from France, is discussed by Paul Bingham in this Tssue
of TOM.)
Also discussed this month, is anew and excellent
font editor and print utility for the QL which I thought
you should hear about. Finally, as an update to last
issue's games article, a brief review of VROOM!, the
grand prix motor racing game from France.
Q Draw by Psion: Q Draw is the software used by
Psion to create the breathtaking graphics for QL Chess
and Ql_Matchpoint. Very user-friendly, Q Draw can be
used to create pictorial graphics of all types or to
improve upon, or draw from, graphics screens produced by
other programs such as GraphiQL, TechniQL, Concept 30,
Easel, or a screen created and saved from SuperBASIC.
‘TPraw offers four-color, high-resolution graphics as
as the more usual. eight-color lower-resolution
graphics. (High or lower resolution is not selectable
from within the program.) Other features include a vari-
able-width pen (or brush); the exploitation of created
"shapes" which may be created or plucked from any screen
stored on disk or Microdrive and then manipulated
Copied, or stored for later use (a library of usefu
shapes is included and you may economically create your
own library); two screen magnifications; and various
cursor forms (a crosshair or screen grid may also be
selected). There are no text or curvilinear functions
which automatically create arcs, circles, or ellipses.
Cursor position coordinates are not available, but this
does not seem a great disadvantage in Q Draw. At $25,
Q draw is the least expensive QL graphics program and in
some respects it is the best of the lot--another winner
from Psion.
GraphiQl & TechniQl by Talent: These two software
programs from ScotTand are’ so complex and comprehensive
that a complete description of each is impossible in an
article of this length. The best I can do is describe
their capabilities and differences to help you decide
which of these two superb programs, offering over-
lapping capabilities, should suit you best.
Talent's designers have had decades of experience
in designing CAD/graphics software for mainframe and
minicomputer systems. Their microcomputer versions for
the QL, while reducing unnecessary complexity, at the
same time incorporate several never before seen fea-
lee)e 0 00 © 0 elele)
x 1.2 O10)
ie)
le
e.
,
J
e
e)
e,
°
GraphiQl is a graphics design program optimized for
the computer artist or illustrator. TechniQl is a two-
dimensional CAD (computer-aided design) package opti-
mized for the technical draftsman. Although the two
Programs have few features in common, each can do a fair
job at the other's tasks with a little extra effort, but
GraphiQl pictures are limited to the size of a single
computer screen, while TechniQL pictures occupy many
screens and be drawn Yn many layers (analogous to
acetate overlays on an engineering drawing), Both pro-
grams have good on-screen HELP facilities. Neither has a
variable-width pen (brush).
GraphiQl is primarily, a graphic arts program whose
forty-six commands and other capabilities can be uscd
for other purposes, including technical drafting. Graphi
QL operates only in the eight-color, medium resolution
(256 x 256 pixels) mode, Many methods
illustrations are possible, and cursor coordinates and
other useful data may be displayed, if desired. Other
features include texture and airbrush effects, screen
magnification (16x), two text sizes, standard drawing
shapes, and comprehensive screen/file handling. Avail-
able at $50, including a 63-page manual, GraphiQL may be
found in an improved Sinclair Research version, QL Paint
with icon pull-down menus and a 123-page loose-lea’
manual.
of creating
TechniQl is primarily a CAD and drafting aid, but
with good graphic arts capabilities (except for text-
printing which is better on GraphiQL and. not available
in Q Draw). Additional TechniQL features include the
following: four-color, high-resolution and eight-color,
lower-resolution graphics selectable from within the
a well-
Program; about forty commands which may be executed from
a wide range; a RAM-efficient design storage system; the
hensive file storage handling. At $70, TechniQL is the
company Tabitet’ in alifornia, Ys an excellent teor nang
cee is too comprehensive eae
in graphic desigh (those Tami fer with felons Vic90 for
example, it cannot like TechniQL produce layered designs
‘using the screen dump program on the Psion Easel cart-
several which are unique to the QL: about 50 singie-
eight-color, lower resolution graphics selectable from
axes, seen from various perspectives; image magni-
cellent documentation in a 45-page user manual.
which are
unique to the QL. My kind of program!
five pull-down menus or by two letter key codes; rapid,
capability of creating and manipulating up to 75 ele-
most expensive and comprehensive QL Graphics program.
three-dimensional CAD program, although the distributors
in an article of this length.
the T/S 2068 will see some similarities). Operating in
on multiple printed sheets almost CG aA Sa
ridge.
relatively
or dual-keystroke commands listed on three main menu:
within the program; three types of 3D modeling, two of
fication and reduction over a wide range; five text
At $40, an ingenious and
Inkwell by Palantir: An inexpensive font editor
multi~sheet printer output; multiple magnifications over
ments (cells) as part of a single design; and compre-
an American software
do not refer to it as such. Like Techni,
Aptly named,
three modes, Concept 30's capabilities may be described
as excellent but att significant limitations, for
3D produces only one screen dump at a
user-friendly. It "includes the ‘following’ festuress.
and other sub-menus; four color, high resolution and
which are automated; rotation of objects around three
sizes; hidden line removal and surface modeling; ex-
executed ee several features
with print utilities for the QL, Inkwell at 210 (£8 to
QUANTA members) offers excellent value for money. Eight
alphanumeric or symbolic fonts are made instantly avail-
able by inserting simple codes in Quill documents.
Variable line spacing, print emphasis, inverse printing,
and equal or proportional character spacing may be
specified for symbols/font characters prepared using a
16x16 font editor. A must for desk-top publishing with
the QL.
VROOM! by Pyramide: A grand prix motor-racing simu-
lation by the distributors of 30 Manderer, ROOM! is
potentially more interesting to play than QL Hyperdrive
its QL road-racing rival, but suffers trowa—-fauTt oF
two.
YROOM! includes five meandering racetracks of in-
creasing complexity. Pass 10 cars and move on to the
next circuit or begin all over again. Graphics and sound
effects are fair to good. Your view is from the cockpit
Note
Inkwell, which is ava
Tukes Road, Bedminster,
of the race-car: the steering wheel and two front wheels
are seen to move in unison. Joystick steering at speeds
necessary to pass cars and advance to the next circuit
is very tricky.
A victim of the QD0S address
differences in U.S
QLs discussed above, VROOM! does not accurately or com-
pletely depict the plan of the grand prix circuit in
use. This may affect player steering: for example, while
you are still shown to be on a straightaway, the track
begins to curve. A second fault, perhaps related to the
first, is that it is too difficult to pass another car
at speed without either crashing or going off the road.
At $30, $3 more than Hyperdrive, VROOM! is preferable to
the former despite its faults
NEXT ISSUE: “Optimizing QL Quill". Future articles
will deal with one main topic and, typically, discuss
new or related software programs.
11 QL programs in the article were obtained from CURRY COMPUTER,
P.0. Box 5607, Glendale, AZ 85312, 602/978-2902; with the
jable from PALANTIR PRODUCTS,
Bristol BS3 4RX, Englan
exception ‘of
Dept MFI, 60 St.
This time, right to business! We are
math instructions which are listed in chart 4.
where it starts getting a little more difficult, but not
studying the
This is
so that you can't handle it. Up to this point,
the lessons have been peripheral background
make sense out of the rest of the discussion.
We only have two math functions available to us:
Addition and Subtraction. As with Ld, this is not as
limited as it first sounds. A study of Math Theory would
teach you that all math functions are performed with
addition. I'l] not try to explain this further as it
would fi11 a volume larger than all TOM's published to
date. The point we need to understand and absorb is that
multiplication is performed by repetitive additions.
Likewise, division can be achieved by repetitive sub-
traction.
It is important that this makes sense to you. Think
about the multiplication problem of 12X6. It can be
solved by either of the following:
12
12
12 12
La 12
72 12
+12
72
Can you see how we can solve division problems by
repetitive subtraction? If we had the problem 72/12, how
many times can we subtract 12 from 72? Is there a re-
mainder? Simple, isn't it?
This brings us to the first instruction...Add. We
have already seen Add in operation, in Lesson 2, and
Probably have a good idea of its function. Trust me, it
Performs addition. Some of the later instructions will
Rot be so obvious. He would read the instruction, Add
A,E, as “add the value in the E register to the value in
the A register and store the result in the A register".
In lesson 3, we learned that the A register is
called the "Accumulator". The A register is the only
register that can “accumulate” the results of eight bit
most of
needed to
31
Beginning 280 Machine Code
Part Four
by Syd Wyncoop
arithmetic. If we had wanted the result in the E regi-
ster, we would need to assign it. Can you guess the
needed instruction? You get an "A" if you said Ld A,E.
Otherwise, go back to lesson 3.
We also have available the instruction, Sub. The A
register performs a special purpose here also. The A
register is the only register we can subtract from. As
with Add, the A register accumulates the result. You may
see this instruction written as Sub A,C or Sub C. They
mean the same thing. We will use Sub C as the A register
is always implied in eight bit arithmetic.
I have mentioned several times that the A register
will accumulate the results of eight bit arithmetic. We
need to leave the instructions for some more background.
We have already learned that a single register may
only contain a value in the range 0-255. There is a con-
dition known as an "overflow" which occurs when these
values are exceeded. The simplest way to describe over-
flow is by example, Let's assume we are adding 255+1. We
have not discussed number systems yet (that's a later
lesson) but let's show our example in binary as it will
demonstrate the point dramatically:
Decimal Binary
255 A1ditiit
tu [ Sees: te
256 1 00000000
Look closely at the binary example. Each digit
represents a bit of the A register (or any other eight
bit location). Assume for now that my answer is correct,
and you will note that we are now trying to place a nine
bit number into an eight bit hole! The answer returned
in this case would be 0, instead of the expected answer
of 256. Our example shows an eight bit overflow, but can
you see how we overflow a register pair (sixteen bits)?
Our friend, the CPU, has a special register, F,
which we learned stands for Flag. It is called this be-
cause its job is to keep track of various things for
the CPU. This is accomplished by the setting or re-
setting of a bit of the F register. Setting a bit makes
it al, and re-setting it makes it a 0. We will discuss
this in some detail at a later time.
The bits are referred to as flags due to the fact
that they indicate wether or not a certain condition
exists. The flag we are now interested in, is the Carry
flag. We will also discuss the F register later,
fore, we only need to consider the Carry flag now.
In the above example, we found we would receive an
answer of 0. The ninth digit is mot lost, as it is
Placed in the F register as the carry flag. In other
words, the Carry flag takes on the value (either 1 or 0)
of the overflow from out arithmetic operation. We wil
Soon wee why we would want to save the carry.
Back to the math instructions. We have available
the instruction ADC which is read add with carry. To see
the difference, another example:
Add A,E means Let AsA+E
ADC A,E means Let A=AtE+Carry (keeping in
mind that the carry will again
be set or reset by the result)
ADC will allow us to chain together the needed
additions to guarantee the correct result. Some of the
same results can be achieved with the register pair
instructions, however, there can still be overflows.
Study the following to see what I mean:
Ld HL, 0040 Ld H,00h
Ld BC, 7FFFh
Add HL, BC
Ld B,H
Ld CL
Ret
there-
Both of these routines will do the same job. Which
makes more sense? Uses less memory? Executes faster? The
point is that there are many ways to get the job done
and many considerations to why we should choose one over
another.
We also have SBC or subtract with carry. This one
is special because it is the only way to perform sixteen
bit subtraction. We cannot Sub HL,BC. We must SBC HL,BC
which implies we know the status of the carry flag. We
may not know what's on carry's mind, but we can clear
the carry flag prior to performing a SBC by doing an
addition, that we know will not generate a carry. One
that will work in all cases is Add A,0, The value of A
is unchanged and the carry flag is reset (0) or cleared
as there is no overflow. We will find other ways to
clear carry, soon.
We need to be aware that HL acts as the accumulator
for sixteen bit arithmetic operations. HL has much the
same favorite status with the CPU as does A. The reason
we need an eight and a sixteen bit accumulator is that
we cannot add or subtract registers from register pairs
and vice versa. In other words, we cannot Add HL,A.
The last instructions for this lesson are specia
cases of Add and Sub. They are Inc and Dec which are
short for increment and decrement. Each will Inc or Dec
by one. For example:
Inc HL means Let HL=HL+1
Dec HL means Let HL=HL-1
Armed with these new instructions, see if you can
rewrite the addition routine we had in lesson 2, to
avoid the overflow error it contains, Make sure the last
instruction is a Ret and use PRINT USR address to run it
and return the answer to BASIC. See if you can write a
similar routine to perform subtraction.
A final note on the charts I am providing. This is
the last time I will include the abbreviations comments.
Also, you can usually substitue IX or IY for HL and
(1X44) or (T¥+d) for (HL). Therefore, I will not include
them in the charts,
Until next time...happy computin'.
Parts One and Two of this series covered the VARS,
System Variables, and the Safe Area methods of passing
data from one program module to another in a chained
program,
The Above RANTOP method of passing data, in chained
programs, is very similar to the Safe Area method and is
the best of all of the methods, as data stored above
RANTOP is protected from LOAD, RUN, NEW, an expanding
Program, or the expansion of the display file. About the
only thing that can wipe out data properly stored above
RANTOP is a program crash, a power failure, a program
bug, or resetting RAMTOP.
TS 1000/1500 PROGRAM CHAINING
Part Three
by Earl V. Dunnington
The amount of bytes or addresses you can lower
RANTOP and stil] have the program RUN is determined by
the Upper and Lower Limits of the Safe Area of the pro-
gram. In a Chained Program, the module that requires the
most memory in order to RUN, determines the address to
which RAMTOP can be set for the entire program. A method
for finding the Upper and Lower Limits of the Safe Area
and the minimum setting for RAMTOP that will allow the
program to run, was presented in the series of articles:
cAdventures In The RAM Jungle And Other Mysteries" (see
Sept/Oct '85 thru Jan/Feb '86 issues of TDM).
When the computer is turned on, the address of RAM-
TOP is the first nonexistent byte at the top of the user
availble Random Access Memory (RAM). For the Jk 2X81,
this address will be 17408; for the 2k TS 1000 it will
be 18432; and for the 16k TS 1500 it will be 32768. When
@ 16k Ram pack (TS 1016) is attached and the computer
turned on, RAMTOP is at address 32768 for all three
coimputers. To check the address of RANTOP, ENTER:
PRINT PEEK 16388+254*PEEK 16369
This only returns the value stored in the system vari-
able RAMTOP. To check that RAMTOP is actually at this
address, let A= the address stored in the system vari-
able. Then ENTER:
PRINT PEEK (A-1)
The result should be 62
In the case of the TS 1500 with the 16k Ram Pack
attached, the bytes from address 32768 to 49151 are
above RAMTOP and can be used for storage of data in-
cluding machine code programs. Any part or all of the
additional memory can be incorporated into the BASIC
Programming area by raising RAMTOP. Of course RAMTOP can
also be lowered.
Should you have an odd amount of RAM, to find the
maximum address to set RAMTOP, add to 16 the k of the
RAM and multiply by 1024 (the number of bytes in one k).
For example, if you have four k RAM:
(16+4)#1024=20480
However, the maximum address that you could set RAMTOP
is 65535 not 65536 as the maximum value you can POKE
into an address is 255.
RAMTOP can be lowered to make room for the storage
of data by POKEing the address desired into the system
variable RAMTOP and then entering NEW. The system vari-
able RAMTOP consists of two bytes located at addresses
16388 and 16389, The formulas for POKEing the low byte
into the lower addresses and high byte into the higher
addresses are given on page 134 of the TS 1000 and page
160 of the TS 1500 User Manuals. For example, to set
RAMTOP to 18000, then n=16388 and v=18000. Substituting
in the formulas, type into the computer:
10 POKE 16388, 18000-256"INT (1
000/256)
20 POKE 1638841, INT (18000/256
)
30 NEW
Now RUN the program. To check
ENTER:
that RAMTOP was moved,
PRINT PEEK 17999
The result will be 62. As you can see, the NEW command
wipes out the program. It also destroys any variables,
strings and dimensions. This precludes the use of this
method of setting RAMTOP in a module designed to auto-
matically LOAD the next module of a chained. program. A
routine for setting RAMTOP without destroying the pr
gram or any variables or strings was presented on pages
9 and 10 of the July/August '85 issue.
Although RAMTOP cannot be set using NEW in a module
designed to LOAD the next module, it is used in some
types of programs where the operator does the inking.
NEW is also used where machine code is to be shifted
above RAMTOP to wipe out the program in order that a new
Program be typed into the computer. This can be accomp-
lished by POKEing the code into the Safe Area for the
Program, before the line containing NEW. For example,
clear the computer memory by turning it off and then
back on. Type in the program given above adding the
following line:
OOOO _____
SS
25 POKE 18001,255
RUN the program. Now ENTER the direct com-
mand:
PRINT PEEK 18001
AS you can see the 255 is still in address 18001, RAMTOP
is set below this at 18000, and the program has been de-
stroyed.
For the 1k RAM 2X81: Set RAMTOP to 17000 using v=
17000, PEEK 16999 for the 62, change Line 25 for address
17001, and PEEK 17001 for the 255.
Tf you intend to do serious programming, work with
chained programs or use word processors, then you should
have two accessories besides an interfaced printer. The
first is a tape recorder (or other storage device)
Capable of consistant SAVEs and LOADs. Two is even
better, one for LOADing programs or data connected Ear
to Ear with the computer, the other for SAVEing prograns
or data connected Mic to Mic. I use a Radio Shack CTR-5
only for LOADing as it has a wider allowable volume
control setting range on some commercially produced
software. My other tape recorder is a GE Computer Data
Recorder model no. 3-5158B,
The second accessory is an emergency power supply
particularly in Florida where we refer to the power
company as “Florida Flicker and Flash". Figure No.1 is a
circuit diagram for an automatic emergency power supply
that will maintain the program for power interuptions up
to 15 minutes. You must remember to throw the switch of
before disconnecting the regular computer power supply
or before plugging into the computer.
33
Pus
TIP
—0¢ 5
Rom
comPuTER
POWER
‘SUPPLY
+- SILVER BAN
THIS ENO
10
compurer
81,02,83,84-3 VOLT RECHARGEAGLE BATTERIES
SD1,S02-SILICON DIODES 1N48B1 RADIO SHACK 276-1101
'SW1~0POT SWITCH RADIO SHACK
FIGURE NO. 4
In addition to the parts listed on the diagram, you
will need the following items:
1 project box large enough to accomodate the
cuit plus the four batteries.
1 rubber grommet to protect the leads to the
puter.
4 nine volt battery connectors.
1 two conductor 1/8" modular phone jack, open
cuit type, panel mounting (Radio Shack 274-251).
1 two conductor 1/8" mini phone plug (Radio Shack
274-286).
The use of a 12 volt latern battery instead of re-
chargeable 9 volt batteries and a battery powered tape
recorder, would allow the SAVEing of the program or
data. However, leaving the switch on inadvertantly with-
out the computer power supply on could be costly. If you
use the 12 volt battery, also use 2.6 amp silicon diodes
(Radio Shack 276-1114). As diodes are easily damaged
with heat...heat sink them while solcerin:
A practical chained program illustrating the Above
RAMTOP method of passing data will be presented in Part
Four of this series of articles.
cir-
com=
cir-
——————— ————_____
EE ————————
MARKEL ENTERPRISES
Post Office Box 2392
Secaucus, New Jersy 07094-0992
(718) 627-1293
Serving the Sinclair community since 1982!
@ Computer w/software & free ADDRESS BOOK software..
QL Vision RGB color monitor (w/cable) while supply las’
QL Near Letter Quality printer (w/cable).
i Computer w/monitor -or- printer.
QL Computer w/monitor -AND- printer.
512K RAM expansion w/thruport.
Ql technical guide.
Microdrive Cartridges - book of 4..
RS232 Printer Cabl
Modapter - for use with all RS232C modems - w/software..
Ql Monitor...
QL Touch and Go Typing Tutor
Ql Gardener...
QL Decision Maker.
QL Project Planner.
QL Entrepeneul
QL Assembler...
Cartridge Doctor - restore lost files.
Icon Controlled Environment.
CHOice cartridge (multitasking/mailmerge/ramdisk) for I.C.E.
QSPELL spelling checker for Quill...
‘QDUMPS screen dumps to Epson compatible printers.
Concept 3D computer aided design. $39.95
Mail Merge.. $24.95
Ql Peintre graphics program.
Nucleon toolkit...
Master Module & Scenarios | & I
Master Module & Scenarios |, I! & I
Individual Scenarios...
PASCAL, FORTRAN AND OTHER LANGUAGES AVAILABLE...WRITE FOR DETAILS
FREE I,C.E. CARTRIDGE WITH EACH QL ORDERED BEFORE DECEMBER 25, 1986
——--STUDENT DISCOUNTS—
MORE ITEMS BEING ADDED DAILY AS WE EXPAND OUR QL SUPPORT.
IF IT'S NOT LISTED - WE CAN GET IT - PLEASE CALL OR WRITE.
ADD 3% FOR SHIPPING AND HANDLING.
NY AND NJ RESIDENTS ADD APPROPRIATE SALES TAX.
Our address says mail order / Our phone says NYC / Our name says support
Understanding And Upgrading
The TS1016 RAM Pack
by Tim Stoddard
This is the first of a two part article on how
dynamic rams operate, how the TS1016 works, and how to
upgrade the ram pack to use the newer 5 volt-only 64k
dynamic rams.
First let me put to rest all the fears that are
probably running through your minds right now! Dynamic
rams have had a bum rap for years. They are not only
EASY to use but they are also mich easier to wire up!
Have you wired, or can you imagine wiring up, an array
of 64k memory using static random access memory? Even if
you used the now inexpensive 6116 CMOS 2k byte-wide rams
You would need 32 of them, plus the supporting selection
logic on a board that will barely fit in an S100 system!
If you used the affordably latest in CMOS ram (8k byte-
wide), then the resulting 8 28-pin chips plus selection
logic would fit on a board about the same size as your
1S1000/2X81 computer!
Dynamic rams, or DRAMs for short, are constructed
of simply one transistor and one capacitor per data bit.
Static Rams, or SRAMS for short, are constructed of a
flip-flop consisting of 4 or more transistors per bit.
Right off you can see that the SRAMs consume much more
Power and much more die space (die is the actual silicon
chip that the DRAM is made of) than DRAMs. DRAMS are not
without fault, however, in that they require a small
amount of attention to timing, and refresh to use.
With SRAMS you simply supply an address. and wait
the required access time for the data to appear at the
output. DRAMS, on the other hand, require multiplexing
of the address bus. Why? Take a look at a typical DRAM
Such as the one in your TS1016 ram pack and count the
leads on the IC body. I count 16. Well, lets see...the
4116 rams used in the TS1016 ram pack need 3 supply
voltages and ground (+5, +12, ~5, GND)...that leaves us
12 leads for address and control; or for the 64k DRAM, 2
leads are used for power (+5, GND), so that would leave
14 pins for address and control. Now let's supply the 14
address lines needed for 16k, or for the 64k DRAM 16
address lines...oops, we just ran out of pins.
The manufacturers came up with a scheme for cram-
ming 14 lines into the 7 that are needed for the 16k
ORAM, or 16 lines into 8 needed for the 64k DRAM by
multiplexing them: First,: you supply the lower 7 or 8
address bits to.the address lines and strobe them into
the DRAM. The DRAM contains a Row address latch that
holds these 7 or 8 address bits, and in fact, the strobe
line used to strobe them in, is called RAS (Row Address
Strobe). Next, we switch to the upper 7 or 8 address
lines via a TTL multiplexer switch and then strobe in
the column address using a second strobe line on the
DRAM chip called CAS (Column Address Strobe). Lastly, we
wait the required access time and then read the data out
of the DRAM. The only other requirement we must observe
is the refresh timing needed by the DRAMs.
Since each bit in a DRAM consists of just one
transistor and a capacitor, it is easy to see that there
is no stable state like that in flip-flop type memory
found in SRAMS. The capacitor soon starts to lose its
charge via leakages of one type or another, and before
you know it you've lost the state that was stored in
that capacitor. In order not to lose the capacitor's
State we must periodically refresh each capacitor to
Preserve its current state. Refresh simply means that we
want to preserve whatever state the storage capacitor is
currently in, the two states being charged for a logic
high, or discharged for a logic low.
The manufacturers determined that if each capacitor
was refreshed within a specific amount of time, enough
of its charge would still be there to determine what
its current state should be. For most 16k DRAMS such as
those in the TS1016 ram pack, and the newer 64k DRAMs,
each location must be refreshed every 2 milliseconds.
Reading all 16,384 locations to refresh the DRAM,
would a considerable amount of time. Another way to re-
fresh the DRAM is needed to keep the refresh time down.
One way takes into account the fact that when a row is
addressed, that ENTIRE ROW is refreshed! So if we
address just 128 row locations, the entire 16k would
have been refreshed. I should also point out at this
time that the 64k drams are internally arranged so that
they only need 128 row refreshes to refresh the entire
DRAM. THey are internally set up as four 16k blocks.
Since the row addresses are supplied to each of the four
16k blocks at once, it follows that only 128 refresh
cycles will refresh the entire DRAM.
A method that takes advantage of an entire row
being refreshed while applying the row address is called
RAS only refresh. It is enabled by supplying the refresh
address to the address pins of the DRAM and then en-
abling the RAS line ONLY. THis will refresh the entire
row addressed by the address pins. Also, since we do not
supply the column address and the CAS signal, the DRAM
will not complete a true read operation, and therefore,
will not output any data, but will remain in a tri-state
condition.
There are a number of other refresh modes, es-
pecially in the newer 64k and 256k DRAM, and if there
is enough interest in this article, I'l] describe those
modes in a future article. For now, let's proceed to the
inter-workings of the TS1016 ram pack with this new
knowledge of DRAMs under our belts.
I could not procure a schematic of the ram pack, so
I dissected a ram pack that I own and drew a schematic
35
from that. During the following discussion,
the schematic in figure 1, and the timing
in figure 2.
The first thing you Z80 hackers will notice is that
there is a refresh counter in the ram pack. Anyone who
has worked with the 280 knows that it has its own re-
fresh counter on chip, so why use an external one? The
"R® register, as it is called in the 280, is used in the
display interupt routine to count the number of char-
acters per line, and since the "R" register is manipu-
lated alot in this routine, it would not be wise to use
this register to preserve your data.
ICs "A" and "B" are 74LS1S7s (quad 2 line to one
line multiplexers) and are used to switch in the refresh
address counter IC "E", a 74L$393 dual binary counter.
The counter is needed to "remember" what address we need
to refresh. The refresh request signal is supplied by
the 280 CPU in your TS/ZX computer and is called REFSH
please use
relationships
on the schematic. So when REFSH (active low) comes into
the ram pack it gets buffered and inverted by gate "F4"
and is then sent to pin 1 of both ICs and "B" which
will cause them to select the inputs suffixed with a "1"
(A1,B1,C1, and D1). THose inputs come from the outputs
of the 74LS 393 refresh address counter. Note also that
the same line used to select the refresh counter will
also advance the counter one count AT THE END OF THE
CURRENT REFRESH CYCLE, ‘The counter will now contain the
next address needed to refresh. ICs "Cc" and "D", also
multiplexers, are switched by gate "G4" which is enabled
by gate "Fi" via gate "F2". During a refresh cycle there
are no active RD or WR signals from the Z80, so the out-
put of gate "Fl" is low, the output of gate "F2" then is
high, and the output of IC "G4" is also high. The multi-
plexers "C" and "D" therefore, take input via the inputs
suffixed with a "1" (A1,B1,C1, and D1), which is from
the refresh counter via the multiplexers "A" and
The DRAM address lines are at this point "connected" to
the refresh counter IC "E" via the four multiplexers.
The last requirement to refresh the DRAM is to
supply the RAS signal. This is accomplished with the
MREQ signal supplied by the 280 CPU. The MREQ signal i
buffered by gate "G2" and supplied directly to the RAS
input of the DRAM. This low-going signal latches the re-
fresh address in the DRAM causing that entire row to
refresh. Note that since gate "G4" is disqualified by
the output from gate "F2", which we discussed earlier,
its output will never change during the refresh cycle.
This will keep the refresh address supplied to the DRAM
and also keep the CAS line to the DRAM inactive (high)
throughout the refresh cycle, thus preventing a true
read operation of the DRAM. The output of the DRAM,
therefore, during refresh is at its tri-state condition.
The MREQ signal now goes inactive (high) which removes
the RAS signal from the DRAM ending the refresh cycle.
Finally, the inverted REFSH signal coming out of gate
now goes low, switching the multiplexers "A" and
“BY back go the system address lines, and at the same
time the low-going signal advances the refresh counter
IC “E" via pin 1 to the next row address in preparation
for the next refresh cycle. That wasn't so bad was it?
Now for a RD/WR cycle.
First, keep in mind that because the REFSH signal
is inactive during a read or write cycle, the multi-
plexers "A" and “B" are supplying address lines AO
through A6 to the inputs suffixed with a "1" on multi-
plexers "C" and "D". Multiplexers "C" and "D" now select
either system address lines AQ through A6, or system
address lines A7 through A13.
The first signal to occur after the system has
supplied the proper address is the MREQ signal. This
signal, after passing through buffer "G2", is supplied
to the RAS pin of the DRAM. At this instant, when the
RAS signal has just gone active (low), the DRAM is
“looking" at system address lines AQ-A6, and this
address gets latched into the DRAM's internal RAS latch.
MREQ is also supplied to gate "G4" via a time delay net-
‘REFSH
OR ime ones ae
xa
(orm) es ie poet if
fag
toe om mime ——
es,
sce cam _mussme =
a he
FIGURE 2
work consisting of a 300 ohm resistor and a 47 PF cap.;
and befor the MREQ signal has had time to get through
the time delay circuit, the output of gate "G4" is at
its inactive (high) state. This keeps multiplexers "Cc"
'D" selecting address lines AO-A6 via multiplexers
and "B". About 50 to 100 nanoseconds later the MREQ
signal finally gets through the time delay circuit and
partially enables gate "G4". The other leg of gate "G4"
is enabled for a read or write operation (which we are
doing) and system address line Al4
System address line Al, when in its high state, is
used to select the ram pack by placing it in the lék to
32k system address range. Note that since the last
address line AL5 is not defined anywhere, a mirror image
of the ram pack will be found in the 48k to 64k area of
system ram, Anyway, gate "G4" is now active and its out
Put goes active (low). This signal now switches the
multiplexers “C" and "D" to the system address lines A7-
Al3, Note, too, that for multiplexer "C" the output ZC
goes from high to low via inputs CO and Cl. This will
supply a low going signal to a second time delay cir-
cuit. Why? We have just switched the address lines to
‘the DRAM and before latching the address in the DRAM, we
must now allow some time for the multiplexer output to
“settle” before enabling the CAS signal to the DRAM,
this time is given to us with the second time delay cir-
cuit. After 50 to 100 nanoseconds the signal gets thru
the time delay circuit and is supplied to the CAS pin on
the DRAM. This latches address lines A7-A13 into the CAS
Jatch in the DRAM. About 50 nanoseconds later, the DRAM
will supply its output data via pin 14 to the system
data buss during a read cycle, or for awrite, it wil
strobe in the data from the data buss on the falling
edge of the 280 supplied WR signal.
The only way the DRAM knows what type of cycle the
280 is in, is via pin 3 on the DRAM. When low, it is a
write cycle, and when high, a read cycle. This signa
is supplied by the 280 CPU and occurs during the MREQ
signal. After the 280 has read or written the data, it
will make the MREQ signal inactive (high), this will
then make RAS inactive (high), also causing gate "G4" to
switch multiplexers "C" and "D" back to inputs Al-D1
thus causing CAS to go inactive, tri-stating the DRAMs
data output and ending the read/write cycle.
The one transistor circuit at the bottom of the
schematic is a DC to DC converter that supplies the
needed +12 and -5 volt bias supplies for the 4116 DRAMs.
This circuit is a source of a lot of noise and will be
eradicated when we upgrade the ram pack.
I know that the above discussion is somewhat “dry”,
but if you can come to understand what is going on,
you'll be a long way into understanding what makes your
computer "tick"!
In the next issue, I'l] present the needed modi-
fications to upgrade the TS1016 to 64k, plus some of the
unusual restrictions imposed by the 1S1000/Zx81 archi-
tecture in designing 64k ram systems.
TEL... 36 Eh Gi a
ALSO AVAILABLE FOR THE T/S 2068
POWERFUL AND INEXPENSIVE BUSINESS SOFTWARE
FOR 2X81, T/S1000 and T/S1500 COMPUTERS
‘A word processor is to a computer user
what a typewriter is to a typist, except that the
former has more advantages than the latter.
‘2X-Text can operate in 16-64K RAM providing
trom 1300 to 6500 words per document, It
{features 6 different options: write, read, edit,
print, save and clear text. Text is writen on a
per-line basis with quick speed and with
horizontal back-space and delete capabilities
being available. You can also access the
editor directly from write mode and vice-versa.
Text can be proot-read on a per-line basis
allowing for enough time to determine it any
‘editing is needed. The text editor allows a line
of text to be deleted, inserted, replaced and
listed for editing. You may also change a word
‘or expression within a line, stop or start text
while it is Scrolling up the screen, begin
reading text from the first line of the file, re
enter write mode from the editor, return to the
window so that you
‘can read-edit two files simultaneously. The
[print option takes text displayed in 30-column
format on the screen and outputs to either the
ZX/TS printer, (With Memotech’s Centronics
Parallel interlace 80-column and lower/
higher - case output is possible) Files may
be saved on tape cassette with the use of
‘one single command, or by the same token they
‘can be erased from memory / storage so that
the full capacity of the program can be used
for other purposes such as composing letters,
Teports, articles, memos, standard forms,
instructions, ads. graphs, telephone
directory, lists of customers, members,
friends..etc. Also copies of files are always
less expensive and easier to run than using a
photocopier. Other advantages are savings in
time, paper, ink. correcting mistakes and
‘adding afterthoughts more efficiently than
doing them through either handwriting or
using a typewriter
$16.95
‘An electronic spreadsheet calculator is the
fundamental basictoolfor summarising, reporting
land analyzing in matrix form any accounting,
mathematical or scientitic manipulation of num-
ers. ZX-Calc operates in 32-64K RAM andattords
‘a maximum of 3960.characters /spreadsheet. The
‘entire matrixconsists of 1S columns (letters A-O)
‘and 30 rows (numbers 1-30) with 8 characters/
cell. Unlike other popular ESCs, ZX-Calcuses in
Calculations andwahincelisall14mathtunctions
(on the ZX-81 /TS1000.It offers a unique “SUM
function that totais one or more rows /columns
simultaneously. Parenthesis can be used within
‘equations. There is no fixed limit on how many
‘equations may be entered. Formulas may be
‘stored in all 420 coils of the spreadsheet. The
display atfords 15rows/colums. Loadingotdata
{into more than one celican occur acrass/down
‘one oF more row/column simultaneously. With
\ertical windowing you can arrange a set ot col-
Lumns in any order, or practice using fixed- variable:
‘alignment display formats. The menu otters 6
options: enter erase, move, calcul
‘and clear the spreadsheet. Enter/er
the entering, deletion or data alignment within a
Cell through the use of a mobile cursor. Withthe
‘move option you may move around the entire
Sreadsheet fo access any row, column or cell
The calculate option allows you to enter labels,
values or formulas into a cell or write ang enter
equations that will act uponthe dataalready within
the spreadsheet. You can also enter bar graphs
‘nto acellintnis option. Absolute/relativereplica-
tion, down/acrossacolumn /row,isalsoallowed
by this option. Also this option allows the auto-
‘matic calculation of the entire spreadsheet with
‘one single command. Pr yyoutooutputto
‘ether the 2X/TS printerthe entire spreadsheet by
column-sets and row-pages through use of the
COPY command. The entire spreadsheet maybe
Saved on cassette tape or you may clear all data
{rom itor erase the program from RAM entirely
‘The most salient advantage provided by an ESC
‘over specifically vertical applications softwares
that an ESC provides a reusable framework with
which you can compose any specific financial
‘model rather than just belimitedtooniy one stat
cally fixed format for storing, displaying and
manipulating numerical data,
$16.95
$3.00 SHIPPING AND HANDLING /PROGRAM
ZX-CALENDAR
EAPO IMENT MADE.)
sers7/00
Fa oo"
fauanasum 3/2 oun
WEE AR0° teuzERE, ET. Ho.
GHAR AYRE (PAB SSBSER
cancer
‘Time management is an important aspect of
‘any serious business and personal agenda
Planning how to spend our time leaves us better
prepared betore and while we are spending it
and we remain better organized after we finish
spending it. ZX-Calendar operates in 16-64K
RAM attording 25 appointments in 16K. 100 in
32K or 180 in 48K and 64K. Each
appointment record holds a maximum of 220
Characters. The main menu includes enter,
search/check/sort, change, save, clear and
print any and all appointments made on @
specific date or with any party. Output to either
the ZX/TS printer is permissible. This program
will permit you to remember to do something or
{0 be somewhere important by cataloging your
‘answers to six questions that you must account
for in order not to waste time when itis scarce:
when, with whom, at what time, for how long,
where and what are you going to discuss and
conclude when you get together with someone
else? The program lets you permanently
originate, record, cl
calculate, modity, summarize, obtain @ written
‘report and store your answers to the preceding
‘questions so that you will not forget what you
decide to do with your time. This program
‘entities your time according to when you are
{going to spend it and with whom you are going
to share it. Through these forms of labeling
‘appointments you are able to verity or modity
how your time is budgeted without wasting ink,
Paper or more time trying to remember what you
Said to yourselt or what someone else said to
you or where you placed certain written
messages that you now cant find. With this
program you will know where you can find
‘exactly what youneedto know about where you
‘want to and have tobe, or where youhave been,
before you get andafter yougot there. Thus, 2X-
‘Calendar wil lat you plan your time so that you wi
‘never have to worry about what is ahead or what
‘came betore, for you will always know, by using f,
to never be caught astray by any time-frame.
$16.95
A.F.R. SOFTWARE - 1605 Pennsylvania Avenue, No. 204 - Miami Beach, Florida 33139
DEALER INQUIRIES WELCOME
Lt © 1984
(305) 531-6464
37
FLORIDIANS ADD SALES TAX
WEYMIL CORPORATION
«makes a serious commitment to the Timex user in the development of high-quality, in-
novative, and user-friendly software, complete with layman-oriented documentation, and all
at affordable prices. We are proud to offer you:
* THRUST*
Finally, real graphics power for your TS
1000! THRUST, the last word in cursor-
controlled hi-res graphics for screen or
printer output, is a software package
composed of SincArtist HR and SincAr-
tist 1.3, Examine this sample for an idea
of the powerful versitility of THRUST.
SINCARTIST 1.3 - The original! Fan-
tastic hi-res graphics delivered to the 2040
printer. SincArtist 1.3 boasts excellent
user-group reviews and is simply the best
non-hardware system available. Note
these features:
— 192 x 256 high-resolution file displayed in a 48 x 64 screen window
— Circles, triangles, rectangles, quadrilaterals, rays, inversing, and more
— 40 redefinable patterns and a variety of draw and fill modes
— Cursor or joystick control
— No system modifications required
SINCARTIST HR - The last word in cursor-controlled high-resolution screen graphics. Copy
artwork to the 2040 printer and save to tape. SincArtist HR requires a TS 1000 with a
socketed 2K RAM, less than $10.00 in parts, and a few minutes with a soldering iron. Super
user-friendly documentation and instructions included. All modifications are fully
transparent to other peripherals. HUNTER BOARD OWNERS: All you need is the FREE
hardware upgrade that we provide!!!!!
THRUST includes SincArtist HR and Sinc-Artist 1.3 (these programs are not sold
separately). The Ultimate Hi-Res Tape is available exclusively from Weymil Corporation for
only $20.
* MINI XMOD *
MINI XMOD - Allows your Westridge or Byte-Back modem to up and download Timex pro-
grams to any XModem protocol BBS.
— Fully documented with easy-to-follow instructions for the layman
— 16K and 64K versions included
— Ideal for storage in Hunter Board
— Produced on high-quality casette for the ZX 81, TS 1000, and TS 1500
MINI XMOD is available from Weymil Corporation for only $20. Please specify Westridge
or Byte-Back version.
WEYMIL CORPORATION
BOX 5904
BELLINGHAM, WA 98227-5904
(Write for a free catalogue of other TS 2068 and TS 1000 products)
Hou Ht
FREE ADS FOR SUBSCRIBERS
ADVENTURERS! Join in the fastest
growing hint trading group in North
America. Send SASE with hints, and
problems, for prompt reply to:
Douglas Jeffery, Larch Rd., RR #1
Telkwa, B.C., Canada VOJ 2x0.
WANTED: Programs for TS-1000 to
trade. Send me your list and large
SASE. Also programs for above 16K
RAM. Anyone have a copy of Memotech
Memopak 64K Memory Instruction
Manual? Any information will be
appreciated. Richard Beier, One
Darwin Drive, N. Merick, NY 11566.
AERCO C/P $50; TS-1000 with power
supply and man. $10; 2068 Software
$35. D. Gustafson, P.O. Box 3700,
Pens. FL 32516 (OS-64, ML Tutor,
VU-3D, MSCRIPT/disc).
SOFTWARE for TS-2068, TS-1000, and
AERCO FD-68. New and used hardware/
software. SASE for free catalog.
Chia-Chi Chao, 73 Sullivan Dr.,
Moraga, CA 94556. ee
WOULD LIKE TO CONTACT another Zebra
Graphics Tablet User. Need more info
on Interface and Software--Alvin
Lam, 1258 Fascination Circle,
Richmond, CA 94803.
COMING SOON. MONEY MACHINE II.
Now starring VANNA WHITE. Send
SASE for FREE LLISTing of Vanna
White moving graphic. Herb Bowers,
2588 Woodshire Cr., Chesapeake, VA
23323.
SINCLAIR QL COMPUTER and extra
software, $275 used. Delta 3-in-1
interface with 128K, a disk in-
terface and parallel printer port,
$225. Two 3" Amdek disk drives,
Power supply and cable, $125. ALL
for §550 and shipping. 904/378-
9000 evenings.
FOR SALE: extra copy of 352-page
QL ADVANCED USER GUIDE by Adrian
Dickens--THE authoritative guide
to the QL & QDOS. Asking $20 ppd
(compare at $29.95) send to Paul
Bingham, POB 2034, Mesa, AZ 85204.
T/S 2068 UTILITIES: Auto-line
Number, Renumber (GOTOs, GOSUBs,
ect.), Read Tape Header, Display
Vars., Pind String in Prog. $10.
Michael Cover, 1405 Chevington
Cir., Zanesville, OH 43701.
FOR SALE: Over 30 game programs
for T/S 2068 or Spectrum at $8.00
(U.S.). Send for a list of soft-
ware available or phone (403) 236-
4465. Garvin Bertrand, #311 135
Lynnview Rd. S.E., Calgary, Alberta
Canada T2c 266. —
6 TS BOOKS FOR SALE: Working 2068,
Creative Games For 2068, Games For
2068, TS 2068 Explored, The 2068,
200 Computer Programs In BASIC For
1000 + 2068. C. Lytle, 1064
Worth. Woods, Worth., OH 43085.
T/S 1000, 2050 MODEM, Millenia K
Disk I/F, Zebra Lightpen, lots of
S/W: 615-823-2078 p.m. only.
D. Taylor, Rt 4 Box 303-A,
Livingston, TN 38570 for titles,
prices, more info.
FOR SALE: 2068 w/Tech Manual,
Alphacom 32 printer, 2 programs &
3 texts. 2X81, Winkee & 6 texts.
100 hrs on each. S.L. Jacobs,
Rt 3 Box 2750, Dexter, ME 04930,
207-924-6414
Do you have some equipment or a program that you would like to sell? Looking for something hard to find? Place an
ad in THE CLASSIFIEDS! Subscribers can place one free personal ad in each issue. Ad size is 32 Col. wide (like 2040
paper) and maximum of six lines. For additional lines - $3 each. NON-SUBSCRIBERS and DEALERS: $4 a line.
DEADLINE FOR ALL CLASSIFIED ADS: Two weeks before publication date. Mail your ad to:
TIME DESIGNS MAGAZINE, The Classifieds Dept., 29722 Hult Rd., Colton, Oregon 97017.
WANTED TO BUY: Ramex Millennia K
Disk Drive System w/MPI i-meg
drive. Also same drive #2 for above.
Send price quote to- B. Hardware
c/o Jim, 132 1st Ave. S,, Perham,
MN 56573. 218-346-4760.
WANTED: Screen dump program on
cassette to drive Tandy CGP-220
Color Ink Jet Printer for TS-2068
w/ Tasman B I/F and/or on mcdrive
for QL. Michael Kudelka, 4859
Sacramento, St Louis, MO 63115.
FOR 1/S 2068: 3-Reel 9-Way Win
Giant Slot Machine on cassette.
All in BASIC & listable, about
32K with Stick/Inkeys provision.
Send $6.00 to D. JEWETT, 63 Charro
Dr., Santa Rosa, CA 95401. Includes
shipping.
WOULD LIKE TO CONTACT MIDI I/F
OWNERS who use 2068 or Spectrum
and any keyboard. Professional
musicians or amateur hobbyists.
May start Sinclair MIDI users
group/newsletter. Write to: Tim
Woods c/o TIME DESIGNS, 29722
Hult Rd., Colton, OR 97017
QL MULTI-MICRO SPECIAL: $288
WITH FREE EXTRA SOFTWARE!
Get an Extra FREEWARE cartridge
Filled with additional Super
Software with ALL QL purchases
right NOW! Get Backup Utilities,
Graphics Demos, Clocks, Maps,
Sound Generators, a Postermaker!
Too Much to mention! All Free
with each QL.ordered. Add $7.00
for S&H please. ALSO: SPECIAL
PROGRAMMERS, OS/LANGUAGES,
EDUCATIONAL & BUSINESS SYSTEM
PACKAGES! MODEMS. CALL us up on
our Q Line!
But what IF you
QL?? THEN Just
cartridge with
you'll get all
Programs Too!
Already HAVE your
send in a blank
$2.00 for S&H and
of the above FREE
We offer users
QUANTUM SUPPORT for the QL! The
Computer That By Far Outclasses
the Status Quo PCXTAT & Cloneys!
QUANTUM COMPUTING, Box 1280,
Dover, N.J. ©7801 CALL: (201)
328-8846 The QLINE - ANYTIME 24
HOURS!
ORDER OUR CATALOG!
and get this
FREE Software §
on cassette.
FOR THE TS2068
e softwere engveames eave
1. 3D Moving Display
2. 3D Pyramid
3. DIAMOND MIKE game demo
4. 3D Tic-Tac-Toe demo
5. Plus commentary by programmer
John Coffey on 32-bit computers.
Our unique product catalog and free
software all on a quality tape only...
$1.00
Order Yours Today!
JRC Software
P.O. Box 448
Scottsburg, IN 47170
"Greetings human, I am
HAE.N-R.Y., winner of the
Golden Droid Award at the
First International Personal
Robot Congress and Expo in
1984. You may be surprised
to hear that my brain is
really a Timex/Sinclair
1000 computer. In fact, you
can learn more about me and
other projects in a new
book by my master, Bruce
C. Taylor. ‘The book is
called: BUILD A MICROCOMPUTER-
‘CONTROLLED ROBOT. It has
over 200 pages, over 80
illustrations, and cones
with a great looking custom
S-ring binder. There is even
a bonus section for in—
structors who would like to
teach about robotics. You
can get your very ovn copy
for only $17.00 (postage
paid) from the nice folks
at TIME DESIGNS MAGAZINE
COMPANY. Get a head start
on personal robotics...the
newest high-tech craze. Get
‘my book, and read all about
me...how could you go wrong
hunan?”
Quality Publications For Sinclair Computers
TIME DESIGNS MAGAZINE COMPANY
29722 Hult Rd. . Colton, Oregon 97017
40
TS2068
Trackball
Only $19.95 “Ss
Originally sold for $69.95
Specify Cat# TBTMX02
Plugs into TS2068 Joystick Port and
works with all joystick software.
Bonus Feature: Also works on Commodore 64,
VIC-20, ATARI 800, and more. Contact factory
for more complete list.
You can benefit from our recent purchase of brand new WICO
Trackball Controllers at closeout prices. We've taken the model
WICO originally made for the Texas Instrument 99/4A and made a
very simple modification so it now is fully compatible with the
Timex TS2068's joystick port.
WICO is the largest designer and manufacturer of control devices
for commercial arcade video games. If you've ever played an arcade
video game, chances are you've used a WICO joystick or trackball.
You've experienced the superior control. The pinpoint firing
accuracy. The exceptional durability.
Features: Phoenolic ball offers $60-degree movement. Two optical
encoders provide spli Quick-action fire button
for smooth, two handed arcade response and feel. Long 5’ computer
connection. Heavy duty plastic case for long hard use
‘The WICO warranty has been voided by our modification. But we
sive you our 15-day money back guarantee and a one-year limited
warranty from Zebra Systems.
second movement,
Timex Games $2 Each
With your order for a T$2068 trackball you can purchase any of the
following Timex TS2068 Trackball and Joystick compatible games at
the special low price of $2.00 each for cassettes and $3.00 for
cartridges.
CAT# TITLE CAT# TITLE
Cassettes at $2.00 each
64001 Androids
64002 Penetrator
64004 Casino I
64005 Crossfire
64006 Circuit Board Scramble
64007 Dragmaster
64009 Guardian
64012 Fun Golf
64014 Hungry Horace
64015 Horace Goes Skiing
64019 Horace and the Spiders
64021 Blind Alley
64023 Crazybugs
Cartridges at 3.00 each
74001 Androids
74005 Crazybugs
$5 Off Tech-Draw Jr.
You can save $5.00 on the purchase of Tech-Draw Jr. if you
purchase it at the same time as a TS2068 trackball. Instead of the
regular price of 19.95 you can get it for 14.95. See our catalog for a
complete description of Tech-Draw Jr. and a list of printers that it
supports. Order Tech-draw Jr. Catalog# C256.
TS1000 TRACKBALL
Only $39.95
Originally sold for $109.95
Specify Cat# TBTMX01
Plugs into the back of
TS1000,1500,2068, or ZX81.
We've taken WICO's Apple II trackball and put its controller
card on an interface adapter for the Timex bus. Now you can get all
the benefits of the Apple Trackball with its intelligent controller
card, on your Timex computer.
The Apple trackball controller has sixteen integrated circuits on
it that read the optical electronic encoder wheels from the trackball
and completely keep track of the trackball movement with separate
x and y direction up/down counters. This enables your Timex
computer to get the position of the trackball by just reading two
input ports. This is a tremendous advantage on the TS1000, since
the computer can be left in "SLOW" mode for smooth graphics,
while the trackball interface card does all the work
The Apple II trackballs alone originally sold for over one hundred
dollars. Now you can take advantage of Zebra's recent purchase of a
large number of them at closeout prices. You get the Apple II
trackball with Apple interface card, Zebra's Timex- to-Apple bus
adapter, and complete instruction manual with sample routines for
all the Timex computers. And all for just $39.95.
Ordering Instructions: Include $3.00 S&H for UPS. P.O
Boxes and other orders requiring U.S. Mail must add $4.00 extra
shipping per trackball. VISA/MC Accepted. NY Residents add sales
tax. Order now! Quantites are limited to stock on hand
Zebra Systems, Inc.
78-06 Jamaica Ave.
Woodhaven, NY 11421
(718) 296-2385
HOURS: M-F 9AM-5PM
TRACKBALLS FOR OTHER COMPUTERS
We have bargain priced WICO trackballs adapted to just about
every popular computer on the market. Send a SASE or call for a
complete list.
ee ea ee eee
WEYMIL presents...
A small collection of truly innovative products for Sinclair computers
THRUST TS1000
True hi-res graphics for the TS 1000. THRUST is two
great programs on one tape. Sinc-Artist 1.3 is the most
ser friendly software ever developed for printer
graphics. Completely cursor and menu driven, For
Hunter Board users, there's Sinc-Artist HR which pro-
duces fantastic screen graphics. THRUST is both the
most sophisticated and easiest to use hi-res graphics
software ever developed for the TS 1000. If you are
ready for no-nonsense, hassle free graphics, then
‘THRUST is a “must have.”
‘THRUST for the TS 1000 only $20.00
ARTWORKX V1.1 TS 2068
England's finest graphics package! ARTWORX V1.1
establishes a new standard for color graphics with
features never before available on small systems. Auto
speed control, pull down menus, unique cut and past
windows, ZOOM, elastic shapes, multiple fonts,
CENTRONICS I/F capability for full-size print-outs,
and more, All this plus an absolutely uncluttered
screen for full creativity. Easy to use. The joystick
controls EVERYHTING except text entry. The highly
supportive well-written documentation is almost un-
nessesary.
ARTWORX V1.1 for the TS2068 only $19.95
PIXEL SKETCH AND GRAPHICS
EDITOR V2.0 TS 2068
This program by Stan Lemke still remains the finest
graphics program produced in the United States and
‘one of the best in the world for the TS 2068. It has had
excellent user group reviews and is a snap to use, Well
written, step-by-step documentation guides you ef-
fortlessly from loading to producing you own
“masterpiece.” Great pixel and text placement contol.
PIXEL SKETCH AND GRAPHICS EDITOR V2.0
only $19.95
KRUNCHER TS 2068 / TS 1000
From the Pacific Northwest comes one of the most ex-
citing utilites ever written. KRUNCHER takes any
BASIC program for the TS 2068 or TS 1000 and in-
stantly reduces it to the tightest BASIC possible
thereby conserving pa! eek Imagine all of
those little savin} over the
Yeats in one program whigh performs automaticaly
and takes up less than 190 bytes! Simply load KRUN-
CHER, locate it where you want it, load or write your
BASIC progmn, invoke KRUNCHER, blink your eye
and it's done. Memory savings average 20-40%. Great
earning aid for programmers of all levels.
KRUNCHER for TS1000 or TS2068 only $10.00
(Please specify TS1000 or TS2068)
TIME MACHINE TS 2068
‘The first SERIOUS COMPILER for the TS2068. Now
you can convert BASIC programs to super fast
MACHINE CODE without a lot of hassle. Converts
both TS 2068 and SPECTRUM Programs. It func-
tions as both an integer and floating point compiler
simultaneously without the restrictions of either. Com-
piled code can be placed anywhere in RAM. Handles
up to 27K of BASIC. Programs can be either written
of loaded from tape, You've wainted a long time for
this one and here it ist
‘TIME MACHINE for the TS2068 only $19.95
RIGTER JOYSTICK INTERFACE TS 1000
‘This is a software programmable Atari-type joystick
interface. it can handle up to 16 different directions or
commands easily. It has it's own self-contained
‘memory s0 that it's software occupies no system ram,
The software allows you to configure your joystick to
ANY TS1000 game or graphic software (THRUST,
for example) and it's ready to go. Rear expansion bus
allows other peripherals and the interface is completely
‘transparent,
RIGTER JOYSTICK INTERFACE for TS 1000
only $39.95
MINI XMOD TS 1000
Use your TS1000 and Westridge modem to
up/download TS1000 software to any X€MODEM
and see them run, Supports Memotech Centronics I/F
and others for print-outs to full size printers. Standard
RAM and Hunter Board versions included on same
tape.
MINI XMOD for the TS 1000 only $20.00
LOADER V TS 2068
This program turns MTERM into a REAL com-
‘munications program. Here’s what you get. Auto-
repeat dialing, extra 20 number dialing directory, full
TASWORD il and MSCRIPT text file handling
capability, disk drive and Wafer drive compatible,
multiple loading of Mterm's buffer while on line, and
full XMODEM capability. This program is the COM-
PLETE LOADER SERIES,
LOADER V for TS 2068 only $10.00
CLONE TS 2068
‘A sophisticated program which allows the user to
make back-up copies of ANY TS2068 or SPECTRUM
software for their own use. Requires no fancy filters or
extra tape recorders. Easy to follow instructions make
it simple to protect your valuable originals,
CLONE for the TS2068 only $10.00
SPECIAL OFFER!!!
Save $5.00 when you order the combination of THRUST, RIGTER JOYSTICK INTERFACE, and KRUNCHER 1000
you pay only $64.95
SHIPPING INSTRUCTIONS Please enclose $2.00 shipping and handling with your order.
WEYMIL CORPORATION
BOX 5904
BELLINGHAM, WA 98227—5904