BBS: Inland Empire Archive Date: 09-13-92 (09:48) Number: 373 From: STEVE MCCRYSTAL Refer#: NONE To: RICH WAUGH Recvd: NO Subj: Programmimg Conf: (2) Quik_Bas
; In a msg of <13 Sep 92>, Rich Waugh writes to All: ; Rich, RW> Does anyone here have example source code or library to make my RW> door SHAMpage (written in QuickBASIC) DESQview aware? I'd sure RW> appreciate some help. Here's some code posted by Quinn Tyler Jackson, thankfully before this message mangler crap began to infest the echo. Notice that it carries a copyright notice, as does the Xmodem code he mangled a couple of days ago. I'll leave it to you to deal with that. Apparently he actually wrote the test program himself. It follows in the next message. >Here are some Smart routines for QB/PDS users to make their programs >DesqView Aware AND Compatible. This are TWO (2) Different Routines >in OBJ form. 'Program: CycleDV Copyright (c) 1990 Hugh Martin - Martin Systems ' All rights reserved. ' 'Purpose: Gives up the rest of the program's time slice to DesqView. ' Be sure to check first if DesqView is running using ExistDV. ' ' Syntax: Call CycleDV ' ' Passed: nothing ' ' Returns: nothing '-------------[ DesqView Cycle Object Code for QB/PDS ]------------- DEFINT A-Z CLS : PRINT "Creating DVCYCLE.OBJ" OPEN "DVCYCLE.OBJ" FOR BINARY AS #1 ON ERROR GOTO Done DO READ Lyne$: LynLen = LEN(Lyne$) FOR j = 1 TO LynLen STEP 2 Char$ = MID$(Lyne$, j, 2): PRINT Char$; Char$=CHR$(VAL("&H" + Char$)) PUT #1, , Char$ NEXT j LOOP Done: CLOSE #1: END DATA 800D000B647670617573652E41534D619607000004434F4445449807002812 DATA 0002020122900E000001074359434C4544560000005088040000A201D1A016 DATA 0001000055B81A10CD15B80010CD15B82510CD155DCB8F8A02000074 '------------[ End of Program ]--------------------------------------- 'Program: ExistDV Copyright (c) 1990 Hugh Martin - Martin Systems ' All rights reserved. ' 'Purpose: Determine if running in a DesqView environment ' ' Syntax: Call ExistDV (Found) ' ' Passed: nothing ' 'Returns: Found an integer variable, whose value equals: ' -1 if running under DV ' 0 if not running under DV ' '-----------[ Start of DesqView Exist OBJ ]----------------------- DEFINT A-Z CLS : PRINT "Creating DVEXIST.OBJ" OPEN "DVEXIST.OBJ" FOR BINARY AS #1 ON ERROR GOTO Done DO READ Lyne$: LynLen = LEN(Lyne$) FOR j = 1 TO LynLen STEP 2 Char$ = MID$(Lyne$, j, 2): PRINT Char$; Char$=CHR$(VAL("&H" + Char$)) PUT #1, , Char$ NEXT j LOOP Done: CLOSE #1: END DATA 800D000B657869737464762E41534D529607000004434F4445449807002823 DATA 0002020111900E00000107455849535444560000003388040000A201D1A027 DATA 00010000558BECB94544BA5153B8012BCD213CFF7406B8FFFFEB039033C08B DATA 5E0689075DCA0200768A02000074 '----------[ End ]-------------------------------------------------- >Well this is it, now to be complete, just find some routines that >will print characters via DOS or BIOS. Basic uses Direct Screen >writes so you must change this and get a DOS/BIOS printing routine. '************ -[Steve]- --- GoldED 2.40.P0623+ * Origin: -[Steve's Place]- New Berlin, WI (FidoNet 1:3641/1.202)
Books at Amazon:
Back to BASIC: The History, Corruption, and Future of the Language
Hackers: Heroes of the Computer Revolution (including Tiny BASIC)
Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution
The Advent of the Algorithm: The Idea that Rules the World
Moths in the Machine: The Power and Perils of Programming
Mastering Visual Basic .NET