In and Out of SYNC

Publication

Publication Details

Date

Pages

See all articles from SYNC v3 n6

The Video Technology VZ200

David H. Ahl

The Video Technology VZ200 is a compact microcomputer with a great deal of capability and many unexpected features at a very attractive price.

The VZ200 is based on the 6502 microprocessor (used in the Apple, Commodore, and Atari computers). It comes with a 12K ROM and a sparse 4K RAM. The ROM includes the monitor and an excellent implementation of Microsoft Basic. The RAM can be expanded with either a 16K or 64K module.

The computer is 1 1.4″ x 6.3″ x 2″. Twothirds of the top is taken up by the keyboard. The 45 keys are “Chiclet” style rubber with a very short throw. Touch typing is possible only in a rather limited way. Although the key spacing is the same as on a regular typewriter, the feel is different. Much more disasterous for touch typing is the use of a single shift key and a space key instead of a space bar. Several keys do not have the expected characters; e.g., the question mark is on the L key.

On the brighter side, each key provides several functions in addition to typing a character. All the Basic commands, keywords, and functions can be produced by holding the control key (or control and RETURN) while the key is pressed. Each key produces two Basic keywords and one or two regular characters. This is most welcome since on the computers which use a single keystroke the number of Basic keywords is limited to the number of keys.

When a key is pressed, a short “beep” indicates one keystroke. If the key is held down, it automatically repeats with a beep indicating each key entry.

The computer has an on/off light on top and an on/off switch on the side.

The Basic Language

The Basic includes 9 commands, 27 statements, 1 1 arithmetic functions, 9 string functions, 7 graphics and sound functions, and the expected arithmetic, relational, and Boolean operators.

Among the statements that we do not always see in a computer in this price range are: INP (reads the contents of input ports); OUT (sends values to output ports); USR (calls an assembly language subroutine); and COPY (copies the content of the screen to a printer).

We were also pleased to find both PRINT USING and PRINT @ implemented. The latter is useful for printing at different screen locations without having to use blank print lines or tabs. However, a tab function is also available.

On-Screen Editing

Full on-screen editing makes it a pleasure to program on the VZ200. The line to be on the line printer. However, if no printer is attached, the computer hangs. This is particularly bad because the rubberized keys tend to bounce a bit, and it is easy to type LLIST instead of just plain LIST. If you have a long program in the computer and have to turn it off because it hangs up, as we did four or five times, you are forgiven if you become a bit surly toward the machine. The surest cure is to use Control/4 to list a program. After a while we learned to do this.

Other things that would hang the machine are in the same family, i.e., trying to use a peripheral device that is not attached. In some cases the VZ200 gave an error message, but in others it went into never-never land.

We also had a problem loading the programs from the demo tape. We tried three recorders, including a high quality digital unit, but all the VZ200 would say was “FOUND T: Program Name.” Since we saw the programs load at CES, we assume we got a faulty demo tape.

Peripherals

The interface to a standard cassette recorder operates at a Baud rate of 600 bps. Although this is somewhat slower than other new computers which have rates up to 2400 bps, nevertheless it is twice as fast as machines of just a few years ago. A program that fills the entire 4K of memory loads in about 54 seconds; a 16K program loads in about four minutes. Bear in mind, however, that most 16K programs do not use 16K of code because much of the RAM is taken by dimensioned arrays and the like.

The manufacturer specifications note that a peripheral expansion bus is builtin; however, we are not quite sure what this means. It appears that expansion modules, presumably, to be connected to printers, modems, or other external devices, can be plugged into the back of the computer.

The V-Tech printer is a Seikosha unit which we have previously found to be satisfactory and cost effective. It requires an interface module which plugs into the interface bus. Since the Seikosha printer uses a standard Centronics parallel signal, presumably other printers with similar signal requirements could be used, although they will probably not reproduce the screen graphics correctly.

Documentation

Included with the VZ200 are a 149page Basic Reference Manual, a 24-page booklet of 21 Basic Application Programs, and an eight-page User Manual describing how to set up the system.

While some of the documentation obviously shows its Chinese (Hong Kong) heritage, the majority is well written, if not awfully well edited. The Basic manual provides a good introduction to the rudiments of the language although some of the sample programs leave something to be desired (the one to illustrate arrays is particularly bad). POKE and PEEK are explained in only the most cursory way, and we have no idea what the “New Characters Code” chart on p. 104 is for. Also, sadly lacking is an index which is very useful in a reference manual.

On the other hand, the manual is as good as most and better than many. It is just a shame that documentation is the weak spot of so many otherwise excellent computers.

on the line printer. However, if no printer is attached, the computer hangs. This is particularly bad because the rubberized keys tend to bounce a bit, and it is easy to type LLIST instead of just plain LIST. If you have a long program in the computer and have to turn it off because it hangs up, as we did four or five times, you are forgiven if you become a bit surly toward the machine. The surest cure is to use Control/4 to list a program. After a while we learned to do this.

Other things that would hang the machine are in the same family, i.e., trying to use a peripheral device that is not attached. In some cases the VZ200 gave an error message, but in others it went into never-never land.

We also had a problem loading the programs from the demo tape. We tried three recorders, including a high quality digital unit, but all the VZ200 would say was “FOUND T: Program Name.” Since we saw the programs load at CES, we assume we got a faulty demo tape.

Peripherals

The interface to a standard cassette recorder operates at a Baud rate of 600 bps. Although this is somewhat slower than other new computers which have rates up to 2400 bps, nevertheless it is twice as fast as machines of just a few years ago. A program that fills the entire 4K of memory loads in about 54 seconds; a 16K program loads in about four minutes. Bear in mind, however, that most 16K programs do not use 16K of code because much of the RAM is taken by dimensioned arrays and the like.

