Commit Graph

342 Commits

Author SHA1 Message Date
christos c6b70bdfe2 Use .PATH.c not .PATH otherwise builds without objdirs fail from biosboot_com0.
Reported by Tron.
2000-01-20 16:51:01 +00:00
drochner 8395a5e928 like com.c, raise DTR/RTS in console initialisation 2000-01-20 15:22:57 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
christos 1b02e0a7db Build biosboot_com0 too. 2000-01-15 01:17:12 +00:00
drochner 5d8a0c0ddd add a function which prints out the memory descriptors (for debugging) 1999-12-21 14:22:54 +00:00
drochner e5bc2ce76f add support for 3c905b-Combo 1999-12-02 13:21:48 +00:00
drochner 262d9092fc add media definition for 100baseTX 1999-12-02 13:20:56 +00:00
mycroft 6816b631ab Nit: Make bootrealseg conforming. 1999-11-07 01:06:37 +00:00
drochner db5d01fc72 back out the "ep"/"ex" guessing part of the previous - the check was
removed from the kernel and the device name is only informational now
1999-11-05 22:57:39 +00:00
mycroft 3c702c1d8d Recognize the 3c595, and use `ex' for 3c90x now. 1999-11-03 12:38:54 +00:00
mycroft dfc00b5b24 Back out the GDT changes in the previous. Didn't mean to commit that. 1999-11-03 09:55:32 +00:00
mycroft 1ee8f66dfe Picking a few nits...
* The direction flag wasn't set right in the presence of ROMDEBUG.
* There were missing data32's.
* We weren't as careful as we should be with relocations.
1999-11-03 09:28:15 +00:00
drochner e6d27a3a83 correct debug printf() to make it compile with DISK_DEBUG again,
closes PR kern/8718 by Takahiro Kambe
1999-11-02 16:52:25 +00:00
mycroft 093997a6f6 Remove totally gratuitous check on the unit number in dev2bios(). 1999-10-28 05:20:05 +00:00
drochner 353a512c22 create "machine" symlink 1999-10-25 20:27:48 +00:00
drochner 2c0e7cf113 allow to set boot timeout and password, following PR port-i386/8196
by Stephan Thesing
1999-09-10 16:45:27 +00:00
drochner 3e60c834ed install /boot -r-------- for security reasons 1999-09-10 16:41:10 +00:00
drochner 4486b15211 -make ustarfs optional (enabled per default) for cases where space is
scarce
-make the boot timeout patchable
-optionally, call checkpasswd() before the boot menu can be accessed
(The latter 2 follow PR port-i386/8196 by  Stephan Thesing.)
1999-09-10 16:38:46 +00:00
drochner 5c48b9a115 improve awaitkey()'s printout for >9 seconds 1999-09-10 16:23:55 +00:00
drochner 2914ef7fd2 sync with changes to if_fxp header,
thanks to <ks@ub.uni-mainz.de> for testing
1999-09-10 09:12:44 +00:00
ross 9efd996351 spelling 1999-09-07 18:27:58 +00:00
kleink 5663256d0a Unlike in an i386 a.out assembler, where in an .align n directive n is meant
to be the logarithm to base 2 of the alignment, in an ELF environment n is
the actual alignment boundary; thus, adjust the directives accordingly.

Albeit the wonderful i386 architecture doesn't mind the smaller alignment in
an obvious way, it is likely to have resulted in some performance penalty
during the a.out->ELF transition.
1999-08-23 08:24:36 +00:00
drochner 29a8d333b6 put biosdiskclose() inside LIBSA_NO_FS_CLOSE 1999-08-03 19:46:22 +00:00
drochner 7dab8cef61 fix logics in device recognition 1999-07-15 18:00:27 +00:00
kim 0dc60ae78c Build bootblocks to always use COM0 for console. 1999-07-11 01:23:53 +00:00
kim f93a90f888 Use same Makefile for biosboot_com0 too. 1999-07-11 01:22:45 +00:00
drochner 6211cd566c fix creation of DOS / ROM images from ELF executables: use "objcopy" 1999-07-08 14:32:28 +00:00
christos 2f1646ea98 Remove -DDEBUG 1999-07-06 14:37:05 +00:00
kim c867e93fae Pickup changes from ../biosboot/Makefile and add .PATH so that source
files are found.  Now this compiles ok (have yet to run the blocks).
1999-06-13 17:21:18 +00:00
drochner 19e64942a2 don't printf(NULL), not even in the DEBUG case
(It doesn't hurt the bootloader, but the junk output hangs my serial
console.)
1999-05-15 15:42:23 +00:00
drochner 998ac16bb7 add some casts for gcc -Wall, from David Rankin
<drankin@bohemians.lexington.ky.us> per PR port-i386/7554
1999-05-11 19:57:05 +00:00
drochner 6959d736df make sure the ./machine link is created early enough for specific targets,
fixes PR port-i386/7553 by David Rankin <drankin@bohemians.lexington.ky.us>
1999-05-11 19:43:09 +00:00
drochner fe310dd299 include <lib/libkern/libkern.h> for intoa()/inet_ntoa() 1999-05-07 16:19:27 +00:00
fvdl 4fbaa0b272 Restrict "out of CHS range" check to harddisks. 1999-05-04 17:14:55 +00:00
fvdl ec559f688b Be more careful with saving registers around the "out of CHS range" check. 1999-05-02 12:44:34 +00:00
christos 57e4b98787 - Use the proper multiply instructions so that we don't get truncated. 1999-04-30 15:31:17 +00:00
fvdl 48003b2c88 Only use int13 extensions if the sectors can not be read through the
older CHS interface. This works around stupid BIOSs who report that
int13 extensions are present and functional, but fail when you actually
use them. Like Adaptec SCSI BIOSs.
1999-04-28 23:24:42 +00:00
christos c5ec77e01b use new loadfile 1999-04-28 09:14:22 +00:00
christos 5317a4673a Use new loadfile 1999-04-28 09:14:07 +00:00
christos a030d021a7 Use new loadfile.c 1999-04-28 09:13:51 +00:00
drochner ca053f4364 remove an "unmodified" so that the copyright notice will hopefully match
pk's "BSD-style (clauses: 2; no acknowledgements)" pattern
1999-04-22 10:27:16 +00:00
drochner 982c55e22c another nit in error handling: don't try to print out a NULL filename
(which means "use default" and is dealt with properly by open())
1999-04-17 11:18:36 +00:00
christos 30ffed2123 remove bogus prototype for getopt 1999-04-14 15:22:46 +00:00
christos c70b4ad2a1 Add prototype for getsecs 1999-04-14 15:22:07 +00:00
drochner 1ecbaaabf8 this is now sys/lib/libsa/ufs_ls.c 1999-04-14 13:31:49 +00:00
hpeyerl 6cde76c6fe fix some copyright foo. 1999-04-14 12:56:33 +00:00
drochner e4841b3edf add prototypes, use ufs_ls() from mi libsa,
compile with -Wall -Wmissing-prototypes -Wstrict-prototypes -Wno-main
1999-04-14 11:53:43 +00:00
drochner 312eae2bf4 add prototypes, use ufs_ls() from mi libsa, revert to "void main()",
compile with -Wall -Wmissing-prototypes -Wstrict-prototypes -Wno-main
1999-04-14 11:45:39 +00:00
drochner dd0ed4267b add prototype 1999-04-14 11:19:23 +00:00
drochner 2d1e6a1f5a add prototypes, slight formatting changes 1999-04-14 11:17:04 +00:00
drochner ffd8d7c6d0 add prototypes
being here, format ala KNF
1999-04-14 10:57:59 +00:00
drochner 7d5e1f9211 fix error handling: almost all errors were ignored 1999-04-09 20:12:57 +00:00
drochner 552f55e726 Call bi_getbiosgeom() after loadfile() returned successfully. This avoids
a memory leak if loadfile() gets an error.
1999-04-08 18:21:15 +00:00
drochner 0ead10436a define VERSIONFILE, from John Darrow <John.P.Darrow@wheaton.edu>
per PR port-i386/7336
1999-04-08 10:23:23 +00:00
drochner 5d86b86370 #ifdef out the last change for the branch 1999-04-01 19:36:09 +00:00
drochner 3497f157fd On serious boot errors, dont lock the machine. Instead, wait 3 seconds
and call the ROM BASIC vector. This might behave differently on different
machines, but normally it allows to reboot without power-cycling.
1999-04-01 17:07:54 +00:00
drochner 99a84ef740 sync to changed biosdisk interface again 1999-04-01 16:09:49 +00:00
fvdl fb1b0e7a0b Shifting ecx without explicit prefix in real mode won't work. 1999-03-30 22:35:21 +00:00
drochner 17de7b2576 adapt to set_geometry change: we don't have to correct the geometry
anymore
1999-03-30 17:58:05 +00:00
drochner 62031ff978 fix some disk handling problems introduced in the last commits:
-read retries were botched, use the right sector count
-read-ahead buffer was effectively unused
-concentrate the handling of the weird BIOS geometry report at one place
-fallback for old floppies left cylinder count uninitialized
1999-03-30 17:55:48 +00:00
drochner 4feae58ec1 sync to changed geometry handling in the standalone code 1999-03-30 11:51:35 +00:00
fvdl b815df141c Only use the total number of sectors information field from the EDD if
the bit is set that declares the geometry valid. The spec itself says
that this field isn't covered by the "geometry valid" bit, but at
least one BIOS implements it that way.
1999-03-28 19:41:27 +00:00
sommerfe 82f8a7dee9 Turn off biosboot_ser until makefile issues get worked out.. 1999-03-14 05:50:38 +00:00
fvdl 35d517b9f1 Hack to make biosboot_ser work.
XXX The makefile structure in src/sys/arch/i386/stand is very bad.
1999-03-14 00:04:06 +00:00
tron 32e0182e15 $(OBJS) -> ${OBJS} 1999-03-13 20:58:25 +00:00
sommerfe fc47c0c742 Also build serial bootblocks by default, installing into
/usr/mdec/biosboot_ser.sym
Change Makefile.booters to not assume `version' file is in source directory.
1999-03-12 16:07:57 +00:00
sommerfe df8e0043e3 Fix compile warning in getcomaddr() 1999-03-12 04:14:37 +00:00
fvdl 8371eb7a88 Clean up the BIOS disk matching code a bit (better naming, one structure
and sysctl to export to userland). Also, only use total number of sectors
given in the extended parameters if the physical chs geometry is
marked invalid. Hopefully fixes a problem where BIOSs would not correctly
fill in this field.
1999-03-12 01:01:41 +00:00
fvdl bc38bb1052 Declare nhd to be unsigned char, as we're only copying one byte to it.
From Matthias Drochner.
1999-03-11 12:34:36 +00:00
drochner b477d700f2 add support for 3c905b TX 1999-03-10 10:37:38 +00:00
fvdl bdb770bc34 Create a list of native disks too, and make it retrievable. It contains
all matching BIOS disks per entry, so that we have complete match info.
Enable the matching code.
1999-03-10 01:28:24 +00:00
drochner 743494ae88 add a function to pass the "memory map" ie the outcome of INT15/0xe820,
to the kernel
1999-03-08 21:44:48 +00:00
drochner 0cb921e61e change the interface for getmementry() to hold the iterator in an
argument and to return success or error explicitely.
Now we can "error" and "end of list" cleanly; this should fix the
problem where the last list element was ignored.
1999-03-08 21:38:28 +00:00
fvdl f8e221511b * query BIOS geometry information, possibly using the int 13 extensions.
* pass them on to the kernel
* print a message if the 2nd stage bootloader returns (i.e. fails)
  instead of just hanging.
