Commit Graph
86 Commits
Author SHA1 Message Date
Warren Toomey dd5e5bc2b3 Updated Makefile with the ls binary 2016-03-03 13:42:22 +10:00
Warren Toomey 2b9d2942d3 Merge branch 'master' of https://github.com/DoctorWkt/pdp7-unix 2016-03-03 13:37:26 +10:00
Warren Toomey 9cc938bfe6 I've written a simple ls program that actually works :-) 2016-03-03 13:36:35 +10:00
Warren Toomey 553aa31967 Even thought we don't really know the directory structure yet, I've written
code to allow a directory to be read. We can change it as required.
2016-03-03 13:13:52 +10:00
Warren Toomey aecf2cc4af Added some more comments to ds.s 2016-03-03 12:54:07 +10:00
Warren Toomey 747d1f4466 Added the time system call as per the draft of the CACM paper. 2016-03-03 12:12:18 +10:00
Warren Toomey e9398b2bd0 Added more comments to sys/cmd/init.s. 2016-03-03 11:27:20 +10:00
Warren Toomey 0314dff3c6 Added getuid and setuid syscalls to a7out. 2016-03-03 11:09:55 +10:00
Warren Toomey 02a0253afc Merge branch 'master' of https://github.com/DoctorWkt/pdp7-unix 2016-03-03 10:47:43 +10:00
Warren Toomey 7b9d907902 Fixed the a7out smes/rmes bug, they work now. 2016-03-03 10:47:07 +10:00
Warren Toomey 97407ef507 I added smes and rmes system calls to a7out and wrote some code
in src/other/fork_test.s to test it. It's not working quite right
yet, we keep getting wait() returning -1 in a7out even though there
is a child process.
2016-03-03 10:14:04 +10:00
Warren Toomey 782f677a34 Merge branch 'master' of https://github.com/DoctorWkt/pdp7-unix 2016-03-03 09:52:40 +10:00
Warren Toomey a351a527e6 Added more init.s comments 2016-03-03 09:52:17 +10:00
Warren Toomey 6547aa98be I've added fork() to a7out after adding some comments to src/cmd/init.s.
There is a test program to demonstrate fork working.
2016-03-03 09:23:48 +10:00
Warren Toomey c7a4209c6b Updated Makefile as as7 useage has changed. 2016-03-02 20:50:55 +10:00
Warren Toomey 11d660688b More git notes. 2016-03-02 20:45:08 +10:00
Warren Toomey 9c79bbb15d Oops, didn't initialise $mode properly. 2016-03-02 20:42:45 +10:00
Warren Toomey dc2d2dd63b Phil's change to as7 to implement RELATIVE flag. He says:
seems to assemble cat.s and kernel reasonably...
   (famous last words)
