minor corrections by M.Taguchi
[reactos.git] / freeldr / freeldr / CHANGELOG
1 Changes in v1.8.19 (12/20/2003) (ekohl)
2
3 - Detect PS/2 Port and Pointer Device (Mouse).
4 - Calculate CPU speed.
5 - Fixed delay counter overrun.
6
7 Changes in v1.8.18 (12/14/2003) (ekohl)
8
9 - Detect serial ports and serial pointer devices (Mice/Trackballs)
10
11 Changes in v1.8.17 (10/19/2003) (ekohl)
12
13 - Ignore case of registry key and value names
14
15 Changes in v1.8.16 (10/12/2003) (ekohl)
16
17 - Renamed a lot of variables and functions in the registry
18 - Fixed buggy cell size calculation
19
20 Changes in v1.8.15 (8/29/2003) (chorns)
21
22 - Add top-level makefile
23 - Add fdebug/.cvsignore
24 - Don't use rdel to remove files in tools/Makefile
25 - Remove warning in freeldr/mm/meminit.c
26
27 Changes in v1.8.14 (8/10/2003) (chorns)
28
29 - Clear screen to black when booting ReactOS
30
31 Changes in v1.8.13 (6/05/2003) (brianp)
32
33 - Added support for booting Linux 2.4.x kernels
34 - i386 exception handler now reports FreeLoader version number
35
36 Changes in v1.8.12 (5/25/2003) (ekohl)
37
38 - Added .inf-file parser
39 - SetupLdr loads and uses txtsetup.sif
40 - Removed .hiv (text-hive) parser
41
42 Changes in v1.8.11 (4/30/2003) (ekohl)
43
44 - Added DiskGetExtendedDriveParameters()
45 - Moved hardware detection into the arch directory
46 - Rewrote/completed harddisk detection
47 - Removed PCI and IDE detection
48 - Added basic CPU detection
49
50 Changes in v1.8.10 (4/27/2003) (chorns)
51
52 - Query BIOS for supported disk drives
53
54 Changes in v1.8.9 (4/25/2003) (chorns)
55
56 - Detect PCI busses
57 - Detect IDE controllers and devices
58 - Improved RegEnumValue()
59
60 Changes in v1.8.8 (4/25/2003) (ekohl)
61
62 - Added memmove().
63 - Added hardware hive export.
64
65 Changes in v1.8.7 (4/22/2003) (brianp)
66
67 - Added a file system recognizer to get around problems where
68 the partition id did not match the file system type.
69
70 Changes in v1.8.6 (4/14/2003) (brianp)
71
72 - Fixed a bug in fathelp.asm where is wasn't adding the hidden sector
73 count before performing a subtraction.
74
75 Changes in v1.8.5 (4/10/2003) (ekohl)
76
77 - Added support for binary system hive.
78
79 Changes in v1.8.4 (4/5/2003) (chorns)
80
81 - Added DOS compatible Master Boot Record (MBR)
82
83 Changes in v1.8.3 (3/18/2003) (brianp)
84
85 - Added _alloca() function because Mingw32 generates code that needs it
86 - Defined _mainCRTStartup in fathelp.asm because Mingw32 looks for that symbol
87
88 Changes in v1.8.2 (1/24/2003) (ekohl)
89
90 - Relaxed check for Int13-Extension support.
91 Some BIOSes have a strange opinion about what is supported. :-/
92
93 Changes in v1.8.1 (1/20/2003) (ekohl)
94
95 - Fixed the ISO filesystem detection code.
96 - Removed IsSetupLdr.
97
98 Changes in v1.8 (1/18/2003) (brianp)
99
100 - Added F8 options menu
101 - Added custom Boot functionality
102 - Moved all OS= settings from [FreeLoader] section to [Operating Systems] section.
103 - Removed MessageLine= setting. MessageBox= now accepts "\n" as an escape character for newlines.
104 - Added descriptions for disk error codes returned by the BIOS.
105 - Device names like "fd0" and "hd0" and "hd1" as well as BIOS drive numbers can now be used as BootDrive= settings.
106
107 Changes in v1.7.12 (12/05/2002) (brianp)
108
109 - Minor tweak to UI code to allow description
110 text to be displayed along with the progress
111 bar.
112
113 Changes in v1.7.11 (12/05/2002) (brianp)
114
115 - Added memory map count to GetBiosMemoryMap() so that
116 it doesn't just assume the size of the array.
117 - Fix so that we use the continuation value that
118 the BIOS returns.
119
120 Changes in v1.7.10 (11/24/2002) (brianp)
121
122 - Added assembler versions of memcmp() memcpy() memset()
123 - Implemented Int386() so that real-mode interrupts can be called from C-code
124 - Removed unnecessary call in DbgPrint() macro (freeldr.sys is ~16k smaller now)
125 - 64-bit lba sector addressing for disk calls
126 - Re-coded biosdisk.S as i386disk.c
127 - Re-coded mem.S as i386mem.c
128 - Re-coded rtlcode.S as i386rtl.c
129 - Cleaned up i386trap.S so that it only saves the registers once.
130 - Re-coded biosvid.S as i386vid.c
131 - Video fade in/out
132 - VESA text modes supported now
133 - Offscreen buffering to remove flicker
134 - Standardized format of boot sector so that BootPartition is stored right before 0xaa55
135 - Prefixed all file system functions with 'Fs'
136
137 Changes in v1.7.9 (9/30/2002) (brianp)
138
139 - Fix for bug in BiosInt13ReadExtended() (biosdisk.S)
140 by Christophe Bothamy & Mike Lerwill
141
142 Changes in v1.7.8 (9/7/2002) (ekohl)
143
144 - Added new 'bootcd' target.
145 - Removed/disabled debugging code.
146 - SetupLdr must not call BiosInt13ExtensionsSupported to check
147 extended int13 capabilities because they are already used to
148 boot a CD and some BIOSes return incorrect results when a CD-ROM
149 drive is checked.
150
151 Changes in v1.7.7 (9/5/2002) (ekohl)
152
153 - fs/iso.c: Got iso-fs working again.
154 - reactos/setupldr.c: Implemented very simple setup loader.
155
156 Changes in v1.7.6 (8/31/2002) (ekohl)
157
158 - bootsect/isoboot.asm: Reduced read transfer size to ensure that
159 the read buffer for an int13/ah=42h (exended read) does not
160 cross a segment boundary.
161 - freeldr.c, bootmgr.c, setupldr.c, makefile: Renamed
162 LoadBootManager() and ReactOSRunSetupLoader() to RunLoader().
163 Either bootmgr.o or setupldr.o is used to build freeldr.sys or
164 setupldr.sys
165
166 Changes in v1.7.5 (8/21/2002) (brianp)
167
168 - biosvid.S (BiosVideoDisableBlinkBit): Added code to
169 disable the blink bit in the text mode character
170 attribute byte so that the full range of
171 background colors can be used.
172
173 Changes in v1.7.4 (8/20/2002) (brianp)
174
175 - Boot sector code now reports to freeldr.sys the partition
176 that it was installed on. This is specified by a byte
177 value in the boot sector code. By default the boot partition
178 is set to zero which indicates the active (bootable)
179 partition, unless the installer sets the value to non-zero.
180 If FreeLoader is installed on a partition other than
181 the active (bootable) partition then the installer must
182 set this byte to that partition number. Otherwise
183 FreeLoader will not be able to find freeldr.ini.
184 - i386trap.S: Added debug macros BREAKPOINT(),
185 INSTRUCTION_BREAKPOINTX(), MEMORY_READWRITE_BREAKPOINTX(), &
186 MEMORY_WRITE_BREAKPOINTX().
187 - partition.c (DiskGetPartitionEntry): Add the relative offset
188 of the extended partition to the partitions start sector.
189 - ext2.c (Ext2ReadBlockPointerList, Ext2CopyIndirectBlockPointers,
190 Ext2CopyDoubleIndirectBlockPointers, Ext2CopyTripleIndirectBlockPointers):
191 Rewrote the block pointer functions so they actually work.
192 - ini_init.c (IniFileInitialize, IniOpenIniFile): Looks for freeldr.ini
193 on both the active (bootable) partition and the partition
194 passed in from the boot sector code.
195 - meminit.c (MmInitializeMemoryManager, MmFixupSystemMemoryMap,
196 MmGetEndAddressOfAnyMemory, MmGetAddressablePageCountIncludingHoles,
197 MmInitPageLookupTable): Fixed bug that would cause FreeLoader to
198 have an off-by-one error when accessing the last entry in the
199 page lookup table on systems with 4GB of memory (or memory mapped
200 at the end of the address space).
201
202 Changes in v1.7.2 (8/7/2002) (brianp)
203
204 - Fragment size must be equal to the block size
205
206 Changes in v1.7.1 (8/7/2002) (brianp)
207
208 - Symbolic links on EXT2/3 are now supported
209
210 Changes in v1.7 (8/6/2002) (brianp)
211
212 - EXT2/EXT3 file system support.
213 - Does not yet support symbolic links or booting from an EXT2/3 partition.
214 - Fixed bug in UI code.
215 - Added '%%' format specifier to printf()-like functions.
216 - Added functions __udivdi3 & __umoddi3 so that 64-bit division is now supported.
217 - Changed types BYTE, WORD, DWORD, LONG, ULONG to U8, U16, U32, S32, U32
218 so that you know the size of the variable across different
219 architectures with different sized words & dwords, etc.
220 - Types CHAR, UCHAR, PCHAR, PUCHAR, WCHAR, PWCHAR have not been
221 changed yet (I haven't decided exactly how I'm going to handle unicode)
222
223 Changes in v1.6.2 (7/28/2002) (brianp)
224
225 - Fix for GetFatEntry16 bug (fathelp.asm) by Mike Lerwill
226
227 Changes in v1.6.1 (7/22/2002) (brianp)
228
229 - Fix for disk caching while doing drive remapping
230
231 Changes in v1.6 (7/21/2002) (brianp)
232
233 - Added BIOS drive mapping functionality
234
235 Changes in v1.5 (7/13/2002)
236
237 - If symbols are available then pass them to the OS as multiboot modules
238
239 Changes in v1.4 (6/27/2002)
240
241 - Added separate configuration for a SETUPLDR version
242
243 Changes in v1.3.1 (6/8/2002)
244
245 - Implemented MmAllocateMemoryAtAddress()
246 - Fixed Linux boot code to go through the memory manager to allocate memory at 1MB
247
248 Changes in v1.3 (6/5/2002)
249
250 - Added protected mode exception handling in case FreeLoader crashes
251 - Reworked memory manager to use all of extended memory
252 - Reworked UI code, now supports multiple text-mode resolutions
253
254 Changes in v1.2.2 (5/4/2002)
255
256 - Fixed memory leak in menu.c
257
258 Changes in v1.2.1 (5/3/2002)
259
260 - Makefile updates
261 - Optimized the Makefile
262 - Removed recursive make functionality (builds much faster now)
263 - Places all output into one single directory
264 - Added automagically generated dependencies
265
266 Changes in v1.2 (4/30/2002)
267
268 - All Linux kernels are supported (zImage & bzImage, loaded high & low)
269 - Initrd support
270 - FreeLoader now compiles under Mingw32 instead of just DJGPP, but
271 the Mingw32 linker seems to output a corrupt binary.
272
273 Changes in v1.01 (4/28/2002)
274
275 - Fixed FAT short file name buffer overflow that was causing
276 some long filenames not to work correctly.
277
278 Changes in v1.0 (4/24/2002)
279
280 - FreeLoader version 1.0!
281 - Supports booting ReactOS
282 - Supports booting Linux bzImage kernels
283 - No initrd support (yet)
284 - No zImage support (yet)
285 - No ext2 file system support (yet)
286 - Supports FAT & ISO-9660 file systems
287 - Forward slashes '/' as well as backslashes '\' can be used
288 for path names in FAT & ISO-9600
289 - Fixed bug in LBA code where it was only reading one sector
290 even if you asked for more
291 - Fixed bug in FAT code, was also present in ISO-9660 code where
292 it wasn't incrementing the buffer address correctly