add directory Minix
This commit is contained in:
263
Minix/contrib/pascal/README.PASDE16
Normal file
263
Minix/contrib/pascal/README.PASDE16
Normal file
@@ -0,0 +1,263 @@
|
||||
This is the description of the package debug16.tar
|
||||
|
||||
Hello minixers and debuggerer,
|
||||
here comes the first public pascal debugger.
|
||||
It is developed for Minix 1.7.1 and later. Be careful, all you read
|
||||
in this file is for the 16-Bit Version of Minix. You can't start
|
||||
the programs or use the libs under the 16-Bit version. In the file
|
||||
README.PASDE32 a you find the description for the 32-Bit version.
|
||||
|
||||
The programs in this package are copyrighted by Henrik Quintel,
|
||||
1994, 1995, 1996. But you can feel free if you want to give them
|
||||
away. That's no problem. Another point is that this package contains
|
||||
no sourcecode. But in future all my publications will contain source-
|
||||
code. At the moment I develop a programming language called TQ.
|
||||
So, all my programs will be written in TQ. For more information please
|
||||
read the file README.TQ or contact me about the internet. My e-mail
|
||||
adress is quintel@worms.fh-rpl.de or quintel@nibelung.worms.fh-rpl.de
|
||||
The address of my home page is www.worms.fh-rpl.de/~quintel. If you
|
||||
have problems by reaching my home page, please send me a short mail.
|
||||
|
||||
This package contains the following files:
|
||||
------------------------------------------
|
||||
file what it is div.
|
||||
------------------------------------------
|
||||
qdebugger debugger executable
|
||||
qdb driver shell script
|
||||
qpascal_cpp preprocessor executable
|
||||
physik.pas testprogram pascal-source
|
||||
qdb.1 man page ascii-text
|
||||
|
||||
A very important thing is that the size of debugger is 20000.
|
||||
You can test it with size [path]qdebugger.
|
||||
|
||||
In the debugger are the following features not
|
||||
implemented:
|
||||
Filehandling
|
||||
Packed array
|
||||
Packed records
|
||||
'Set of'-construct
|
||||
|
||||
How can you get the package ?
|
||||
Make a ftp to ftp.cs.vu.nl
|
||||
Directory: pub/minix/contrib/pascal/
|
||||
set bin
|
||||
set hash
|
||||
set prompt
|
||||
get debug16.tar
|
||||
------
|
||||
On your system do the following:
|
||||
Make a directory in /usr (cd /usr;mkdir debugger;cd debugger)
|
||||
Put the file debug16.tar there.
|
||||
Extract the tar file with tar xvf debug16.tar
|
||||
|
||||
After extracting there are three directories:
|
||||
1. debugger16
|
||||
2. testsuite
|
||||
4. manpages
|
||||
|
||||
In the first directory is the debugger. In the second
|
||||
directory you find a small testsuite and in the third directory you
|
||||
find the manpages.
|
||||
|
||||
For installing the debugger do the following:
|
||||
cd /usr;mkdir local;mkdir bin
|
||||
Copy the the files as follows in the mentioned directories
|
||||
file directory
|
||||
-------------------------------
|
||||
qdebug /usr/local/bin/
|
||||
qdb /usr/local/bin/
|
||||
qdb.1 /usr/man/man.1
|
||||
|
||||
You have to make the following changes in the file whatis in the
|
||||
directory /usr/man. Add the line qdb (1).
|
||||
|
||||
Of course you can install the files where you want. But if you do
|
||||
so, you have to make changes in the file qdb.
|
||||
|
||||
If you have problems with installing or problems with debugging
|
||||
your pascal programs send me the pascal program.
|
||||
|
||||
If I have forgotten a file or if you have any questions feel free and
|
||||
mail to me.
|
||||
|
||||
Example for the debugger by using the file physik.pas
|
||||
Starting the debugger:
|
||||
(The words in the brackets are only comments by me)
|
||||
qdb physik.pas
|
||||
(You will see the listing if the pascal program is ok)
|
||||
Command ? break 15 (Press Enter)
|
||||
Command ? (Press Enter)
|
||||
|
||||
Enter new number (0 to quit) : 9 (Press Enter)
|
||||
|
||||
Breakpoint
|
||||
At 15: If number = 0
|
||||
|
||||
Command ?
|
||||
9.00000 3.0000
|
||||
|
||||
5.000000 66.67%
|
||||
3.400000 13.33%
|
||||
3.023530 0.78%
|
||||
3.000092 0.00%
|
||||
3.000000 0.00%
|
||||
|
||||
Enter new number (0 to quit) : (Press CTRL-C)
|
||||
(Now you see a heart)
|
||||
(Press Enter)
|
||||
(There are two error messages - ignore them :-))
|
||||
|
||||
Command ? assign number := 16
|
||||
|
||||
Command ? show sqrt(number)
|
||||
4
|
||||
|
||||
Command ? pi/number
|
||||
|
||||
****Error : undefinded identifier.
|
||||
|
||||
****Error : Incompatible types.
|
||||
|
||||
Command ? where
|
||||
|
||||
At 15: if number = 0
|
||||
|
||||
Command ? step
|
||||
|
||||
Command ?
|
||||
|
||||
At 15 if number = 0
|
||||
|
||||
Command ?
|
||||
|
||||
At 18: if number < 0
|
||||
|
||||
Command ?
|
||||
|
||||
At 22: sqroot := sqrt(number)
|
||||
|
||||
Command ?
|
||||
|
||||
At 23: writeln (number : 12 : 6, sqroot: 12 : 6)
|
||||
16.000000 4.0000000
|
||||
|
||||
Command ?
|
||||
|
||||
At 24 : writeln
|
||||
|
||||
Command ?
|
||||
|
||||
At 26 : root := 1
|
||||
|
||||
Command ? unstep
|
||||
|
||||
Command ? trace
|
||||
|
||||
Command ? (Here you will see a lot of information)
|
||||
...
|
||||
Enter new number (0 to quit) : <13> 36
|
||||
|
||||
Breakpoint
|
||||
At 15 : If number = 0
|
||||
|
||||
(Press CTRL-C like at the beginning of the session. You will see a heart)
|
||||
(Press Enter)
|
||||
|
||||
Command ? untrace
|
||||
|
||||
Command ? store root
|
||||
|
||||
Command ? watch
|
||||
Variables being watched:
|
||||
root (store)
|
||||
|
||||
Command ? break
|
||||
Statement breakpoints at:
|
||||
15
|
||||
|
||||
Command ?
|
||||
36.000000 6.000000
|
||||
..... (There are a lot of stores now)
|
||||
|
||||
Enter new number (0 to quit) : 0
|
||||
(Exit...)
|
||||
|
||||
Here are the commands for the debugger:
|
||||
|
||||
Command: break (number)
|
||||
breakpoint at each one of them.
|
||||
|
||||
Command: break
|
||||
Print the line numbers of all the breakpoints.
|
||||
|
||||
Command: unbreak (number)
|
||||
Remove the breakpoint from the statement beginning on line (number).
|
||||
|
||||
Command unbreak
|
||||
Remove all breakpoints from all statements.
|
||||
|
||||
Command: trace
|
||||
Turn on statement tracing.
|
||||
|
||||
Command: untrace
|
||||
Turn off statement tracing.
|
||||
|
||||
Command: entry
|
||||
Turn on tracing of procedure and function entries
|
||||
|
||||
Command: unentry
|
||||
Turn off tracing of procedure and function entries.
|
||||
|
||||
Command: exit
|
||||
Turn on tracing of procedure and function exits.
|
||||
|
||||
Command: unexit
|
||||
Turn off tracing of procedure and function exits.
|
||||
|
||||
Command: step
|
||||
Turn on single-stepping
|
||||
|
||||
Command: unstep
|
||||
Turn off single stepping
|
||||
|
||||
Command: fetch (variable)
|
||||
store (variable)
|
||||
watch (variable)
|
||||
|
||||
Command: show (expression)
|
||||
Print the value of expression.
|
||||
|
||||
Command: assign (variable) := (expression)
|
||||
(See example)
|
||||
|
||||
Command: where
|
||||
Print the line number followed by the text of the statement to be executed next.
|
||||
|
||||
Killing the program
|
||||
The kill command terminates the program execution.
|
||||
|
||||
Command: kill
|
||||
|
||||
If you have questions about the commands or the usage, mail to me.
|
||||
|
||||
At the moment I program :
|
||||
an ansi c compiler
|
||||
a new assembler / loader
|
||||
a new lib
|
||||
a forth interpreter
|
||||
a C++ to C compiler
|
||||
TQ of course
|
||||
|
||||
BTW, I make some brainstorming sessions to produce a compiler/interpreter
|
||||
which understands the concepts of an OOP-language.
|
||||
|
||||
If you have ideas or tips, feel free and mail to me.
|
||||
|
||||
If someone has ideas or something else please write to me !
|
||||
|
||||
Special thanks for supporting :
|
||||
Prof. Dr. Andrew S. Tanenbaum ast@cs.vu.nl
|
||||
Kees J. Bot kjb@cs.vu.nl
|
||||
Nils Holm fs29@rummelplatz.uni-mannheim.de
|
||||
Peter J. Holzer hjp@wsr.ac.at
|
||||
Reference in New Issue
Block a user