 |
BCX Console Demonstration Program S85.bas
|
'-----------------------------------------------------
' This program demonstrates toggling full screen mode
' This version works in Win95/98/ME/NT
'-----------------------------------------------------
DIM
A
FOR
A =
1
TO
4
ToggleFullScreen(
)
Sleep
(
2000
)
'delay 2 second each iteration
NEXT
A
SUB
ToggleFullScreen(
)
DIM
SetConsoleDisplayMode AS
FARPROC
DIM
GetConsoleDisplayMode AS
FARPROC
DIM
Proc_Ptr AS
FARPROC
DIM
hKernel32 AS
HMODULE
DIM
hOut AS
HANDLE
DIM
dwOldMode AS
DWORD
DIM
hConWnd AS
HWND
DIM
ConTxt$
CONST
ID_SWITCH_CONSOLEMODE =
0xE00F
IF
IsNT(
)
THEN
' ------------------------------------------------
' taken from http://www.codepile.com/tric16.shtml
' ------------------------------------------------
hKernel32 =
GetModuleHandle(
"kernel32.dll"
)
Proc_Ptr =
GetProcAddress(
hKernel32, "SetConsoleDisplayMode"
)
SetConsoleDisplayMode =
MakeProcInstance(
Proc_Ptr, hKernel32)
Proc_Ptr =
GetProcAddress(
hKernel32, "GetConsoleDisplayMode"
)
GetConsoleDisplayMode =
MakeProcInstance(
Proc_Ptr, hKernel32)
hOut =
GetStdHandle(
STD_OUTPUT_HANDLE)
GetConsoleDisplayMode(
&
dwOldMode)
SetConsoleDisplayMode(
hOut, 1
XOR
dwOldMode, 0
)
ELSE
GetConsoleTitle(
ConTxt$, SIZEOF
(
ConTxt$)
)
hConWnd =
FindWindow(
"tty"
, ConTxt$)
SendMessage(
hConWnd, WM_COMMAND, ID_SWITCH_CONSOLEMODE, 0
)
END
IF
END
SUB
FUNCTION
IsNT(
)
DIM
dwVersion AS
DWORD
dwVersion =
GetVersion(
)
IF
(
dwVersion < 0x80000000
)
THEN
FUNCTION
=
TRUE
ELSE
FUNCTION
=
FALSE
END
IF
END
FUNCTION