Msg: 1260 *Conference*
01-06-92 22:32:12
From: LEX JENKINS
To : MARTY PEKAR
Subj: REPLY TO MSG #1215 (BOOSTER PAK WOES)
Hi, Marty After trying to duplicate your problems loading large files I have a couple of ideas to offer: [1] "?UL Error in 2": As Robert mentioned, this is due to attempting to run an incomplete program. Line 2 GOSUBs line 168. But when I loaded and saved ADVEN1.DO normally, through the BASIC interpreter (painfully slow, compared with DO2BA.BA), ?OM Error occurred. Only 11,364k of a 15,071k file was interpretted, ending at line 141. No line 168 to GOSUB to! [2] Before converting the ASCII file to a .BA or .CO program files, be sure to remove those @@@@'s at the end of the file. They'll bugger up your program. [3] When I converted ADVEN1.BA from ASCII to .BA using DO2BA I ended up with a 15071k program. You said yours was 15072k. Might have been an unwanted @ in there. [4] Even when running DO2BA.BA be sure that you have 29,638k (the maximum available RAM workspace) in #NULL or an empty environment/workspace copied from #NULL. You don't have to convert your downloaded ASCII files to .BA or .CO programs in an "empty" environment/workspace, but I believe it's a good practice. And copy the ASCII file to the RAMdisk before converting it. If you cold start you've lost nothing except what was in that workspace. [5] How do you ensure that you've got the maximum available RAM and that everything is set to prevent a cold start? You've gotta know what MAXRAM, MAXFILES, HIMEM, Free Memory and Free String Space are set to - or at least know that they're cleared. Here are two small, simple programs, MAXMAX.BA and CLEAR.BA, to do those chores. 0 'MAXMAX 1 CLS:PRINT"MAXRAM=":PRINT@7,MAXRAM 2 PRINT@15,"MAXFILES=":PRINT@24,MAXFILES 3 PRINT@28,"HIMEM=":PRINT@34,HIMEM 4 PRINT@40,"Free Memory=":PRINT@52,FRE(0) 5 PRINT@80,"Free String Space=":PRINT@98,FRE("") 10 PRINT"Press <F8> to exit to Menu." 15 PRINT"To clear all run CLEAR.BA or enter:" 20 PRINT"'CLEAR0,MAXRAM:MAXFILES=1'" 0 'CLEAR 10 CLEAR0,MAXRAM:MAXFILES=1 20 MENU MAXCLR.BA combines the two. It takes up a bit more room, but eliminates an extra step: 0 'MAXCLR 1 CLS:PRINT"MAXRAM=":PRINT@9,MAXRAM 2 PRINT"MAXFILES=":PRINT@49,MAXFILES 3 PRINT"HIMEM=":PRINT@89,HIMEM 4 PRINT"Free Memory=":PRINT@133,FRE(0) 5 PRINT"Free String Space=":PRINT@178,FRE(""):PRINT 10 PRINT"CLEAR?" 15 LINEINPUT"Y OR N? ";A$ 20 IF A$="Y" THEN GOTO 30 25 IF A$="N" THEN GOTO 40 30 CLEAR0,MAXRAM:MAXFILES=1 40 MENU MAXMAX just shows you what the five parameters are set to - it doesn't do anything else. Also, lines 10-20 aren't essential or particularly informative. Delete 'em if you want. CLEAR sets string space to 256, MAXRAM to the Maximum available RAM and resets MAXFILES to 1. Because these programs are so small I copied them to every directory in my Booster Pak, and use them often. MAXCLR gives you the option of CLEARing settings or leaving them as is. If you examine other programs you'll find these used to some extent, but not consistently. Some programs are quite tidy and clean their own plates when they're finished, so you don't experience cold starts from machine language programs crashing into an occupied address. Other programs are rather messy. For example, the telecommunications program X-Tel, which you may have if you got an Ultimate Rom II chip with your Booster Pak, needs about 4k to operate. Try this, if you've got X-Tel: Start with a clean slate of 29638k in #NULL. Run X-Tel.BA from the RAMdisk. Then exit; you don't need to dial or connect. Check the RAM in your Workspace. Should be around 25598. Messy little rascal! However, I like X-Tel because I've used X-Modem file transfer protocols for years and find the Checksum and CRC error checking valuable, especially because my home phone lines are pretty crummy. You don't get those with the standard TELECOM download. Also, X-Tel allows you to download and upload directly to and from the RAMdisk; TELECOM doesn't. It allows direct down/uploading of programs without converting them to ASCII text files. If you don't have X-Tel, I,ve seen listings for similar programs in the Library. By the way, I'm not much of a programmer. I wouldn't know an array if it smacked me in the string space and DIMmed my lights. But I appreciate good programming when I see it. I've just given myself a crash course in this model 102 since I got it in November, and I picked up quite a bit from the Technical Reference section (Menu #6) and scanning the Conference section, then studying some of the smaller programs from the Utilities and Misc sections of the Library. Good luck! Hope at least some of this stuff helps. <Lex>