home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!dtix!darwin.sura.net!gatech!usenet.ins.cwru.edu!slc6!trier
- From: trier@slc6.ins.cwru.edu (Stephen C. Trier)
- Newsgroups: comp.bugs.misc
- Subject: Re: BASICA programming bugs
- Message-ID: <1992Aug28.160850.6621@usenet.ins.cwru.edu>
- Date: 28 Aug 92 16:08:50 GMT
- References: <1992Aug28.092454.1412@news.Hawaii.Edu>
- Sender: news@usenet.ins.cwru.edu
- Organization: Case Western Reserve University, Cleveland, OH (USA)
- Lines: 47
- Nntp-Posting-Host: slc6.ins.cwru.edu
-
- In article <1992Aug28.092454.1412@news.Hawaii.Edu> anash@uhunix.uhcc.hawaii.edu (Dana Uehara c/o Andrew Nash) writes:
- >However, with a few computer programs written in BASIC the commands "GET"
- >and "PUT" seem to be the culprits in locking up the computer. When deleted,
- >the programs appear to run normally. But when kept, the commands either
- >produce strange graphics on the screen or completely lock up the computer
- >so I have to reboot the system to do any further work.
-
- This is usually caused by passing very strange parameters to the GET and
- PUT functions.
-
- If many programs by different authors fail on your computer, it is possible
- that you have a hardware problem.
-
- >DEBUG.COM hasn't really been much help because I'm not familiar with machine/
- >assembly language (I'm more familiar with BASIC). One of the commands I
- >encountered, however, when using DEBUG had a statement "LOCK".
-
- No one would intentionally design an instruction to lock up a computer
- into an assembly language and call it that. (They'd give it a better
- name, like "HALT".) The "LOCK" you saw is a prefix to another instruction;
- it tells the CPU that the instruction is to be run without interruption.
- This sort of thing is useful when dealing with interrupt handlers or
- task switching.
-
- >Any advice would be appreciated.
-
- First, don't use DEBUG to debug a BASIC program. BASICA is an interpreter,
- not a compiler, so you are NOT going to get very far.
-
- Second, I suggest that you look at the TRON, TROFF, STOP, GET, and PUT
- entries in your BASIC manual. TRON and TROFF let you trace the progress
- of a BASIC program. STOP lets you set a breakpoint in the middle of the
- program so that you can take a look at the program's current state. The
- GET and PUT entries are important for obvious reasons. Check out the
- space requirements outlined under GET, because those are probably being
- being violated.
-
- Good luck!
-
- Stephen
-
- --
- "Beware of programmers who Stephen Trier
- carry screwdrivers." Network Services Engineering, IRIS/INS/Telecom
- Leonard Brandwein Case Western Reserve University
- trier@ins.cwru.edu
-