The manufacturer specifications note that a peripheral expansion bus is builtin; however, we are not quite sure what this means. It appears that expansion modules, presumably, to be connected to printers, modems, or other external devices, can be plugged into the back of the computer.

The V-Tech printer is a Seikosha unit which we have previously found to be satisfactory and cost effective. It requires an interface module which plugs into the interface bus. Since the Seikosha printer uses a standard Centronics parallel signal, presumably other printers with similar signal requirements could be used, although they will probably not reproduce the screen graphics correctly.

Documentation

Included with the VZ200 are a 149page Basic Reference Manual, a 24-page booklet of 21 Basic Application Programs, and an eight-page User Manual describing how to set up the system.

While some of the documentation obviously shows its Chinese (Hong Kong) heritage, the majority is well written, if not awfully well edited. The Basic manual

provides a good introduction to the rudiments of the language although some of the sample programs leave something to be desired (the one to illustrate arrays is particularly bad). POKE and PEEK are explained in only the most cursory way, and we have no idea what the “New Characters Code” chart on p. 104 is for. Also, sadly lacking is an index which is very useful in a reference manual.

On the other hand, the manual is as good as most and better than many. It is just a shame that documentation is the weak spot of so many otherwise excellent computers.

Summary

All in all, the Video Technology folks in Hong Kong have done an excellent job producing a versatile small computer. We were impressed with the excellent implementation of Microsoft Basic, full on-screen editing, repeat keys, and easy-to-use graphics features. The idiosyncrasies were a bit annoying, but owners will get used to them and probably not notice them after a week or two of use. Bottom line: the VZ200 is a great value for the suggested price of under $100.

Video Technology (U.S.), Inc., 2633 Greenleaf , Elk Grove Village, IL 60007.

Plotting a Projectile

David Grosjean

In this issue we will compare programming the VZ200, the color and sound computer by Video Techonology, and the TS1000. The project we will undertake is the plotting of a projectile.

Starting with a Clear Screen

Let’s start with a simple clear screen and plot statement.

If you look at the VZ200 program, you will notice that the computer has to be put into a special graphics mode with line 40. This means that you cannot have the medium resolution graphics and text on the screen at the same time. This will become a problem when we try to turn this into a game.

The Projectile Equations

The equations for the horizontal and vertical position of a projectile are:

X=V*COS(A)*T 
Y=V*SIN(A)*T-1/2*G*(T*T)

V is the velocity; T is the time; G is the effect of gravity. These equations can be worked into the program like this.

As you will notice, the range on the VZ200 increased due to the higher resolution of the graphics, but we did not change the velocity of the projectile. Instead, we changed the number which we divide X and Y by to fit the projectile on the different screen size.

In these programs, D is a factor that converts degrees to radians which are what the computer wants. C and CI are constants for each firing angle. When you RUN this program on the VZ200, you will notice that the plot is upside down. This is because the vertical distances are measured from top to bottom instead of bottom to top as on the TS1000. Change line 190 in the VZ200 program to

190 Y=61-Y/250

Setting the Gun Angle

Now we can modify the programs to accept a gun angle from 1 to 90 degrees.

Making a Game

Now that we have a working, however simple, projectile program, let’s try to make a game out of it. The following games are our projectile programs tightened up a bit and with the provisions for a target.

Setting up the Target

On the VZ200 the range is 127,000 yards, and on the TS1000 32,000 yards (1000 yards for every horizontal position on the screen). This will throw the equation off a little since the gun cannot shoot the projectile 127,000 yards. (If this bothers you, think of the yards on the VZ200 as 11 -inch feet.)

Although there are 64 pixel positions on the TS1000, the target is a T which takes up two pixels. You can hit the left or the right of the T so the number of effective horizontal positions is reduced to half. Notice that, since the VZ200 cannot have text and graphics on the screen at once, line 100 forms a special target, while on the TS1000, a simple PRINT AT command in line 60 does the same thing.

Detecting a Hit

We now have a target, but it is of no use unless the computer can detect its destruction. The following lines detect a hit. Notice how the techniques of detecting a hit target differ. The VZ200 must compare each position of the target, which is four positions wide, with the last position of the projectile; the TS1000 does the same thing but uses the PRINT AT position used by the target to compare to the last position of the projectile. This is, of course, simpler. Line 300 in the VZ200 version is a special “explosion” accompanied with some sounds. You can experiment at this point to find a better explosion.

Making the Next Shot

Now we can add the response the computer will make to a missed target. The following lines tell how far away your shot was from the target and lets you try again. Line 210 in the VZ200 version is a delay loop so you have time to see the last position of the projectile.

Providing Your Shots

The computer can now detect hits and misses. This is where the game part comes in. The following lines provide you with 5 individual targets with a maximum of 5 attempts to hit each target. If you fail to hit a target in 5 shots, you lose. S is the number of shots you have taken per target; S1 is your total number of shots: and 7 is the total number of targets.

Evaluation and Restart

Finally, we need an evaluation and a mechanism to restart the game. The following lines do this.

Improving on the Game

Of course, these artillery-type games are very simple. They provide a basic game which you can elaborate on or experiment with to develop different possibilities. You might want to improve on the graphics or sound on the VZ200 or perhaps make a really BIG explosion. Although the TS1000 has no color or sound, the program can still be greatly improved. You could add hi-res graphics through either a hardware add-on or a software program. You might want to add a sound unit which will give the sound effects or add a routine to provide some sound (e.g., AUDISY).

Products

 

Downloadable Media

 
Scroll to Top