Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Adam b4a8d373d8
Create README.md
5 years ago
..
messages/usa initial commit 5 years ago
8514btns.bmp initial commit 5 years ago
8514mrks.bmp initial commit 5 years ago
aaa.c initial commit 5 years ago
addprm.c initial commit 5 years ago
bitmaps.h initial commit 5 years ago
cache.c initial commit 5 years ago
center.bms initial commit 5 years ago
cgabtns.bmp initial commit 5 years ago
cgamarks.bmp initial commit 5 years ago
ch.h initial commit 5 years ago
chlook.c initial commit 5 years ago
chngwin.c initial commit 5 years ago
clipbord.c initial commit 5 years ago
clipbrd2.c initial commit 5 years ago
clipdisp.c initial commit 5 years ago
cmacros2.inc initial commit 5 years ago
cmacros3.inc initial commit 5 years ago
cmd.c initial commit 5 years ago
cmddefs.h initial commit 5 years ago
code.h initial commit 5 years ago
commdlg.c initial commit 5 years ago
createww.c initial commit 5 years ago
curskeys.c initial commit 5 years ago
d_disp.c initial commit 5 years ago
d_form1.c initial commit 5 years ago
d_selec2.c initial commit 5 years ago
dbcs.h initial commit 5 years ago
debug.c initial commit 5 years ago
debug.h initial commit 5 years ago
diaalert.c initial commit 5 years ago
diachgpr.c initial commit 5 years ago
diadiv.c initial commit 5 years ago
diapara.c initial commit 5 years ago
diaprint.c initial commit 5 years ago
diarepag.c initial commit 5 years ago
diasubs.c initial commit 5 years ago
disp.c initial commit 5 years ago
dispdefs.h initial commit 5 years ago
dlgdefs.h initial commit 5 years ago
doc.c initial commit 5 years ago
docdefs.h initial commit 5 years ago
doprm.c initial commit 5 years ago
doslib.asm initial commit 5 years ago
doslib.h initial commit 5 years ago
double.bms initial commit 5 years ago
dtabbtn.bms initial commit 5 years ago
dtabmark.bms initial commit 5 years ago
edit.c initial commit 5 years ago
editdefs.h initial commit 5 years ago
editftn.c initial commit 5 years ago
editpgtb.c initial commit 5 years ago
editsect.c initial commit 5 years ago
edm.edm initial commit 5 years ago
egabtns.bmp initial commit 5 years ago
egamarks.bmp initial commit 5 years ago
fetch.c initial commit 5 years ago
ffdefs.h initial commit 5 years ago
file.c initial commit 5 years ago
filedefs.h initial commit 5 years ago
fileres.c initial commit 5 years ago
filespec.wri initial commit 5 years ago
fileutil.c initial commit 5 years ago
fkpdefs.h initial commit 5 years ago
fmtdefs.h initial commit 5 years ago
fontdefs.h initial commit 5 years ago
fontdlg.c initial commit 5 years ago
fontenum.c initial commit 5 years ago
fontutil.c initial commit 5 years ago
form1.c initial commit 5 years ago
format.asm initial commit 5 years ago
format2.c initial commit 5 years ago
globdefs.h initial commit 5 years ago
globdefs.itl initial commit 5 years ago
globdefs.knj initial commit 5 years ago
heapdata.h initial commit 5 years ago
heapdefs.h initial commit 5 years ago
heapinit.c initial commit 5 years ago
heapmain.c initial commit 5 years ago
heaprare.c initial commit 5 years ago
help.c initial commit 5 years ago
indent.bms initial commit 5 years ago
initmmw.c initial commit 5 years ago
initwin.c initial commit 5 years ago
insert.c initial commit 5 years ago
insert.tmp initial commit 5 years ago
insert2.c initial commit 5 years ago
insertco.c initial commit 5 years ago
jumppage.c initial commit 5 years ago
just.bms initial commit 5 years ago
kanji.h initial commit 5 years ago
kmake.bat initial commit 5 years ago
kmakend.bat initial commit 5 years ago
left.bms initial commit 5 years ago
lib.asm initial commit 5 years ago
lmargin.bms initial commit 5 years ago
loadfnt2.c initial commit 5 years ago
loadfont.c initial commit 5 years ago
looks.h initial commit 5 years ago
ltabbtn.bms initial commit 5 years ago
ltabmark.bms initial commit 5 years ago
machdefs.h initial commit 5 years ago
macro.h initial commit 5 years ago
mainloop.c initial commit 5 years ago
makefile initial commit 5 years ago
mdoc.c initial commit 5 years ago
menu.c initial commit 5 years ago
menudefs.h initial commit 5 years ago
mergedef.h initial commit 5 years ago
mglobals.c initial commit 5 years ago
mlink.sed initial commit 5 years ago
mmw.c initial commit 5 years ago
mouse.c initial commit 5 years ago
mouse.h initial commit 5 years ago
msseqds.asm initial commit 5 years ago
mw.h initial commit 5 years ago
mwhires.cur initial commit 5 years ago
mwlores.cur initial commit 5 years ago
obj.c initial commit 5 years ago
obj.h initial commit 5 years ago
obj2.c initial commit 5 years ago
obj3.c initial commit 5 years ago
objmini.asm initial commit 5 years ago
objpsp.c initial commit 5 years ago
objreg.c initial commit 5 years ago
objreg.h initial commit 5 years ago
open.c initial commit 5 years ago
pageinfo.c initial commit 5 years ago
pictdrag.c initial commit 5 years ago
picture.c initial commit 5 years ago
picture2.c initial commit 5 years ago
pmscur.cur initial commit 5 years ago
preload.h initial commit 5 years ago
print.c initial commit 5 years ago
print2.c initial commit 5 years ago
print3.c initial commit 5 years ago
printdef.h initial commit 5 years ago
printdlg.c initial commit 5 years ago
prmdefs.h initial commit 5 years ago
propdefs.h initial commit 5 years ago
quit.c initial commit 5 years ago
rare.c initial commit 5 years ago
readme.txt initial commit 5 years ago
right.bms initial commit 5 years ago
rmargin.bms initial commit 5 years ago
ruler.c initial commit 5 years ago
ruler2.c initial commit 5 years ago
ruler3.c initial commit 5 years ago
rulerdef.h initial commit 5 years ago
running.c initial commit 5 years ago
screen.c initial commit 5 years ago
scrnchng.c initial commit 5 years ago
scrndefs.h initial commit 5 years ago
scrollhz.c initial commit 5 years ago
scrollvt.c initial commit 5 years ago
search.c initial commit 5 years ago
select.c initial commit 5 years ago
select2.c initial commit 5 years ago
selectsp.c initial commit 5 years ago
single.bms initial commit 5 years ago
sp15.bms initial commit 5 years ago
state.rst initial commit 5 years ago
stcdefs.h initial commit 5 years ago
str.h initial commit 5 years ago
tags initial commit 5 years ago
toolbox.h initial commit 5 years ago
trans2.c initial commit 5 years ago
trans3.c initial commit 5 years ago
trans4.c initial commit 5 years ago
transbuf.c initial commit 5 years ago
transfer.c initial commit 5 years ago
txb.h initial commit 5 years ago
undo.c initial commit 5 years ago
util.c initial commit 5 years ago
util2.c initial commit 5 years ago
vgabtns.bmp initial commit 5 years ago
vgamarks.bmp initial commit 5 years ago
winddefs.h initial commit 5 years ago
write.def initial commit 5 years ago
write.ico initial commit 5 years ago
write.itl initial commit 5 years ago
write.knj initial commit 5 years ago
write.sed initial commit 5 years ago
wwactde.c initial commit 5 years ago
wwdefs.h initial commit 5 years ago

