zlacker

[parent] [thread] 4 comments
1. ruk_bo+(OP)[view] [source] 2025-12-06 06:03:27
A nice guide on how to actually put those ”illegal opcodes” into work is ”No More Secrets”

https://csdb.dk/release/?id=248511

replies(1): >>gblarg+W1
2. gblarg+W1[view] [source] 2025-12-06 06:34:40
>>ruk_bo+(OP)
That's a new name I hadn't heard that fits well: unintended opcodes. I also like unofficial. Undocumented isn't correct because these are quite well documented.
replies(1): >>adrian+4j
◧◩
3. adrian+4j[view] [source] [discussion] 2025-12-06 10:47:26
>>gblarg+W1
They are well documented now, after reverse engineering.

The manufacturer did not document them, so they really were undocumented.

The same happened with many other CPUs, like Zilog Z80, Intel 8086 and the following x86 CPUs.

They all had undocumented instructions, which have been discovered by certain users through reverse engineering.

Some of the undocumented instructions were unintended, so they existed only due to cost-cutting techniques used in the design of the CPU, therefore the CPU manufacturer intended to remove them in future models and they had a valid reason to not document them.

However a few instructions that were undocumented for the public were documented for certain privileged customers, like Microsoft in the case of Intel CPUs, so they were retained in all future CPU models, for compatibility.

replies(1): >>bonzin+zw
◧◩◪
4. bonzin+zw[view] [source] [discussion] 2025-12-06 13:15:57
>>adrian+4j
Not always. LOADALL was used heavily by Microsoft's HIMEM.SYS on the 286, but was not preserved on subsequent models.
replies(1): >>adrian+GZ
◧◩◪◨
5. adrian+GZ[view] [source] [discussion] 2025-12-06 17:17:01
>>bonzin+zw
That was because LOADALL was impossible to preserve, since the internal state of the CPU changed in the next models.

80386 also had an undocumented LOADALL instruction, but it was encoded with a different opcode, as it was incompatible with the 80286 LOADALL, by restoring many more registers.

After 1990, no successors to LOADALL were implemented, because Intel introduced the "System Management Mode" instead, which provided similar facilities and much extra.

[go to top]