Commodore Free Magazine, Issue 88 - Part 7
From
Stephen Walsh@39:901/280 to
All on Wed Jul 1 16:56:32 2015
plement the action. Buts as this is a first attempt it hats off that
the game is so playable, you can really see the creator has put the work in
and I hope this is going to mean we have more SEUCK games from this
designer, Maybe he could team up with Richard Bayliss and Alf the SEUCK
masters to help and guide his creations.
SCORES
Graphics: 6/10
some nice animations
Sounds: 2/10
Gameplay: 6/10
Overall: 6/10
Very competent effort for a first
time SEUCK game, please create more!
*************************************
PROGRAMMING IN BASIC
A Root Canal with No Anaesthetic
By Lenard R. Roach
*************************************
"How in poodoo did this happen?"
It was about 1:30 in the morning on a cold Tuesday in February. I sat in
my leather like office chair with the broken wheel, staring at the screen
of my Commodore computer wondering what this mess of text was on the
monitor. This is not what I wrote in the command lines to tell the
Commodore 128 to do. The question then became: What did I tell the
Commodore to do?
I know that part of the problem was fatigue. I had been up since six in
the morning to get ready for work, then worked a fifteen hour shift on the
job before I got to come home and relax, but I knew that this project on
the Commodore has been waiting on me since before Christmas and needed to
be started, so after resting and unwinding with some cold sandwiches from
the refrigerator and a video short or two on YouTube, I left the living
room to sit at the Commodore in the Roach Centre's dedicated computer room.
I sat at the Commodore desk, which is located on the south wall of the
room; my son's Mac Mini and Xbox One were on the north wall. He was
already in the room using the Centre's wireless Internet to connect and
play with some online friends, so as to not to disturb his game play, I
grabbed my iPhone 4 and headphones that were nearby and started playing
some of my Electric Light Orchestra over the headphones while I started the task of programming what I needed into the Commodore.
The problem in question was a subroutine that I was adding to an already existing program that I have tried to sell at the Las Vegas Commodore
computer convention a couple of years ago. I only made a couple of sales
on the program, but decided that for this year's convention I would make
the program more user friendly by adding more subroutines that granted more access to different needs that, I thought, the user would need. One of
those subroutines was a directory reader written by the late Jim
Butterfield that he gave out on a disk. It came in a collection of disks
that, I believe, came directly from Commodore itself back in the day. I
know that the program was copyrighted so I gave credit to Mr. Butterfield
in the REM statements included in the program text. Mr. Butterfield's directory reading program needed some slight modifications to allow it to
work with the needs of my program's main function, but before I did that I searched all the local Commodore clubs, boards, and websites looking for a better directory reading program that worked as a subroutine to a bigger conglomeration of the work. Out of the dozen or so directory readers I
found around, only Mr. Butterfield's directory reader would cooperate best with what I was trying to accomplish in BASIC.
What I saw on my screen that night made no sense. Instead of printing
the directory's contents on the screen in a book fashion (left to right),
it printed the information in a column (up to down), with each letter of
the title of each file in a straight line. I knew I missed something in
the translation of the subroutine from the master disk to the program I
wanted to put it in. I know that some advanced Commodore programmers know
how to embed a subroutine into a program without having to enter it in a
line at a time; I did not, so I know that the problem existed in what I put where in the subroutine.
The first thing I did was print off a copy of the working subroutine
using my Star NX-1000C printer. I did this by loading the subroutine into
the Commodore then, on a blank line on the screen I typed the following
string:
OPEN3,4:CMD3:LIST:PRINT#3:CLOSE3
This gave to me a copy of the program in printed form. At first glance
of the subroutine and what I had of the same subroutine on my screen, everything was correct. Just to make sure that my Commodore was freaking
out I rebooted the machine and loaded a copy of "Tea 4 2" which uses the
same directory reader by Mr. Butterfield. I accessed the directory in
"Tea 4 2" just fine and the display on the monitor was perfect. That
proved it; the Commodore machine was fine and there was no corruption of
the directory reader, therefore, the corruption must be in my translation
of the subroutine into the new program.
Jim Butterfield was an expert programmer. He knew that there should be
no waste of space when it came to coding on the Commodore. Even though his directory reading subroutine is several lines in length, every letter, punctuation, and algebraic expression had to mean something. I started the erasing and copying the subroutine several times just to be sure I wasn't
doing something wrong and each time I got the same up and down display of
text on the screen. I knew I was missing something, but I didn't know
what. It had to be something small; so insignificant that I am walking it
over each and every time I copied the subroutine into the Commodore line by line. I even printed out the entire program where the directory reader was going just to see if there was any way the program itself was looping into
the subroutine and causing an error. Something else I found frustrating;
the computer didn't give me an ERROR IN LINE...so I could go right to the offending line of code and fix the problem. According to the Commodore,
the program was right and the machine was able to read it without a hiccup.
2 am...3am...4 am; the time kept quickly getting away from me. In two
hours I had to get up and start work, but this frustrating little
difficulty in the program was really getting on my nerves to a point that I
was taking this programming error personally. I knew I would be as
worthless as a zombie on a quiz show if I didn't knock this fervent
searching for the error and go to bed, but I also knew that even if I did
go to bed I would lie there thinking about what it was that I possibly did wrong and not sleep a wink. However, by 4:30 am I was resolved that this
error would never be found and I would go to bed. However, before checking
in for 90 minutes of sleep, I would look at all the printed programs one
more time and see if I could find the error. I think I even shot a prayer
up to heaven asking The Almighty to show this poor, exhausted fool where
his mistake was in copying the subroutine.
At 4:12 and 42 seconds on the next day in February, I saw the error. It
was so small that my tired and reddening eyes were looking over it time and time again. I felt like the worst of the worst of whatever derogatory name
I could call myself, and I called myself that several times before I went
back to the keyboard and started typing. The error? I forgot to add a semi-colon at the end of one of the lines of text in the subroutine.
Without the semi-colon telling the Commodore to carry on to the next line
what was written in the offending line, the program insisted that this line
of data was concluded and went onto the next line in the code, thus
creating the up and down printing style when the program listed the
directory on the screen. I added the missing semi-colon to the line in question, saved the program to disk using the "save with replace" option I
read about in my copy of the Programmer's Reference Guide, then ran the program. I selected the number on the screen that told the Commodore to
read the directory onto the screen. There to my relief the display on the monitor showed what was on the disk from left to right. Victory has been seized and the entire program was saved, including the directory reading subroutine.
I was done with coding for the rest of the day, and probably for the next several days. With the adrenaline gone out of my system with the discovery
of the mistake, my fatigue took full control of me, I shut off the
Commodore and staggered into bed, flopping face down onto the pillow. I
knew that for the next hour and fifteen minutes, I would sleep the sleep of
a victorious knight who won the prize from the maiden's hand after a day's worth of jousting, and sleep I did, not knowing when I would wake up;
hopefully at the appropriate time, but I forgot to set the alarm during my short celebration over finding and fixing the code error...
The phone rang next to my bed for only God knows how long, but its tone
was loud enough to arouse me out of my slumber. I rolled over to face my
night stand where my phone rested each night before I went to bed. Still tired, I almost rolled over onto Dover, my yellow striped tabby cat who snuggled up to me in the middle of the morning. With weak fingers, I
fumbled with the phone, trying to find the answer button on it. After a
couple of seconds, I finally answered the ringing.
"Hullo?" I said into the receiver in a groggy voice.
"Lenard, are you coming to work today?" It was dispatch.
Aw nuts! I looked at my wall clock in the room. It read 9:30.
"Yeah, yeah, Steve, I'm ready to go." I lied out my exhausted face; I was still in bed and in my sleeping clothes, and Dover was lying next to me.
"What do you have for me?"
"I've got a ten o'clock downtown that needs to go to Lee's Summit by
11:30 and then pick up at Venture Industries while in Lee's Summit a couple
of packages that needs to be in Olathe by 1:30, but be sure to pick up the
bank bags at 10th and McGee before you head to Olathe. Do you got all
that?"
"Yeah, yeah, I got it." I lied again. I didn't even have the strength to pull the covers off of me or move Dover out of the way so I could get up.
Steve continued on. "I'll send the orders to you over your cell phone. You've got a half hour to get downtown; better hop to it."
"Yeah, okay. I'm on my way." I lied a third time. I was just moving
Dover out of my way, kicking my covers off me and scrambling out of the
bed. I quickly hung up the phone. The adrenaline that was motivating me
the night before once again kicked in as I rushed around to get my uniform
and pants on. In the short space of five minutes I was dressed and heading
for the front door. As I passed by the Roach Centre's computer room, I
stopped and gave my Commodore computer stand a long stare, remembering what
we had been through the night before, and I smiled, remembering the victory
I won over the problem yesterday. I tapped on the door frame with my hand. "Later today, my friend," I said to the silent machine sitting on the
opposite end of the room. "We'll do this again later today." I grabbed my winter coat off its hook in the living room and headed out the door to
begin my day smiling, knowing that I will indeed have a meeting with my Commodore - later today.
*************************************
REVIEW: DOWN
For the unexpanded VIC 20
By Commodore Free
*************************************
Author: Revival Studios
(www.revival-studios.com)
Requirements: Unexpanded VIC-20 +
Joystick.
DESCRIPTION:
Your village is under attack! Fleeing into the depths of the caves, there
is only one way to go: Down!!! Use the joystick to manoeuvre through the holes and use gravity to escape death.
For more information, you can visit my website at: www.revival-studios.com
Well its Another exciting developer, and as he releases more software for
the unexpanded Vic 20, Its either going to be truly brilliant or complete rubbish, with the limited resources available on the machine it really is a labour of love, however many class games have been released for the
unexpanded machine, so lets start the review.
The game starts with quite a classy splash screen, it`s minimal as the game loads directly into memory rather than in stages. However nothing more is really needed. The game has been released on a number of retro platforms
by the company, and so without more chat let's press fire and start.
The graphics look a little squashed on the VIC version, but the game plays
as well as if not better than every other version. The game play is
simplistic to say the least, Move left or right to try and manoeuvre your
man through a gap to keep him moving down the screen as the screen scrolls steadily upwards, what will surprise you is the speed the screen scrolls,
at times you wonder if your VIC's been supercharged, or if a power surge
has almost torched the processor
The background is a plain blue screen with just the ledges on the screen
and sides the main character is animated well and as he falls he stretches
out in a concertina fashion, sound is minimal with just bleeps and pops,
the odd bonus appears to collect but its just a case of moving left and
right in a frantic speed fashion, How anyone can get over 100 points is
just mind-blowing as that's about my limit each time. And trying to a
picture of the screen while its moving that fast isn't possible hence the screen with a score of 1
SCORES
Gameplay : 7/10
simple and frustrating
Graphics: 6/10
Sound: 6/10
Overall: 6.5/10
SUMMARY
It's a simple but frustrating game with a good one more time hook, the
score is shown at the end of the game.
Price: 9,95 euro (Cassette Tape) / 3,95 (Digital Download)
If you buy the tape version, you will of course get the digital download
for free.
*************************************
COMPUTING HISTORY WITH COMMODORE
By Mr NOP
*************************************
Forget Facebook, Commodore Was Our Original Social Network
My first exposure to the Commodore computer was back in 1980. I was a
Grade 7 student and one day I walked into science class to discover three
large white Commodore PET computers with built in green screens. I'd never touched a computer before and found myself somewhat intimidated by the
numerous keys and strange symbols on the keyboard. We had some basic
programs available on cassette tape which I learned were brought up using
the LOAD command. There was something magical and almost exciting about inserting a cassette tape into the tape deck, pressing play and watching
the green glowing pixels on the screen as you waited to see if your program would be found.
The tape would begin to send data to the computer and the counter on the cassette deck would slowly advance. As I watched the glowing green pixels eventually I'd see a message on the screen:
LOAD
PRESS PLAY ON TAPE #1
FOUND SPACE INVADERS
LOADING
Unlike today's state of the art disk drives, storing programs on analogue
tapes was a bit of a hit and miss process. The teacher used the wall
mounted clock to time the retrieval of programs on the tape rather than use
the tape counter. The reason for this was that the counters between tape devices could be different. A cassette tape's case might have had a label
like this:
Space Invader - 0 seconds Alien - 20 seconds N.A.B. - 48 seconds
To load N.A.B. for example, you'd have to rewind the tape all the way to
the beginning, and then press the fast forward key on the tape deck while watching the wall clock. When 48 seconds had elapsed, you'd press STOP,
and then type the LOAD command. This was such a primitive way to store
data in comparison to today's I-POD's in which you can load a few hundred albums onto it and instantly retrieve them. Cassette tapes were also prone
to LOAD ERRORS when the data on the tape was received incorrectly.
(Useless trivia: The PET actually saved two copies of a program so that it could compare for errors)
The PET Computers came with the BASIC software langua
--- MBSE BBS v1.0.4 (GNU/Linux-i386)
* Origin: Dragon's Lair ---:- bbs.vk3heg.net -:--- (39:901/280)