113 Commits

Author SHA1 Message Date
John Forecast
5117bd4d7c FSIO: Disk and Tape container file utility 2019-05-01 06:24:33 -07:00
John Forecast
18202f1b8d RAWTAP: Fix initial tapemark problem.
If the first record in a container file was a tape mark, the tape was, incorrectly, assumed to be empty.
2017-12-14 17:06:51 -08:00
Andreas Bombe
928d137f17 Use loops over subdirs in Makefiles
The top and second level Makefiles that build the whole project by
recursing into all their subdirectories had implemented these by long
lists of invocations and then repeated these for all the all, clean,
install, uninstall targets. There were mistakes such as some
subdirectories not being cleaned.

Introduce SUBDIRS variables instead and have the targets loop over those
and additionally implement the clean, install, uninstall targets with a
single rule.
2017-10-13 01:24:53 +02:00
Andreas Bombe
1c21f2901b Remove wrong quotes from CFLAGS in converters/Makefile 2017-10-13 01:22:45 +02:00
John Forecast
9d7f57d0ea Update cosy converter 2017-03-29 14:07:10 -07:00
Mark Pizzolato
4434041146 Update .gitignore 2017-03-29 14:04:37 -07:00
John Forecast
b08ebe8eb0 New tape manipulation tools
rawtap	Allows extract, create and append operations on .tap files.

cpytap	Copies a .tap file to a new .tap file while allowing file level edits; skip file, replace file,
		append files and insert files. Any files copied from the original source .tap will have
		their internal record structure maintained.

cosy		COSY is the compressed format used by the CDC1700. This program allows for
		extraction of all files from an archive and the creation of a new archive. It assumes
		that you would have used raw tap about to have extracted the COSY file from a
		tape.

dbtap	Utility to read, write and list .tap containers written in the DOS/BATCH-11 format. It
		understands ascii and binary modes and can be used to transfer files in and out of
		most PDP-11 operating systems (not sure about RSTS/E), early VMS and early
		TOPS-10 systems.
2017-03-14 13:44:02 -07:00
Mark Pizzolato
94d94fe695 Add mksimtape from Bob Eager 2016-05-21 07:26:49 -07:00
Paul Koning
e7c1b1f4a8 RSTSFLX: documentation fix to describe the Makefiles correctly. 2016-04-28 11:26:50 -04:00
Paul Koning
ba1f763cc0 Add rstsflx to README file 2016-04-27 15:05:56 -04:00
Paul Koning
bf7c17ab4a Add RSTSFLX V2.6. This is a file system access utility for RSTS
file systems.  It supports reading and writing as well as a number
of other operations, such as octal dump, file system initialize,
and file system check ("clean").

This was originally maintained as a Subversion repository at
svn://akdesign.dyndns.org/flx/branches/V2.6.
as suggested by Timothe Litt on the SIMH mailing list.
2016-04-27 15:00:42 -04:00
Olaf Seibert
0cb8000e5f Remove old version. 2016-02-21 11:03:27 +01:00
Olaf Seibert
404a7e726d Add 'crossassemblers/macro11/' from commit '2a14ffe2519589011ffc4050d5d4fd6591fb4c3c'
git-subtree-dir: crossassemblers/macro11
git-subtree-mainline: fc2c8875ca614c989a594d4cf266a9d4e1c98d1e
git-subtree-split: 2a14ffe2519589011ffc4050d5d4fd6591fb4c3c

command was: git subtree add --prefix=crossassemblers/macro11 git://github.com/Rhialto/macro11.git master
2016-02-21 11:00:41 +01:00
Olaf Seibert
fc2c8875ca Move macro11 aside for incoming new version. 2016-02-21 10:51:58 +01:00
Olaf Seibert
2a14ffe251 Include changes for a release. 2015-11-09 22:31:31 +01:00
Olaf Seibert
ecd4e81a7c Fix Makefile and some unneeded #includes.
make clean would first compile everything before cleaning.
And building anything would make git-info.h too late.
2015-11-09 22:15:00 +01:00
Olaf Seibert
d76e294b06 Add some tests for operators and their (lack of) precedence. 2015-11-09 21:24:10 +01:00
Olaf Seibert
82f68e0d60 Implement .RAD50 <CHR> syntax, and tests. 2015-11-09 21:17:57 +01:00
Olaf Seibert
fda852a3f1 ^X is not an extension; ^R ^/.../ is.
Adjust comments about that.
2015-11-09 21:13:49 +01:00
Olaf Seibert
e148471a19 Extension .ascii ^/.../ conflicts with .ascii ^...^
so I removed it.
2015-11-09 21:11:41 +01:00
Olaf Seibert
0fba6eea33 Use function for creating a literal expression node. 2015-11-08 20:51:45 +01:00
Olaf Seibert
d6ff111149 Introduce a function to create a binary expression node. 2015-11-08 20:51:07 +01:00
Olaf Seibert
40ff236aaf Make free(tp) common code. 2015-11-08 20:49:37 +01:00
Olaf Seibert
9d756361b4 Fix pasto, present since all recorded history.
I don't think it made any practical difference: 2, like 1, is >= 1 and
that is what all the tests of xxx_PREC test.
2015-11-08 17:41:46 +01:00
Olaf Seibert
09717c3a5a Add comparison files for tests. 2015-11-08 17:41:46 +01:00
Olaf Seibert
3657acf345 Clean up some now-inaccurate comments. 2015-07-06 22:27:46 +02:00
Olaf Seibert
e02d3b3bdf Update the README file for the situation since 2009. 2015-07-06 22:23:39 +02:00
Olaf Seibert
80b20b17eb Add some info about git commit when printing the version.
Also modify dependency generation to be a side-effect of compilation.
It's still not quite perfect in picking up some changes (in particular
just after a commit, no files have changed but the git identification
is now different).
2015-07-06 21:43:03 +02:00
Olaf Seibert
ce2d526291 Added some robustness for when dumpobj is run on files which are...
almost an object file, such as an object library.
2015-06-09 22:33:53 +02:00
Olaf Seibert
22886c4a14 Add varrec, a little tool to convert files with variable records to byte streams. 2015-06-09 22:04:43 +02:00
Olaf Seibert
0aee873dc8 Add the link checker tool (in Perl).
This tool tells you which symbols are referenced by a group of OBJ files
but not defined.