I've updated a7out to use the same starting location. It runs cat.s OK.
2016-03-02 20:38:00 +10:00
Warren Toomey 14a2a9b10b I've updated the top-level Makefile to build all the existing utilities.
I've borrowed the V1 manuals from
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V1/man/man1
and changed them to reflect the PDP-7 utilities.
2016-03-02 19:39:41 +10:00
Warren Toomey 152fc23c6b Added some notes about recovering deleted git files. 2016-03-02 18:42:43 +10:00
Warren Toomey d1a6bf8a39 Hah, I worked out how to bring as7 back. Sorry Phil! 2016-03-02 18:41:39 +10:00
Warren Toomey 03cb447f95 Fixed a typo in src/cmd/chrm.s 2016-03-02 18:33:38 +10:00
Warren Toomey c073aee196 Added unlink and chdir syscalls to a7out 2016-03-02 18:31:25 +10:00
Warren Toomey 9fcffe7e43 Merge remote-tracking branch 'origin/master' 2016-03-02 18:00:56 +10:00
Warren Toomey bcb2cb0f15 local changes. 2016-03-02 17:59:34 +10:00
Warren Toomey a3d6090fe7 tools/as7: added syscalls chmod and chown, added auto-increment
locations, fixed a bug in character input, added several EAE
instructions. We now have cp.s, chmod.s and chown.s working.
2016-03-02 17:55:33 +10:00
Warren Toomey 5bda1307c9 Moved my non-scanned programs into src/other. 2016-03-02 06:30:25 +10:00
Warren Toomey 51ab2cee19 Added a top-level makefile so that we can build things quickly. 2016-03-02 06:29:41 +10:00
Warren Toomey 02eeb59977 tools/a7out: Added the creat() system call. 2016-03-02 06:14:12 +10:00
Warren Toomey 2af2802335 I've moved these working programs into the src/other folder as they are
not strictly tools.
2016-03-01 20:28:24 +10:00
Warren Toomey a2e8a187b2 tools/a7out: I took out the code to pretend to deal with binary files,
and I did a perltidy to reformat the code.
2016-03-01 18:28:37 +10:00
Warren Toomey cd60f962c0 I found the type in cat.s and now original PDP-7 cat works with a7out! Yay! 2016-03-01 17:58:01 +10:00
Warren Toomey e0557be899 src/cmd/cat.s: lots more comments added to the code. 2016-03-01 17:20:41 +10:00
Warren Toomey 145725ba4c Warren's version of a cp command. 2016-03-01 16:57:40 +10:00
Warren Toomey 73c066ae9d I've restructured the opr code and the add code using the SimH logic
and I fixed up some bugs with the new command interpreter. I'm getting
so close to cat.s working!
2016-03-01 16:55:03 +10:00
Warren Toomey 220f87efed Rewording of the a7out help text. 2016-02-29 17:10:25 +10:00
Warren Toomey 714de5a7e1 I've added a single-step mode to tools/a7out and rationalised the debug output.
Some small changes to src/cmd/cat.s and wktcat.s to reflect the correct number
of arguments to open. Typos fixes to src/cmd/cat.s.
2016-02-29 16:47:13 +10:00
Warren Toomey 63223cfa7c Now that the PDF files have been transcribed and scanned in, I've moved
copies of them over into the src/ area so that we can add comments and
make other changes, while keeping the original OCR'd ones intact.
2016-02-29 06:40:15 +10:00
Warren Toomey ed80a93a08 tools/a7out: I added another 7 instructions, but I haven't tested them yet. 2016-02-27 21:55:12 +10:00
Warren Toomey 5cd48e18e1 Oops, it's late. Let's fix up the misspelt Novells :-) 2016-02-27 21:26:22 +10:00
Warren Toomey 6d4bcda587 I've updated some of the Readme file to clarify that the code from the
scanned pages is owned by Novel and they have copyright on it. Everything
else is GPLv3.
2016-02-27 21:18:51 +10:00
Warren Toomey ea7cd8da28 tools/a7out: Added the jms instruction. 2016-02-27 15:55:40 +10:00
Warren Toomey bc8caf1577 Merge remote-tracking branch 'origin/master' 2016-02-27 15:32:41 +10:00
Warren Toomey da58308ae4 src/cmd/cat.s: More comments added, but still more to add. 2016-02-27 15:30:38 +10:00
Warren Toomey 8a8611c590 misc/git_notes.txt: How to fetch from Github and review the changes before merging. 2016-02-27 15:24:59 +10:00
Warren Toomey ea11773db7 tools/a7out: Add the law instruction and change some numeric literals to
named constants.
2016-02-27 15:24:01 +10:00
Warren Toomey 4ee2619b8c I refactored tools/wktcat.s to lose the repeated code, and I also
improved the comments in the code. I'm happy with it, now.
2016-02-27 11:12:16 +10:00
Warren Toomey fafeae7470 I've rewritten tools/a7out to have the correct PDP-7 Unix command
line memory storage convention, and I've rewritten tools/wktcat.s
to deal with this. I've imported some code from the real cat.s
and now wktcat.s actually works as per the real cat.s.
2016-02-27 10:49:43 +10:00
Warren Toomey d2511c36c0 I'm trying to bring my wktcat.s file into line with the real one.
I've refactored tools/a7out to have a dprintf() function to printf
only on debugging. I still need to rewrite the command-line arg
storage structure.
2016-02-27 08:05:52 +10:00
Warren Toomey 779e655703 More git notes. 2016-02-27 08:03:52 +10:00
Warren Toomey d7254df037 Merge remote-tracking branch 'origin/master' 2016-02-27 08:02:18 +10:00
Warren Toomey acabff9688 Merge remote-tracking branch 'origin/master' 2016-02-27 07:43:33 +10:00
Warren Toomey d6d4c9b814 According to cat.s, fd 8 is standard error (not fd2!). I've updated
the a7out simulator to have STDERR on fd 8.
2016-02-26 22:37:03 +10:00
Warren Toomey 8143fc55e6 Merge branch 'master' of https://github.com/DoctorWkt/pdp7-unix 2016-02-26 21:59:06 +10:00
Warren Toomey 9c8dbdea37 tools/a7out: I refactored the indirect logic, much nicer now. 2016-02-26 21:57:10 +10:00
Warren Toomey a132327a8b a7out: I had the spa logic wrong. Now fixed. 2016-02-26 21:45:55 +10:00
Warren Toomey 0efc7cf96b Merge branch 'master' of https://github.com/DoctorWkt/pdp7-unix 2016-02-26 21:29:16 +10:00
Warren Toomey 6534bd6d43 I renamed simplecat.s to wktcat.s 2016-02-26 21:28:22 +10:00
Warren Toomey 536de9ea56 I worked out the bug with the command-line arguments, I was overwriting
017777, oops. I've added more comments to wktcat.s (renamed from
simplecat.s). Now we need to find out how the real PDP-7 Unix
does command line arguments.
2016-02-26 21:26:44 +10:00
Warren Toomey 8f8cc64d10 I've added tad and sza to the a7out simulator, and I also added some
code to place command-line arguments into the simulated memory. I'm
trying to write my own version of cat so I can compare mine to the
real one. Right now there's a bug when simplecat has two arguments.
Zero and one arguments are OK! Saving so I have a backup before proceeding.
2016-02-26 20:56:31 +10:00
Warren Toomey b8550475b0 I've got a very simple cat program working, which reads from stdin and
sends it to stdout.
2016-02-26 18:43:20 +10:00
Warren Toomey ba80514cbd Remind people to put in the page numbers and filenames! 2016-02-26 17:35:58 +10:00
Warren Toomey c84b2dffdd I've changed the assembler so that it groks the <ab> string literal
syntax. I think it's OK, but it probably needs more testing.
write_test.s was changed to exercise the string parsing.
2016-02-26 07:35:36 +10:00
Warren Toomey 018af6f43e Ken Thompson sent e-mail in to explain that there can be labels mid-line, such as
sys write; 1:0; 4