1999-03-08 00:09:24 +00:00
he e9f9c1625e Add handling of OMAGIC files, where exec header isn't part of the
text segment.  Needed for woring installboot, since biosboot.sym is OMAGIC.
1999-03-07 20:03:44 +00:00
fvdl 5a32d4bb8b Make bootblocks really work this time. From Christos. 1999-03-05 20:33:08 +00:00
christos 4b494ca224 Fix the symbol reading problem... 1999-03-04 20:46:23 +00:00
simonb 1397fd691b fix spel. 1999-03-01 12:46:16 +00:00
drochner d57c7b76ca replace ENTRY() label in data segment which broke the code completely 1999-02-28 11:45:44 +00:00
drochner 9e8c9e9594 -pull in exec.c, needed since loadfile.c
-don't pull in tftp.c anymore, it's in libsa now
1999-02-24 19:38:17 +00:00
drochner f1d1de8c7a moved to mi lib/libsa 1999-02-24 19:32:34 +00:00
drochner eac4e51111 redirect the linker's stderr to the protocol file too 1999-02-19 19:53:01 +00:00
drochner cb2e02af94 Make this compile and work again after the assembler update.
The new assembler doesn't allow 16-bit relocations involving arithmetics
with 32-bit variables. (The old one did silently truncate, which was
the right thing in our case.) Further, the new assembler uses to scatter
size prefixes around if the size of the operation is not explicitely
specified, even if the result is nonsense, eg for moves to segment
registers or control registers.
Add some debugging code (generating printouts) and comments.
Remove the !BOOTROM code which was intended for a DOS harness but isn't
that useful anymore.
Some cleanup and formatting to make it more similar to the other
startup code variants.
1999-02-19 19:48:06 +00:00
drochner fd3ad59373 make the ethernet address an unsigned char array to avoid sign extension
when it is printed
1999-02-19 19:30:46 +00:00
drochner 0ce9e35aae add boot ROM support for the DMA-only 3com network adapters, tested with
3c900b-Combo only for now
1999-02-19 19:22:52 +00:00
dean 6dc3d1eae8 Put back bsd.own.mk and added comment explaining why it must be included. 1999-02-14 02:56:19 +00:00
lukem dcab0210a0 convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
1999-02-13 02:54:17 +00:00
dean c372a9b915 Remove bsd.own.mk include 1999-02-12 23:48:46 +00:00
cjs 8a3ac60bb8 Change NOMAN to MKMAN. 1999-02-12 05:15:35 +00:00
cjs 3e90f302b6 Don't give exit() a parameter, as libstand version doesn't take one. 1999-02-12 05:14:22 +00:00
tron 2fefe24803 Remove "lib" directory only during "make cleandir" so that ".depend"
doesn't get nuked during "make clean".
1999-02-07 18:25:54 +00:00
tron 08c7376961 Remove "lib" directory created during build process while doing
"make clean" or "make cleandir".
1999-02-07 13:39:36 +00:00
christos 736a561afb Add my name in the copyright, since the code looks very different now. 1999-01-30 17:51:52 +00:00
christos 5699d1ab3d Remove exec.c from here. I want to make it obvious that it has to be built
with different flags from dosboot and biosboot. Although right now this
does not make a difference because we are building the libraries twice,
it can make a difference when we share the builds.
1999-01-30 17:46:53 +00:00
christos 07b1febfb8 - Use MARK_ENTRY instead of MARK_START.
- ELF changes. Now an ELF installboot installs ELF bootblocks properly.
1999-01-30 17:45:42 +00:00
christos 371363a158 Add exec.c here and bump version for elf.
XXX: This code has not been tested!
1999-01-30 17:44:10 +00:00
christos 25fc1fa758 Add exec.c here... 1999-01-30 17:43:38 +00:00
christos ad9c7a287c Remove exec.o, and make necessary changes for elf. 1999-01-30 17:43:10 +00:00
thorpej 191dab44fa Um, last rev was kind of backwards... actually build exec.o so that
the boot block links.
1999-01-29 22:13:42 +00:00
christos e58bb79483 Merge XMS changes from exec_fromdos.c 1999-01-29 18:49:08 +00:00