From Wiki96
Jump to: navigation, search

Note: the actual title should be "w96.__debug", but due to MediaWiki moments, it is not possible to make it look the way it should.

The API docs say this:

Debug export namespace.

This is purely for the Windows 96 developers, there is no need to mess with it.

and a const named "__empty" is also listed, which is a null value. (it doesn't actually exist though, but if you do want to make it exist, do w96.__debug.__empty = null;)

But we're (or rather, I'm (Cab)) gonna document what's actually there anyway.

V2

Winlogon

All those methods require a SAM config (basically just a login password set).

displayLogonUI(e)

Asynchronized method. Returns nothing (undefined).

Shows a login screen, and requires you to enter your password. After the correct password is entered, the e function is called with one parameter, that's equal to true.

If no SAM config is found, it shows an error message, and calls the e function with one parameter, that's equal to false.

Also, from that screen, you can reboot.

displayLogonUIAsync()

Asynchronized (technically synchronized) method. Returns a Boolean.

Same as displayLogonUI, except no parameter is required - the alternative here is the result. false if the SAM config is missing, true after the correct password was entered.

processes

This is an interesting one. It's not an object, it's an array instead. Contains all the processes in the system.

If we're going by its initial length, the maximum amount of processes in Windows 96 is limited to 8192.

When the limit is exceeded, no applications will run - they will display an error in the console. From that point, closing any open application WILL LOWER THE LIMIT! So the only option is to restart the system.

Object.seal()ing the array will cause a similar situation to the process limit being exceeded, however you won't be able to close any windows.

V2 SP1+

ImmersiveDesktopEnvironment

The Immersive Desktop Environment (or the IMDE). It gets initialized on startup, even though it has an exposed init() method, so as a result, calling it is unnecessary.

init()

Asynchronized method. Returns nothing (undefined).

Initializes the IMDE. As said above, it is unnecessary to call it.

closeAllPopups()

Synchronized method. Returns nothing (undefined).

Doesn't seem to do anything. Calling .toString() on it reveals this: function w(){document.querySelectorAll(".imde-ui-popup").forEach((e=>e.remove()))}

V3

As of June 7, 2022.

Won't be listing anything old, as it's the same.

SdgfxTest

A...class? Looking through the .toString() output reveals that its some <canvas> test.

After constructing it and running main() manually, it shows this window:

SdgfxTest.png

But that seems to be all there is.