Programmimg

 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)
Outer Court
Echo Basic Postings

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