readme.txt

/************************************************************/
/* Windows Write, Copyright 1985-1990 Microsoft Corporation */
/************************************************************/

** 21-January-1988

MS-WRITE for version 2.0 of Windows is a weird bird in that it
cannot be compiled with standard tools (ie: MASM 5.0 etc.). You will
need to set up a separate environment from which to make it using the
tools in the \WRITE\TOOLS subdirectory. We are sorry for this inconvenience
and will attempt to remedy this in future versions of MS-WINDOWS.

Sincerely,

OEM Support Group

** 27-February-1989
pault

I am trying to remove the above restriction. The Win "DEV" SLM project is
being used to build MS-WRITE for Windows 3.0, currently without problems.
Make sure autoexec references are made/added as follows:
set path=\dev;\dev\tools
set include=\dev\inc
set lib=\dev\lib

WRITE is the makefile for this project. DO NOT USE MAKEFILE -- I do not
know where it came from or why it's here, and of course we may learn that
things are not currently as rosy as we believe, but this is how I *THINK*
the product has been made in the past...

MAKE WRITE MAKE "DEBUGDEF=-DDEBUG" "DFLAGS=/Zd" WRITE
builds the standard builds a debugging version
release version


** 28-March-1989
pault

The above procedure was not generating quite the same WRITE.EXE as we've
previously had (Win 2.x). In talking with anyone who's ever been involved
at all, this is the information I have learned:

