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
d1a6bf8a39
Hah, I worked out how to bring as7 back. Sorry Phil!
2016-03-02 18:41:39 +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
Phil Budne
97b11c6e40
start with .=4096. This isn't what as.s does (and will break the kernel)
2016-03-01 20:36:13 -05:00
Phil Budne
1bb80f01ec
add --output, --namelist, rim output format, always set 0200 on ptp/rim output
2016-03-01 19:31:01 -05:00
Warren Toomey
5bda1307c9
Moved my non-scanned programs into src/other.
2016-03-02 06:30:25 +10:00
Warren Toomey
02eeb59977
tools/a7out: Added the creat() system call.
2016-03-02 06:14:12 +10:00
Phil Budne
ff4d793ca5
another round of (hopeful) improvements
...
add indirect bit to "sys" definition
set initial ".." (output base) to 4096 (not yet honored)
add "ptr" output format (binary in paper tape reader format: 3 frames of 6 bits)
remove IOT instrictions (system source uses sop.s)
always write labels to "n.out"
add debug output
fix multiply defined error handling (process symbolic labels on both passes)
2016-03-01 11:22:53 -05:00
Phil Budne
66909ac6fd
fix bugs noted by warren
2016-03-01 11:22:29 -05: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
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
Phil Budne
aeceb8614a
move whitespace removal back in word loop
2016-03-01 01:43:24 -05:00
Phil Budne
249ce47e44
OR syllables by default (allows multiple OPR instructions)
2016-02-29 14:24:37 -05: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
Phil Budne
9e148edefc
changes in expression parsing
2016-02-28 16:29:01 -05: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
ea7cd8da28
tools/a7out: Added the jms instruction.
2016-02-27 15:55:40 +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
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
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
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
Phil Budne
815d8bc220
comment out debug prints
2016-02-25 21:03:39 -05:00
Phil Budne
2cca3d4473
finish s1.s; tried to clean up s5-s8; let as7 continue after error
2016-02-25 20:58:17 -05: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
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
f5554d1181
The beginnings of the user-mode simulator: three instructions so far
2016-02-25 10:25:43 +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