From Wiki96
Jump to: navigation, search
Tag: Undo
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{ActualTitle|w96.__debug}}
{{ActualTitle|w96.__debug}}
The API docs say this:
The API docs say this:
<blockquote>
<blockquote>
Line 8: Line 9:


But we're (or rather, I'm ([[User:Cab|Cab]])) gonna document what's actually there anyway.
But we're (or rather, I'm ([[User:Cab|Cab]])) gonna document what's actually there anyway.
==V2==
== V2 ==
===Winlogon===
=== Winlogon ===
All those methods require a SAM config (basically just a login password set).
All those methods require a SAM config (basically just a login password set).
====<code>displayLogonUI(e)</code>====
 
==== <code>displayLogonUI(e)</code> ====
Asynchronized method. Returns nothing (undefined).
Asynchronized method. Returns nothing (undefined).


Line 19: Line 21:


Also, from that screen, you can reboot.
Also, from that screen, you can reboot.
====<code>displayLogonUIAsync()</code>====
==== <code>displayLogonUIAsync()</code> ====
Asynchronized (technically synchronized) method. Returns a Boolean.
Asynchronized (technically synchronized) method. Returns a Boolean.


Same as <code>displayLogonUI</code>, except no parameter is required - the alternative here is the result. <code>false</code> if the SAM config is missing, <code>true</code> after the correct password was entered.
Same as <code>displayLogonUI</code>, except no parameter is required - the alternative here is the result. <code>false</code> if the SAM config is missing, <code>true</code> after the correct password was entered.
===processes===
 
This is an interesting one. It's not an object, its an array instead. Contains all the processes in the system.
=== 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.
If we're going by its initial length, the maximum amount of processes in Windows 96 is limited to 8192.
Line 32: Line 35:
<code>Object.seal()</code>ing the array will cause a similar situation to the process limit being exceeded, however you won't be able to close any windows.
<code>Object.seal()</code>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+==
== V2 SP1+ ==
===ImmersiveDesktopEnvironment===
=== ImmersiveDesktopEnvironment ===
The Immersive Desktop Environment (or the IMDE). It gets initialized on startup, even though it has an exposed <code>init()</code> method, so as a result, calling it is unnecessary.  
The Immersive Desktop Environment (or the IMDE). It gets initialized on startup, even though it has an exposed <code>init()</code> method, so as a result, calling it is unnecessary.  
====<code>init()</code>====
==== <code>init()</code> ====
Asynchronized method. Returns nothing (undefined).
Asynchronized method. Returns nothing (undefined).


Initializes the IMDE. As said above, it is unnecessary to call it.
Initializes the IMDE. As said above, it is unnecessary to call it.
====<code>closeAllPopups()</code>====
 
==== <code>closeAllPopups()</code> ====
Synchronized method. Returns nothing (undefined).
Synchronized method. Returns nothing (undefined).


Doesn't seem to do anything. Calling toString() reveals this: <code>function w(){document.querySelectorAll(".imde-ui-popup").forEach((e=>e.remove()))}</code>
Doesn't seem to do anything. Calling <code>.toString()</code> on it reveals this: <code>function w(){document.querySelectorAll(".imde-ui-popup").forEach((e=>e.remove()))}</code>
==V3==
 
As of 07.06.2022 (dd.mm.yy).
== V3 ==
As of June 7, 2022.
 
Won't be listing anything old, as it's the same.


Won't be listing anything old, as its the same.
=== SdgfxTest ===
===SdgfxTest===
A...class? Looking through the <code>.toString()</code> output reveals that its some <canvas> test.
A...class? Looking through the toString reveals that its some <canvas> test.


After constructing it and running <code>main()</code> manually, it shows this window:
After constructing it and running <code>main()</code> manually, it shows this window:

Latest revision as of 20:56, 8 February 2024

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.