From Wiki96
Jump to: navigation, search
m (fuck)
 
(20 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{Stub}}
{{ActualTitle|w96.__debug}}
''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:
The API docs say this:
<blockquote>
<blockquote>
Line 6: Line 6:
This is purely for the Windows 96 developers, there is no need to mess with it.
This is purely for the Windows 96 developers, there is no need to mess with it.
</blockquote>
</blockquote>
and an const named "__empty" is also listed, which is a null value.
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 <code>w96.__debug.__empty = null;</code>)


But we're (or rather, I ([[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 ==
As of the latest service pack.
=== Winlogon ===
===ImmersiveDesktopEnvironment===
All those methods require a SAM config (basically just a login password set).
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>====
Asynchronized method. Returns nothing (undefined).


Initializes the IMDE. As said above, it is unnecessary to call it.
==== <code>displayLogonUI(e)</code> ====
====<code>closeAllPopups()</code>====
Synchronized method. Returns nothing (undefined).
 
Doesn't seems to do anything. Calling toString() reveals this: <code>function w(){document.querySelectorAll(".imde-ui-popup").forEach((e=>e.remove()))}</code>
===Winlogon===
All those methods require a SAM config (basically just a login password set).
====<code>displayLogonUI(e)</code>====
Asynchronized method. Returns nothing (undefined).
Asynchronized method. Returns nothing (undefined).


Line 31: 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, like the previous objects, its an array instead.


If we're going by its initial length, the maximum amount of processes in Windows 96 is limited to 8192. Currently it is untested whether or not Windows 96 malfunctions when this amount is exceeded.
=== 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.
 
<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+ ==
=== 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.
==== <code>init()</code> ====
Asynchronized method. Returns nothing (undefined).
 
Initializes the IMDE. As said above, it is unnecessary to call it.
 
==== <code>closeAllPopups()</code> ====
Synchronized method. Returns nothing (undefined).
 
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 June 7, 2022.
 
Won't be listing anything old, as it's the same.
 
=== SdgfxTest ===
A...class? Looking through the <code>.toString()</code> output reveals that its some <canvas> test.
 
After constructing it and running <code>main()</code> manually, it shows this window:
 
[[File:SdgfxTest.png]]
 
But that seems to be all there is.
[[Category:API]]

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.