--------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00003 Date: 04/08/98 From: DAVID WILLIAMS Time: 08:49am \/To: BRUCE CORBETT (Read 2 times) Subj: Multiple eofs -> Oh o.k. well then you have lernt something about MS Dos for the IBM -> then, and if you ever find a file that has a EOF problem then you -> will know its proberly from DOS. Actually, my Mac can read and write PC-DOS-formatted disks. I have never deliberately tried reading a file that contained CHR$(26)es this way. I wonder if it would misinterpret them as EOFs. dow --- PCBoard (R) v15.3 (OS/2) 5 * Origin: FidoNet: CAP/CANADA Support BBS : 416 287-0234 (1:250/710) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00004 Date: 04/08/98 From: KURT TISCHER Time: 07:37am \/To: STEVE HARMON (Read 2 times) Subj: PostIt! Posterchild SH>KT> Heck, I can do it. And I will. I've got a decent mailer that I can SH> > use to automate the process, too, so I won't even need to think SH> > about it. SH>KT> Let me know what you decide. SH>You got the job, and thank you. Wow, that was quick! Ok, send me the things I'll need to post and any other details that might help. Reply here or: Fido Netmail: Kurt Tischer (1:157/438) Internet: 3rdear@en.com Thanks! kt * SLMR 2.1a * Harrass an agnostic. Burn a question mark in his yard! --- ViaMAIL!/SL v1.30 * Origin: ViaMAIL! - If you run Searchlight, you gotta have it! (1:157/438) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00005 Date: 04/07/98 From: BERT BYFIELD Time: 09:47pm \/To: STEVE IGREJAS (Read 2 times) Subj: Capslock SI> I'm making a fighting game on QBasic 1.0. I really need to know how to SI> turn on the capslock without making the user press it. I can turn off SI> capslock, numberlock, etc. and restore them, and I can turn on the Number lock SI> and restore that. But does anyone know how to turn on Caps? why not just: k$=ucase$(inkey$) ? * JABBER v1.2 * SYSTEM ERROR 1303: POWER NOT ON --- QScan/PCB v1.17b / 01-0406 * Origin: Knight Moves - Rochester,NY 716-865-2106 (1:2613/313) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00006 Date: 04/08/98 From: KURT KUZBA Time: 11:35am \/To: MICHAEL MUTH (Read 2 times) Subj: QB: Linker MM> Does anybody know's about this Error ? MM> BC_DATA Segment exceeps 64k MM> What can I do to compile my Programm ? You need to make separate modules for some things. Make a copy of your source file, using Save As. keep all the SUBs and FUNCTIONs which stand alone and do not require any data not passed to them, and get rid of the rest. Keep the DECLARE statements for those SUBs and FUNCTIONs you will be keeping. Save the file. Open your original source file. Delete all the SUBs and FUNCTIONs which are now in your module file. Keep the DECLARE statements for them, though. Now Load your module file. It, like your original main module, will be able to hold 64K. You can make as many modules as necessary, though there is a limit, and larger projects will have less available memory at runtime. You can also build a string table in a separate module, which returns a string according to a numerical reference, like this: FUNCTION StringTable$ (S AS INTEGER) SELECT CASE S CASE 0: ST$ = "Hit a key" CASE 1: ST$ = "Programmed by :" CASE 2: ST$ = "File not found" CASE 3: ST$ = "Option unavailable in unregistered version" CASE 4: ST$ = "About this program" CASE 5: ST$ = "~R*~C4~FO~BA White on Blue at 10, 20 " ST$ = ST$ + "~F@~BC With black on cyan! " END SELECT StringTable$ = ST$ END FUNCTION You may also move color and cursor changes to this table, and embed them in the strings themselves, using an otherwise unused character as an escape character. SUB STable (S AS INTEGER) ESC$ = "~F~B~R~C" ST$ = StringTable$(S) SL% = LEN(ST$) FOR t% = 1 to SL% Es$ = MID$(ST$, t%, 2): Ec$ = MID$(ST$, t% + 2, 1) E% = INSTR(ESC$, LEFT$(Es$, 2)) CASE SELECT E% CASE 1: COLOR ASC(Ec$) - ASC("@"): t% = t% + 2 CASE 3: COLOR , ASC(Ec$) - ASC("@"): t% = t% + 2 CASE 5: LOCATE ASC(Ec$) - ASC(" "): t% = t% + 2 CASE 7: LOCATE , ASC(Ec$) - ASC(" "): t% = t% + 2 CASE ELSE: PRINT MID$(ST$, t%, 1); END IF NEXT END SUB But now we're getting into some REALLY weird stuff! :) > ] I'm heavily sedated and seriously thinking about blinking... --- * Origin: *YOPS ]I[* 8.4 GIG * RA/FD/FE * Milwaukee, WI (1:154/750) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00007 Date: 04/08/98 From: KURT KUZBA Time: 11:35am \/To: STEVE IGREJAS (Read 2 times) Subj: Capslock SI> turn on the capslock without making the user press it. Does this help? '_|_|_| SETCAPS.BAS PUBLIC DOMAIN Kurt Kuzba 4/8/1998 DECLARE SUB CapsOn (x%) CapsOn 1 PRINT "The Capslock key is now ON" PRINT "Please hit Enter now" WHILE INKEY$ = "": WEND CapsOn 0 PRINT "The Capslock key is now OFF" PRINT "Please hit Enter now" WHILE INKEY$ = "": WEND SUB CapsOn (x%) DEF SEG = &H40: sh% = PEEK(&H17) IF x% = 0 THEN POKE &H17, sh% AND 191: ELSE POKE &H17, sh% OR 64 DEF SEG END SUB > ] It's a neat universe, but it certainly LOOKS chaotic........ --- * Origin: *YOPS ]I[* 8.4 GIG * RA/FD/FE * Milwaukee, WI (1:154/750) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00008 Date: 04/08/98 From: DAVID WILLIAMS Time: 09:09am \/To: KURT KUZBA (Read 2 times) Subj: Old Folks -> DW> -> IF NOT LEN(k$) THEN GOTO Again -> DW> IF LEN(k$) = 0 THEN GOTO Again -> DW> or -> DW> IF k$ = "" THEN GOTO Again -> A DO loop would be more to the point. -> DO: k$ = inkey$: LOOP UNTIL k$ > "" I agree. My point was to criticize the IF NOT LEN(k$)... idea, not the GOTO structure. The following loop would suffer from the same problem: k$ = "" DO WHILE NOT LEN(k$) k$ = INKEY$ LOOP This, too, will loop for ever, even after a key has been pressed, since it contains the same (rather common) logical error. To fix it, the second line must be re-written as DO WHILE k$ = "" , or something similar. -> If you wanted specific input: -> DO -> k% = INSTR(" ABCDEFG", UCASE$(INKEY$)) - 1 -> LOOP UNTIL k% > 0 -> SELECT CASE k% -> CASE 1: PRINT "A" -> CASE 2: PRINT "B" -> CASE 3: PRINT "C" -> CASE 4: PRINT "D" -> CASE 5: PRINT "E" -> CASE 6: PRINT "F" -> CASE 7: PRINT "G" Hmmm... My inclination would be to write the INKEY loop as something like: DO: k$ = UCASE$(INKEY$): LOOP UNTIL k$ >= "A" AND k$ <= "G" Then simply PRINT k$ Wouldn't that be a whole lot simpler?! And if I wanted to do other things, depending on which key has been pressed, I might write them as subroutines and call them with something like: ON ASC(k$) - 64 GOSUB First, Second ... and so on. I know it's terribly un-trendy at present to use this kind of coding, but it is so much easier than all this CASE stuff! dow --- PCBoard (R) v15.3 (OS/2) 5 * Origin: FidoNet: CAP/CANADA Support BBS : 416 287-0234 (1:250/710) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00009 Date: 04/08/98 From: DAVID WILLIAMS Time: 09:12am \/To: KURT KUZBA (Read 2 times) Subj: Multiple eofs -> However... DOS is not a reasonable OS, as you know. More precisely, PC-DOS (aka MS-DOS) isn't reasonable. There are other Disk Operating Systems, which are equally entitled to the acronym DOS, which are more sanely organized. dow --- PCBoard (R) v15.3 (OS/2) 5 * Origin: FidoNet: CAP/CANADA Support BBS : 416 287-0234 (1:250/710) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00010 Date: 04/08/98 From: STEVE IGREJAS Time: 06:02pm \/To: BRUCE CORBETT (Read 2 times) Subj: Re: Capslock BC> I would guess you are using POKE in oder to turn them off and restore BC> them try the following in order to find the one for caps lock (or the BC> led(s) you want) Yep. I'm using POKE although I really don't understand it. Thanks for the prog. --- QuickBBS 2.85 GoldBase * Origin: >>>Xanadu BBS<<< New Bedford Ma. (508)995-9876 (FIDONET 1:329/889) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00011 Date: 04/08/98 From: BILL WHITE Time: 03:58am \/To: DAVID WILLIAMS (Read 2 times) Subj: Multiple eofs DW> For sending encrypted files on disk to other Mac users, or directly to DW> them by modem, this program works magnificently. However, I have DW> sometimes tried sending the encrypted files as attachments to e-mail DW> messages, or by uploading them to a BBS. Sometimes, when I have tried DW> this, the files have been mysteriously cut short after a few dozen, or DW> maybe a few hundred, characters. Now, I guess I can see why. The files DW> have been (mis)handled by PC-DOS, which has interpreted any occurrence DW> of CHR$(26) as an EOF and quit there. DW> How ridiculous! I've read many warnings about sending ASCII characters less than 32 or greater than 127 in FIDO mail. FIDO is not intended for sending files, especially encrypted files. When you do so, you are expecting it to do something for which it was not designed! FIDO: Bill White @ 1:135/110 (Miami) InterNet: bill.white@110.sunshine.com * SLMR 2.1a * It would help if you would reduce your line width, please --- Maximus 2.01wb * Origin: Miami Amateur Computer Club BBS/USR Courier V.E (1:135/110) --------------- FIDO MESSAGE AREA==> TOPIC: 125 QUICK BASIC Ref: F4E00012 Date: 04/08/98 From: TERRY RETT Time: 12:14am \/To: ANY ONE (Read 2 times) Subj: COMUNICATIONS DOES ANY ONE HAVE ANY SOURCE OR A ROUTINE IN QBASIC THAT WILL ALLOW ME TO INPUT A NUMBER AND HAVE MY MODEM DIAL THAT NUMBER?? PERHAPSE A SHORT ONE THAT I COULD USE IN A PROGRAM THAT I'M TRYING TO WRITE I'M LEARNING MORE ABOUT PROGRAMMING IN QBASIC BUT I CANT SEEM TO FIND ANY TEXT SOURCE THAT WILL ALLOW ME TO INPUT A NUMBER AND THEN DIAL THAT NUMBER OVER COM 1 AND I HAVENT BEEN ABLE TO FIND ANY NOT ON BBS'S AND NOT IN THE FTWAYNE LIBRARY ?(IS IT SOME SORT OF SECRET OR SOMETHING) ANY WAY NOTHING IN ANY OF THE HELP F-1 FILES ABOUT IT HELPS ME ANY AT ALL ,THEY TELL YOU HOW TO ACCESS COM1 AND HOW TO SEND AND RECIEVE FROM THE KEYBOARD BUT I CANT FIND ANYTHING ON HOW TO GET THE THING TO DIAL , ALL I REALLY NEED IS A VERY SHORT TERMINAL PROGRAM IN QBASIC SOURCE OR AT LEAST A DIALING ROUTINE OR SOURCE TO DO THE ABOVE THINGS ANY ONE WITH THIS TEXT SOURCE I WOULD APPRECIATE YOUR HELP AND IF YOU WOULD SEND IT TO ME IN A MESSAGE HERE ON THE LOFT OR UPLOAD IT HERE AND LEAVE ME A NOTE I'D GLADELY GET YOU A COPY OF THE PROGRAM I'M WRITEING, THANKS TERRY RETT --- Maximus 2.02 * Origin: THE LOFT in Auburn IN 219-925-5524 & 238-3222 HST/V34+ (1:236/7)