It uses dumpobj to parse the OBJ files.
2015-06-09 22:04:01 +02:00
Olaf Seibert
137a9db671 More tests. Refine string delimiter test for .ASCII a bit.
Make the delimiters for .INCLUDE and .LIBRARY accept the same
delimiters (= is not disallowed, it just makes the line look like
an assignment).
2015-06-04 12:11:14 +02:00
Olaf Seibert
fdceabe88c Add .IF P1 and .IF P2 (tests for pass 1 and 2). 2015-06-04 00:35:31 +02:00
Olaf Seibert
b75195549e Combine .IF IDN and .IF DIF. 2015-06-03 23:03:36 +02:00
Olaf Seibert
c423ee346a Handle invalid expressions in .WORD directives with a message.
This is most relevant in implied .WORD directives which are caused by an
attempt to call a macro (which happens to be undefined) with arguments
that don't parse as valid expressions.
2015-06-01 23:30:16 +02:00
Olaf Seibert
ff5179743c Add addressing mode check for JSR, and a test. 2015-06-01 00:28:49 +02:00
Olaf Seibert
a24e3ba3ea Fix check for JMP Rn (which is illegal). 2015-05-31 23:34:05 +02:00
Olaf Seibert
60d0afde00 Use the path search also for .INCLUDE, and add -I option: include path
The -I option is used to specify the search path for .INCLUDE files.
It also appends this to the "INCLUDE" environment variable.
2015-05-31 22:52:05 +02:00
Olaf Seibert
e46f8ee2c7 Add a simple file name parser to my_searchenv(),
to try to find the requested file without device, directory and/or in
lower case.
2015-05-31 22:00:04 +02:00
Olaf Seibert
87814f7bb9 Automatic dependency generation with gcc -MM. 2015-05-28 20:04:31 +02:00
Olaf Seibert
c8dbd26e9a This initialisation wasn't needed. 2015-05-27 22:22:52 +02:00
Olaf Seibert
bc450511d8 Add some tests for things I have fixed while the last weeks. 2015-05-27 21:54:00 +02:00
Olaf Seibert
d38f4009c4 Crank up the warning levels, and adjust the code to silence ...
several compilers:
- gcc version 4.5.3 (NetBSD nb2 20110806)
- gcc version 4.9.2 (Ubuntu 4.9.2-10ubuntu13)
- Ubuntu clang version 3.6.0-2ubuntu1 (tags/RELEASE_360/final) (based on LLVM 3.6.0)

The warnings were mostly about local variables shadowing others,
unused function parameters, and C++ style comments. Some variables were
indeed used before set.

Note that on Linux, using -std=c99 does stupid things like *remove* the
declaration of strdup() from <string.h>. Therefore I've reluctantly used
-std=gnu99.
2015-05-27 21:51:26 +02:00
Olaf Seibert
8a2ba3adf0 Print flag names. 2015-05-27 01:37:16 +02:00
Timothe Litt
2d7f74e9ff Add Makefiles, fix some compile errors
There are more compile errors, especially in the cross-assemblers.
But I'm leaving those for someone else.
2015-05-26 17:42:36 -04:00
Olaf Seibert
bbaf56206e Allow extraction of Object LiBraries too.
Eliminate terminating 0 byte in macro buffers.
2015-05-24 17:37:08 +02:00
Timothe Litt
a18b1f8d62 Reorganize tools
1) The readme is out-of-date, and unreadable on github
2) Some tools have their own directories, some don't
3) Many tools have neither readme nor descriptions.
4) Some files are misplaced

This reorganizes so that each tool has its own directory, even if it only has a single file
(Hint: If you use a tool, please add/update READMEs)

The master README is complete, and readable on github

The tools are in alphabetical order within category.  There are some cases where this probably isn't the right thing to do, e.g. where there are separate tools that do "to" and "from" conversions.

Each tool has at least a 1-line description in the master readme

This commit does not change any tool.
2015-05-24 09:06:23 -04:00
Olaf Seibert
da068e07c8 Make sure the -v argument show that this is not the same as previous versions. 2015-05-22 16:40:37 +02:00
Olaf Seibert
435cdb0b7f Separate out the string parsing for .include/.library file names and macro arguments.
They behave observably different from generic string parsing and trying
to account for them generically just gets in the way.
.rept is treated the same as a macro.
2015-05-22 16:36:16 +02:00
Olaf Seibert
536d1856f0 .IF B,< > is supposed to be TRUE
because spaces are blank.
Seen in Kermit, although perhaps the author didn't mean that (MESSAGE < >).
2015-05-22 01:32:45 +02:00