source: rtems/c/README.DOS @ bf4cdb70

4.104.114.84.95
Last change on this file since bf4cdb70 was 8bdcfc4, checked in by Joel Sherrill <joel.sherrill@…>, on 12/19/95 at 20:26:32

changes remerged after disk crash -- history lost

  • Property mode set to 100644
File size: 3.1 KB
Line 
1#
2#   $Id$
3#
4
5tools
6-----
7The RTEMS build procedure was designed with the capabilitiies of a
8typical UNIX computer in mind.  Making this procedure work under MS-DOS
9is not that difficult but requires that MS-DOS versions of a number
10of UNIX utilities be acquired and installed.  For time being, the
11best advice which can be offered is:
12
13    "This is a nasty question, since when I first set up the DOS machine
14     (long before I acquired RTEMS) I ftp'd a bunch of different tool
15     sets (all from SimTel), and then picked individual tools from each
16     set that worked best for me.  The djgpp tools are probably a good
17     starting point, especially to get a working sed.  Next the gnu tools
18     in SimTel/msdos/gnuish, and then others.  Sorry I can't give you more
19     specific names.  The only real requirement for the tools is that
20     they *must* accept redirection of command line arguments from a file
21     using the '@' notation (i.e., "mkdir @/tmp/args" reads the argument
22     list from file /tmp/args)."
23
24There is a special version (source and executable) of GNU make 3.71 for
25MS-DOS which minimizes the amount of memory used by recursive makes
26available on lancelot.gcs.redstone.army.mil in the file:
27
28/pub/msdos/gmake371.tgz
29
30Many of the RTEMS specific utilities used in the build and installation
31are UNIX shell scripts.  On a UNIX host, these are normally interpreted
32by the Bourne Again Shell (BASH) or the Korn Shell (ksh).  Most of these
33scripts can be successfully executed with the following shell from the
34MS-DOS archives from Simtel.
35
36SimTel/msdos/sysutil/ms_sh23b.zip
37
38Please be sure to use the 16-bit version.  The Simtel archives are
39available from ftp.cdrom.com as well as a number of mirror sites.
40
41go32
42----
43go32 dumps the stack when a program seg-faults, and if this happens while
44on an alternate stack an infinite loop can ensue.  Setting the environment
45variable GO32="core /tmp/core" will prevent more than 20 lines or
46so of stack information from being dumped after a crash, and the output
47will go to a file rather than the screen.
48
49The go32 debuggers get confused by the relocated stacks used by tasks,
50and tend to crash when variables are inspected.
51
52djgcc include files
53-------------------
54In general, we use RTEMS include files because these contain the proper
55declarations for the libc, and in particular, the stdio functions.
56When calling go32-specific functions it is necessary to include some
57djgpp include files, as well.  Unfortunately, there are some disagreements
58between RTEMS and djgpp as to how certain functions and types are
59declared.  In these cases, the RTEMS source have been modified to
60special-case the differences.
61
62other
63-----
64* Pressing F12 will immediately abort the program.
65See lib/libbsp/i386/go32/console/inch.c.
66
67* lib/libbsp/i386/go32/timer uses the on-board timer chip by default,
68which has a resolution of about 1 microsecond.  However, if executing
69on a Pentium processor you can use the on-chip 64-bit cycle counter,
70which counts at whatever clock rate your processor runs at.  To enable
71this, set RTEMS_CPU_MODEL=pentium in make/custom/go32.cfg.
72
Note: See TracBrowser for help on using the repository browser.