[Date Prev][Date Next][Subject Prev][Subject Next][Date Index][Subject Index]
Re: Project Update: #01 | Xywrite 4.13 RE Update | Build #0153 |
- Subject: Re: Project Update: #01 | Xywrite 4.13 RE Update | Build #0153 |
- From: Harry Binswanger <dmarc-noreply@xxxxxxxxxxxxx>
- Date: Sun, 19 Apr 2026 11:01:46 -0400
XyGhost,
1. To be clear, are you asking for old versions of installed NB.EXE that
I could find on old but still bootable PCs?
2. I repeat my top priority wish list:
a.
unlimited undo (or as unlimited as say Notepad's undo)
b. no <
64k memory limits on things like XPL program size
c. a
working DOS or DO command--hopefully not requiring shelling out to DOS
and returning
Next in priority would be appearance: window fonts etc.
FWIW,
Harry
At 12:38 PM 4/14/2026, you wrote:
All,
I just want to share a few updates with the group. I'm very close to
getting this project across the finish line. I was able to create a build
version that is an exact match to the original, with only minor patching
of the relocations&emdash;the last ~150 or so are still giving me
problems.
As it stands, about 99% of the source code has been recovered, with minor
patching of the NE header and relocations. However, I’m continuing
to push to solve this last piece so the development tools can do the work
for me&emdash;assembling and linking to create a proper 100% match with
the same MD5 as the original.
That said, the current source code could already be used to start fixing
bugs, addressing errors, adding new features, and possibly even planning
a port to a modern OS.
I also welcome any ideas for new features, bugs to prioritize, and
suggestions on the best path forward for evolving the source code and
porting it to modern platforms.
On the resources side, I was able to recover all assets used in XYWrite
4.13. I now have two .rc files and two .res files, along with all icons,
BMPs, cursors, etc. The EXE itself contains approximately 82KB of
resources.
At this point, I’d like to ask again if anyone has NB versions
5&endash;8 and/or 10 (I already have 9 for testing&emdash;NOT, I repeat
NOT, for RE; I’m not going down that path with NB). Also, has
anyone been able to find versions of editor.exe, I’m still actively
searching for it?
Thank you, and until the next update.
Best,
----
Original: ORIGINAL\XW\XW.EXE
774,800
bytes
Built: BIN\XW.EXE
773,568
bytes
Delta: -1,232 bytes (-0.16%)
NE offset: orig=0x0400 built=0x0400
==============================================================================================================
==============================================================================================================
SECTION 1: NE HEADER &emdash; SIDE-BY-SIDE COMPARISON
==============================================================================================================
Field
Offset
Original
Built Match
------------------------------ ------ --------------
-------------- ------
ne_signature
0x00
'NE'
'NE' YES
linker_ver_major
0x02
5
5 YES
linker_ver_minor
0x03
13
13 YES
entry_table_offset
0x04
0x0422
0x0422 YES
entry_table_size
0x06
302
302 YES
crc
0x08
0x213306CA 0x84841247 ** NO
flags
0x0C
0x030A
0x030A YES
auto_data_seg_index
0x0E
81
81 YES
initial_heap_size
0x10
900
900 YES
initial_stack_size
0x12
8192
8192 YES
entry_ip
0x14
0x8593
0x8593 YES
entry_cs_index
0x16
70
69 ** NO
initial_sp
0x18
0x0000
0x0000 YES
initial_ss_index
0x1A
81
81 YES
segment_count
0x1C
81
81 YES
module_ref_count
0x1E
10
10 YES
nonres_name_tbl_size
0x20
725
725 YES
seg_table_offset
0x22
0x0040
0x0040 YES
resource_table_offset
0x24
0x02C8
0x02C8 YES
resident_name_offset
0x26
0x0348
0x0348 YES
module_ref_offset
0x28
0x034E
0x034E YES
import_name_offset
0x2A
0x0362
0x0362 YES
nonresident_name_offset
0x2C
0x00000950 0x00000950 YES
movable_entry_count
0x30
49
49 YES
alignment_shift
0x32
4
4 YES
resource_seg_count
0x34
0
0 YES
target_os
0x36
2
2 YES
os2_exe_flags
0x37
0x00
0x00 YES
ret_thunk_offset
0x38
0x0000
0x0000 YES
seg_ref_thunk_offset
0x3A
0x0000
0x0000 YES
min_code_swap_size
0x3C
0
0 YES
expected_win_ver
0x3E
0x0300
0x0300 YES
------------------------------ ------ --------------
-------------- ------
Header fields matching: 30/32
--- MZ DOS Stub ---
MZ stub size: orig=1024 built=1024 match=YES
====================================================================================================
OVERALL SUMMARY
====================================================================================================
Total segments: 81
Byte-identical: 74
(91.4%)
Tier-1 (trivial): 7
Tier-2 (close):
0
Tier-3 (moderate): 0
Tier-4 (significant): 0
Tier-5 (major):
0
Segment bytes (orig): 672,735
Segment bytes (built): 672,735
Byte match (overlap): 669,267 / 672,735
(99.48%)
File
delta:
-1,232 (-0.16%)
NE overhead orig:
102,065 (headers + relocs + alignment)
NE overhead built:
100,833
Overhead
delta:
-1,232
--
====================================================================================================
PHASE 6 -- XW.EXE SEGMENT AUDIT REPORT
====================================================================================================
Original: 774,800 bytes (81 segments)
Built: 773,568 bytes (81 segments)
Delta: -1,232 bytes (-0.16%)
====================================================================================================
Seg Type Orig Built
Delta Byte% 1g
2g 3g 4g 5g
Tier 1stDiff
----------------------------------------------------------------------------------------------------
1 CODE 8673
8673 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
2 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
3 CODE 5543
5543 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
4 CODE 14383
14383 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
5 CODE 3407
3407 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
6 CODE 10776
10776 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
7 CODE 13173
13173 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
8 CODE 4144
4144 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
9 CODE 8734
8734 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
10 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
11 CODE 10894
10894 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
12 CODE 15847
15847 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
13 CODE 8286
8286 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
14 CODE 13243
13243 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
15 CODE 5128
5128 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
16 CODE 13000
13000 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
17 CODE 14783
14783 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
18 CODE 7644
7644 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
19 CODE 7913
7913 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
20 CODE 10077
10077 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
21 CODE 4079
4079 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
22 CODE 30216
30216 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
23 CODE 1421
1421 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
24 CODE 8578
8578 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
25 CODE 20600
20600 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
26 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
27 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
28 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
29 CODE 7088
7088 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
30 CODE 3733
3733 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
31 CODE
25 25 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
32 CODE 22862
22862 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
33 CODE 1342
1342 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
34 CODE 4321
4321 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
35 CODE 5084
5084 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
36 CODE 2149
2149 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
37 CODE 11951
11951 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
38 CODE 3884
3884 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
39 CODE 3884
3884 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
40 CODE 3234
3234 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
41 CODE 934
934 +0 100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
42 CODE 6578
6578 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
43 CODE 2998
2998 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
44 CODE 6731
6731 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
45 CODE 14004
14004 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
46 CODE 8175
8175 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
47 CODE 14516
14516 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
48 CODE 4194
4194 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
49 CODE 7239
7239 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
50 CODE 6866
6866 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
51 CODE 11161
11161 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
52 CODE 21537
21537 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
53 CODE 5049
5049 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
54 CODE 9140
9140 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
55 CODE 8056
8056 +0 99.8% 0.999 0.997 0.995 0.993
0.990 TIER-1 0x1CAF
56 CODE 2155
2155 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
57 CODE 701
701 +0 100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
58 CODE 1435
1435 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
59 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
60 CODE
24 24 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
61 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
62 CODE 9153
9153 +0 95.8% 0.984 0.959 0.923 0.882
0.839 TIER-1 0x0E05
63 CODE 297
297 +0 100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
64 CODE 4303
4303 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
65 CODE 2584
2584 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
66 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
67 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
68 CODE
1 1 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
69 CODE 22079
22079 +0 95.9% 0.984 0.963 0.933
0.896 0.853 TIER-1 0x003A
70 CODE 37423
37423 +0 95.8% 0.990 0.973 0.939
0.896 0.846 TIER-1 0x0040
71 CODE 8872
8872 +0 97.0% 0.993 0.980 0.954 0.924
0.885 TIER-1 0x00DB
72 CODE 5756
5756 +0 95.2% 0.965 0.927 0.887 0.841
0.793 TIER-1 0x0017
73 DATA 37390
37390 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
74 DATA 37390
37390 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
75 DATA
0 0 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
76 DATA 5846
5846 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
77 DATA 3643
3643 +0 100.0% 1.000 1.000 1.000 1.000
1.000 DONE n/a
78 DATA
15 15 +0
100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
79 DATA 207
207 +0 100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
80 DATA 868
868 +0 100.0% 1.000 1.000 1.000 1.000 1.000
DONE n/a
81 DATA 55307
55307 +0 99.9% 0.999 0.998 0.997
0.996 0.995 TIER-1 0x0DD6
----------------------------------------------------------------------------------------------------
TOT 672735
672735 +0
Segment totals: orig=672,735 built=672,735
delta=+0
NE overhead: orig=102,065
built=100,833 delta=-1,232
(headers + relocation fixups + alignment padding)
EXE file:
orig=774,800 built=773,568 delta=-1,232