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