1. Nobody wants this product or claims responsibility for it.
2. It has been a nightmare for everyone who has worked on, with,
or around it.
3. The international version was incorporated at some time during
2.x and is now "built in".
4. There was at one time an online help system designed which was
never included in a shipped version.
5. The 6 or 8 batch files, .libs, and makefiles "makefile" and
"wrtmake" are for the 2.x version; since we have since grown up
I am removing them...
6. The K*.* files (or *.K* files) apply to the Kanji make process and
they have N-O-T been updated yet, but are being left in the project
(i.e. they must be modified or add to the "write" makefile). Also
see the file EDM.EDM (hey, file naming is our specialty here at MS).

I have made mods to the project and "write" makefile to incorporate the
subtle changes from 2.x. Variations of the make process are/will be
documented inside the makefile.


** 8-June-1989
pault

In order to ease localization of this product, all string-related info
in GLOBDEFS.H should really be moved to WRITE.RC because that's where
it belongs and it'll also make things a lot cleaner. [True for Kanji?]


** 31-August-1989
pault

Due to major changes in Write.rc and the split into Write.dlg, whoever
takes on the task of localization to Intl or Kanji should be sure to
start over with the new Write.rc and Write.dlg.


** 18-October-1989
pault

I've just made a major revision with regard to font handling in Write.
The first one was to make sure that the endmark is always displayed in
the system font. The Kanji version already ensured this so I grouped
all the code concerning this under the define 'SYSENDMARK', and enabled
it in the Z version.

The second one was to revamp font enumeration... (under 'NEWFONTENUM')

Old method: Call EnumFonts to get a list of fonts available, and "filter
out" fonts which did not match our desired aspect ratio (based
on the overall display dimensions). In addition, any fonts
which were not the ANSI character set (i.e. the tmCharSet or
lfCharSet fields in the TEXTMETRICS and LOGFONT structures,
respectively) were "swallowed". A specific byproduct of this
was that screen fonts such as Modern, Script, Symbol, etc.
could not be used in Write.

New method: Call EnumFonts to get a list of fonts available. No filtering-
out is done. The major problem here became an issue with the
Write file format: the font name and font family are stored in
the document but naturally not the appropriate character set
value (since only ANSI had been previously allowed). So now
when we read a new document in, we enumerate all the fonts and
then for each font in the doc we try to match up the correct
character set value.

This slows things down ever-so-slightly and we also have the
possibility of getting confused if someone names a font of one
character set the same as one of a different character set, but
there wasn't much alternative -- it was either make this kind
of guess or revise the file format which would have created a
lot more problems at this point.


** 23-October-1989

FernandD has worked on the localization issue mentioned above and checked
in changes for Rel 1.46


** 24-October-1989
pault

One change involved in the above NEWFONTENUM was to use FORM1.C instead
of the (presumably) faster FORMAT.ASM. So this sparks the idea to keep
a list of some performance ideas for future use...

done? task
----- ----
1) handcode critical routines (including the use format.asm
instead of form1.c)
2) make use of register vars
3) chipa suggests breaking up really large segments, and eliminating
very small ones
X 4) remove inefficient lockdown of dialog procs, etc. not sure
why this is currently done but it forces a large amount of
code to be fixed at write startup, and this hampers the general
idea of movable segments in a winapp!
5) remove use of C run-time libs

** 25-October-1989

It has just been decided to remove support for ExtDeviceMode from Write
(primarily because none of the other apps had it!) This means that when
you change Printer.Setup inside Write, that affects the global Windows
printer settings (rather than just those for the current Write session).