so I modified the assembler logic to support this, and added some code to write_test.s
to verify that it works.
2016-02-26 06:52:43 +10:00
Warren Toomey f9b8c8eeb2 Changed as7 to allow sys open statements, rewrite write_test.s to
use this syntax, and fixed up a bug in sys_open in a7out.
2016-02-26 06:19:27 +10:00
Warren Toomey ed46793781 Added cat.s. 2016-02-26 06:01:47 +10:00
Warren Toomey 4b9f851a84 Explain how to assemble and run the program. 2016-02-25 18:50:00 +10:00
Warren Toomey 45fb97e051 An assembly program to test the a7out user-mode simulator.
Expext its contents to change often as a7out is written.
2016-02-25 18:47:17 +10:00
Warren Toomey cc678483e1 I've added read() now, but I haven't tested it fully yet. 2016-02-25 18:43:44 +10:00
Warren Toomey b463500f37 I've got a few system calls working: open, close, write, exit along with the
instructions dac, lac, iot and hlt. I can print Hello, world\n, yay!
2016-02-25 18:12:57 +10:00
Warren Toomey a6f220b570 Dennis' paper of course. 2016-02-25 11:19:35 +10:00
Warren Toomey f5554d1181 The beginnings of the user-mode simulator: three instructions so far 2016-02-25 10:25:43 +10:00
Warren Toomey c6a928b8b4 More notes on the assembly syntax. 2016-02-25 07:52:26 +10:00
Warren Toomey 1bce0d48e3 Rename text file with .txt 2016-02-25 07:47:50 +10:00
Warren Toomey e1fbafafcb Caching my Github username 2016-02-25 07:46:59 +10:00
Warren Toomey 66d4b90a92 Document the notes/ dir. 2016-02-25 07:40:04 +10:00
Warren Toomey e3815482a3 First few pages of the s1 section of the kernel typed in. I've added some cruft
at the bottom so that I can test my assembler. I'll take that out later.
2016-02-25 07:37:59 +10:00
Warren Toomey ba69e4e3e7 Miscellaneous notes about the assembler format and useful URLs. 2016-02-25 07:37:15 +10:00
Warren Toomey 550f6486ee Hopefully a more readable layout on the Github web site. 2016-02-25 07:05:29 +10:00
Warren Toomey ecdd711b46 More details of the layout of the repository. 2016-02-25 07:03:59 +10:00
Warren Toomey 6e5986d1c7 First version of the file to document what scans are done. 2016-02-25 07:01:20 +10:00
Warren Toomey 73ea3c665b Hand-typed version of the cat source code with my own comments to
explain what it is doing.
2016-02-25 06:56:04 +10:00
Warren Toomey 07c95bbe15 I commented out most of the debug lines, and I now output the octal code
along with the input line that generated it. There is code to use values
of defined constants as well as defined labels.
2016-02-24 13:25:24 +10:00
Warren Toomey f46777b272 Added code to output the final machine code in octal. Parse
the 'i' argument to instructions that indicate indirect mode.
2016-02-24 11:15:47 +10:00
Warren Toomey d70b4e87cc First version of as7, which is definitely incomplete. I now need some
example assembly programs and their machine code octal dumps so that
I can complete as7 and get it working properly.
2016-02-24 09:16:32 +10:00
Warren Toomey 9b19ce4af5 Made it fit into 80 columns 2016-02-24 09:15:12 +10:00