DesqView Aware Util(s).

 BBS: Inland Empire Archive
Date: 06-10-92 (18:29)             Number: 195
From: MANUEL GODINEZ               Refer#: NONE
  To: ALL                           Recvd: NO  
Subj: DesqView Aware Util(s).        Conf: (2) Quik_Bas
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.

<Manuel Godinez>

---ZoftMail v1.00 [Reg]

---
 * Origin: The First Step BBS - 414-499-0659 (1:139/540)
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