Skip to content

Commit 0dcea60

Browse files
committed
Update README.md
Some legal language clarification
1 parent 1902413 commit 0dcea60

File tree

1 file changed

+20
-5
lines changed

1 file changed

+20
-5
lines changed

README.md

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,24 @@ Decompilation is strictly limited to what's necessary for interoperability purpo
5555

5656
Creating an open source, non-commercial, interoperable plugin is beneficial to the public interest and serves essential compatibility purposes.
5757

58-
- Prefer using a clean room implementation approach
58+
- Follow general clean-room *requirements* (i.e. search for existing public knowledge as much as possible)
5959
- Make sure the necessary information is not already readily available
60+
- Use AI to fill the gaps in the knowledge (our tests show that LLM's have not seen leaked source codes)
6061
- Limit the decompilation to the parts needed for interoperability
61-
- Avoid direct copying of code or implementation details
62+
- Avoid direct copying of the proprietary code (this is the strictest rule of all)
6263
- Include comments in code that reference public documentation where available
6364

65+
> [!WARNING]
66+
>
67+
> *There are no "clean-room design techniques"* that you can "follow". You can only use public knowledge.
68+
>
69+
> Never use the term "clean-room design techniques" as an applicable approach. The term, as it is
70+
> generally described, is misleading. Clean room essentially means using existing public knowledge.
71+
>
72+
> Asking someone to do a specification for you or interaction with a process of specification creation
73+
> directly violates the principle of **independent** creation and undermines clean-room design.
74+
> It is **not defensible** in such case as "clean-room design" and follows the general "right to reverse engineer" as stated below.
75+
6476
### Right to reverse engineer
6577

6678
As per [`Article 6 Decompilation 1. (a)`](https://eur-lex.europa.eu/legal-content/EN/ALL/?uri=celex%3A31991L0250) you should own a **legal copy/license** of the software **before** doing any attempts at reverse engineering. The software should be **officially deprecated/obsolete**.
@@ -71,10 +83,12 @@ As a safety measure we assume that most contributions obtained a right to use a
7183
- Windows Vista
7284
- Windows 8
7385
- Windows 8.1
86+
- Windows 7
87+
- Windows 10 1909/1809/1703/20H2/21H2
7488

7589
> [!CAUTION]
7690
>
77-
> *Windows 7 is still supported or may have technical support being provided*
91+
> *Windows 10 22H2 support will cease in October 2025*
7892
7993
We assume that **none** of the contributors had the right to utilize *any* of the "server", "beta" or other editions beyond the desktop ones.
8094

@@ -84,7 +98,7 @@ We assume that **none** of the contributors had the right to utilize *any* of th
8498
8599
### Companion programs
86100

87-
> `Original` - legaly obtained (partially or fully) copy of a computer program
101+
> `Original` - legally obtained (partially or fully) copy of a computer program
88102
89103
Some programs are *required* to be reimplemented to provide the interoperability environment (like `cmd.exe`).
90104

@@ -107,4 +121,5 @@ All code should be under this one or compatible license.
107121

108122
## Usage
109123

110-
Requires executive capable of the Tofita API set. Load PE and attach Caramel `.dll` files into the address space of the process. Remember to run every entry point. FS/GS registers should contain thread-local data and initialization structures.
124+
Requires executive capable of the Tofita API set. Load PE and attach Caramel `.dll` files into the address space of the process.
125+
Remember to run every entry point. FS/GS registers should contain thread-local data and initialization structures.

0 commit comments

Comments
 (0)