TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Joe Kelch
from: Robin Forster
date: 1994-10-17 06:49:22
subject: CLEAR SCREEN

JK> I did look them up.  Found them in BSESUB.H.  No mention of a screen
 JK> clearing API call.

From what little I have gathered on the subject of VIO calls I think you
need to implement this yourself.  It is pretty simple to do I imagine
once you have the pointer to the buffer.

This function may not work exactly because I haven't tested it but I
believe the solution is something along these lines:

#define INCL_NOPM
#define INCL_VIO
#include "os2.h"

PBYTE  buffer;
USHORT bufferlen;

void
ClrScreen(BYTE fill,BYTE attrib)
{
  VIOMODEINFO vmi;
  USHORT      i;

  vmi.cb=sizeof(vmi);
  VioGetMode(&vmi,0);

  VioGetBuf((PULONG)buffer,bufferlen,0);

  for(i=0;i<(vmi.col*vmi.row*2);i+=2){
    buffer[i]=fill;
    buffer[i+1]=attrib;
  }
}

Cheers,
Robin.

---


* Origin: >>> The Tech Shop Point <<< (1:163/107.1)
SEEN-BY: 12/2442 54/54 620/243 624/50 632/348 640/820 690/660 711/409 410 413
SEEN-BY: 711/430 807 808 809 934 942 949 712/353 623 713/888 800/1
@PATH: 163/107 528 99 12/12 270/101 396/1 3615/50 229/2 12/2442
@PATH: 711/409 54/54 711/808 809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.