PiDP-8/I Software

Timeline
Log In

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

124 check-ins going from 7ce3553bf5f4bccd to d6d34de7ecf908b4

2016-12-04
03:27
Much of scanswitch.c and gpio.c were duplicated. Exported these things as public API elements of the gpio module, and simply linked scanswitch to gpio.o. Also unified the delay mechanisms. check-in: d6d34de7ec user: tangent tags: trunk
01:53
Moved the "extern foo" stuff scattered around the various programs into gpio.h, and #including that from them. Also replaced some of the custom typedefs for sized int types to stdint.h types. (e.g. uint32 -> uint32_t.) These are in the same checkin because both affect the public interface to gpio.h. check-in: 0d657a6e12 user: tangent tags: trunk
01:47
Removing tags file on 'make clean' check-in: 3aa505c477 user: tangent tags: trunk
01:37
Made 'tags' a phony target, so make(1) won't consider it always up-to-date check-in: 39578d0dd6 user: tangent tags: trunk
01:24
Added ctags/tags target check-in: e8d6640336 user: tangent tags: trunk
2016-12-03
05:34
Added a dependency on bin/palbart to the *.pt targets. Without this, a parallel make can fail because it doesn't understand that the examples can't be built until bin/palbart is present. check-in: 176a5804e6 user: tangent tags: trunk
05:26
Removed some unnecessary instruction definitions at the top of examples/pep001.pal. (Things I defined during development but ended up not using in the final version.) check-in: d736d3fccf user: tangent tags: trunk
05:22
Assorted fixes to new palbart target check-in: 1901c58073 user: tangent tags: trunk
05:17
Added palbart 2.13 from https://www.pdp8online.com/ftp/software/palbart/ to the source tree and building the examples with that version instead of whatever is lying around on the system. Not only does it mean we can stop checking *.lst and *.pt into the source repo, it means we get a much newer version in many cases since the standard version you find most places is 2.4 or 2.5, which is about 6 years older, with many missing features and fixes. check-in: c77171d87c user: tangent tags: trunk
04:19
URL fix check-in: 768019fb21 user: tangent tags: trunk
04:18
Added README-single-core.md, and referenced it from the Prerequisites section of the top-level README.md file. check-in: 781d9c2cba user: tangent tags: trunk
04:02
Clarity pass check-in: be2e8fa894 user: tangent tags: trunk
03:57
Noted that "make install" does everything the old install scripts did. check-in: 3193b776f6 user: tangent tags: trunk
03:54
Whitespace fix check-in: f8f8604fd1 user: tangent tags: trunk
03:53
In the top-level README.md file, noted that pidp8i-test will not run if the simulator is running. check-in: 268219655c user: tangent tags: trunk
03:50
Updated the top level README.md with the solution to a problem a user had building the software. check-in: 3030672baa user: tangent tags: trunk
2016-12-02
15:49
Fixed some Makefile syntax problems in the "make install" bit that removes the serial console stuff from /boot/cmdline.txt if it is present. check-in: 75f5bf32c1 user: tangent tags: trunk
15:42
Rewrote the "make install" commands to install necessary helper programs on Debian type systems. The previous method basically skipped these steps, so those installing this on a fresh SD card wouldn't get these programs installed for them. check-in: a35d6b1ec8 user: tangent tags: trunk
2016-12-01
15:20
Described all the new example programs in examples/README.md check-in: 5565b86dbb user: tangent tags: trunk
13:57
Project Euler Problem 1 is complete. I am the 617255th person to have solved this problem. Woo! check-in: e7f7715b20 user: tangent tags: trunk
12:44
Fixed another pair of hard-coded absolute /opt/pidp8/* paths. They weren't fixed earlier because the feature involved with this code is broken ([d9592e0e7570]), so normal testing did not find the problem. check-in: b9258abd16 user: tangent tags: trunk
06:27
Fix to the "make distclean" fix.... check-in: f85674696d user: tangent tags: trunk
06:22
The distclean target wasn't getting rid of boot/$n.script generated from $n.script.in by autosetup under Raspbian, but did on OS X. This is probably due to the bash vs dash /bin/sh difference, as that "rm" glob pattern uses a bit more advanced shell features. check-in: 9a0b71808c user: tangent tags: trunk
2016-11-30
20:36
Hyperlinked README-test.md to README.md, in case you're reading the latter via Fossil UI. check-in: f17e4c520b user: tangent tags: trunk
20:00
Added src/test.c's author to AUTHORS.md check-in: 0c06739141 user: tangent tags: trunk
19:59
Renamed bin/pidp8i-testswitch as pidp8-test. It also tests the LEDs, and there's no reason to make the long program name even longer. check-in: b038293b7e user: tangent tags: trunk
19:21
Merged the pidp8-test program from the mailing list as bin/pidp8i-test. It builds with the normal build process and installs as pidp8i-test in $prefix/bin. Its plain-text README is now README-test.md, formatted for display via Fossil UI, with some changes owing to its new position, but mostly unchanged. Source: https://groups.google.com/forum/#!topic/pidp-8/UmIaBv2L9Ts check-in: 05dbe80a7e user: tangent tags: trunk
08:40
Added DEC's "Unsigned Decimal Print Subroutine" (Digital-8-22-ASCII) as examples/routines/decprt.pal check-in: 26ea2ec097 user: tangent tags: trunk
08:39
The palbart build rule now includes -l to tell the assembler that it is allowed to generate inter-page links. check-in: 1d27f07c4a user: tangent tags: trunk
2016-11-29
15:14
Replaced autosetup/system.tcl with the one from upstream checkin 1899ec427 so the defaultprefix value set in auto.def shows in ./configure --help output. This replaces my local change to the previously hard-coded /usr/local string. check-in: 6c234d9cf4 user: tangent tags: trunk
14:50
Removed the redundant copy of ETOS under the TSS/8 media directory, too. I can't see any difference between these two from an OS/8 "DIR /A =3" or "VER" command within each ETOS instance, even though md5sum assures me that there is a difference. Closes [09c24666be] check-in: cc9e5a1392 user: tangent tags: trunk
13:35
Removed the OS/8 RK05 image under the TSS/8 directory. The only difference appears to be that the BASIC.WS file is a bit larger in the one normally used. (7 blocks rather than 5.) I'm going to assume that it's a feature we want. check-in: 81b807f0df user: tangent tags: trunk
13:29
Removed duplicate media entries under media/tss8 for non-TSS/8 OSes. This partially addresses [09c24666be] but there are nonexact duplicates that still have to be looked into. check-in: b1f849c7b6 user: tangent tags: trunk
2016-11-28
13:24
Assorted fixes to "make clean" target; re-tagged v20161128 check-in: bbbd662b1f user: tangent tags: trunk, v20161128
13:16
Squished warnings about "use parenthesis around assignment in if statement" in newer GCCs. These problems are in SimH proper, so we can't really fix them without creating needless diffs relative to SimH head, which will just complicate our eventual forward-port to SimH tip. check-in: 6cf87f044c user: tangent tags: trunk
13:14
Fixed a bug introduced in previous in the build-in-tree case. check-in: 53715a3de2 user: tangent tags: trunk
13:11
Assorted improvements for building the examples, particularly in the out-of-tree case. check-in: c5e65a4383 user: tangent tags: trunk
12:45
The recent changes to make some src/*.c files autosetup templates so we can substitute $prefix/* paths into them broke out-of-tree builds. Fixed. check-in: dd83548f6a user: tangent tags: trunk
12:41
Minor cleanups to Makefile.in. No functional change. check-in: 96c58ed962 user: tangent tags: trunk
12:31
Improved the make clean and distclean targets. (Recent developents weren't tracked here, so they left things behind.) check-in: 0ab8580cc5 user: tangent tags: trunk
12:04
Fixed a Tcl dialect problem in auto.def. (It works fine under the provided jimsh0, but fails under the "real" tclsh.) check-in: 4290a6b58c user: tangent tags: trunk
12:01
Fixed a remaining vestige of the old halt-and-jump flavor of the add.pal program in examples/README.md, and made a few other clarifications. check-in: 6316f5ecde user: tangent tags: trunk
11:41
Clarified the examples/README.md text explaining the problem with trying to run examples/add.pal under OS/8. check-in: 50d75d52d9 user: tangent tags: trunk
11:15
Released v2016.11.28, since these recent boot script finding fixes are too important to hold for the next. check-in: 3306636201 user: tangent tags: trunk
11:13
Replaced the two remaining uses of relative paths for finding boot scripts with absolute paths. Turns out that when running under from systemd, we can't count on the CWD to remain in $prefix/bin, so trying to restart into a different bootscript would fail. (Thus the recent change to make it not spam the console when this happens.) check-in: 308e7643d0 user: tangent tags: trunk
11:12
Fixed a place where we were building up a boot script path too-manually. autosetup already determined the proper value for us. check-in: 926e741794 user: tangent tags: trunk
11:04
Better error handling in the code that maps IF switches to boot script names. If the files weren't present at the expected location, it would spam the console as fast as possible. Now it just screams and dies. check-in: f08cae1d9d user: tangent tags: trunk
10:39
Added ./configure --debug-mode flag, for setting CFLAGS+=-O0 -g. Also including -O2 when this flag is not set, for a release build. check-in: e785375d85 user: tangent tags: trunk
10:26
Relaxed permissions on installed media and boot scripts. No point making them world-unreadable. check-in: 655ab53277 user: tangent tags: trunk
09:35
Updated USB stick label document, created PDF version so the dot matrix fon can be embedded, and added labels/README.md, now referred to from examples/README.md. check-in: 1d19ec8a17 user: tangent tags: trunk
08:48
Documented the method for loading the RIM-format examples/*.pt files from USB sticks, so that all three options listed at the top of the file have a full explanation below. check-in: c654e600ac user: tangent tags: trunk
08:47
Re-assembled examples/add.pt in RIM format. check-in: d4ddafefaf user: tangent tags: trunk
08:29
The palbart command for building the examples was generating *.pt in BIN format, but we don't want to depend on the BIN loader for such small programs. Made it emit RIM format files instead. check-in: 1da5a192e4 user: tangent tags: trunk
06:49
Typo fix check-in: 666dfa81a9 user: tangent tags: trunk
06:47
Fixed a couple of "PDP-8/I" references that should be "PiDP-8/I" check-in: 43ef1b33b5 user: tangent tags: trunk
06:43
Converted some hard tabs to spaces check-in: b280b43d67 user: tangent tags: trunk
06:40
Moved previous text a bit lower in the README.md for clarity and esthetics in the web-rendered version. check-in: 695309f535 user: tangent tags: trunk, v20161127
06:38
Added the "build essential" fix for "No working C compiler found" check-in: da70707573 user: tangent tags: trunk
06:28
Released v2016.11.27 check-in: 95de43f25c user: tangent tags: trunk
05:43
Header tweak check-in: 6c374cc6f9 user: tangent tags: trunk
05:29
Added a link check-in: 638f0605e8 user: tangent tags: trunk
05:27
Added a section to examples/README.md showing how to transcribe these example programs into an OS/8 session, then to edit, assemble, and run then within it, all without roaching OS/8. check-in: 83531ee345 user: tangent tags: trunk
03:26
Added links from examples/README.md to referenced files in the repo check-in: 050f70179a user: tangent tags: trunk
03:14
On systems without palbart, the previous checkin caused a build failure because of a strangeness in the way autosetup handles undefined values. Fixed. check-in: e66b7967af user: tangent tags: trunk
03:10
If palbart is found at configure time, the examples are added to the list of things to be built, so that any changes to examples/*.pal can now be automatically built, including renaming *.bin outputs to *.pt. check-in: 9aa3b48ea3 user: tangent tags: trunk
02:59
More examples/README.md improvements check-in: de0862ec06 user: tangent tags: trunk
02:37
More tweaks to the examples' README check-in: 35a792aa9a user: tangent tags: trunk
02:29
Simplified and clarified the "add" example check-in: d55acb82ff user: tangent tags: trunk
01:41
Updated binary-glob settings for media/*/*. (Missed these when moving imagefiles to media.) check-in: c23bee4ae1 user: tangent tags: trunk
01:40
More improvements to the `add` example and our explanation of it check-in: 8edf63a8f3 user: tangent tags: trunk
01:14
Updated the change log check-in: d6a59a3f3a user: tangent tags: trunk
01:11
Added a README.md file to the examples directory explaining their use, and included the add.lst file so users don't have to have a PAL-III assembler in order to get the octal dump of the program. check-in: 9bf2da570b user: tangent tags: trunk
00:29
Replaced the description of the new build system in ChangeLog.md with a reference to the new README.md file. check-in: efc3e42fee user: tangent tags: trunk
00:10
Added a simple PAL-III example program check-in: 414bf01d85 user: tangent tags: trunk
2016-11-27
09:24
Fixed a bug in the recent $prefix/share/boot changes to "make install" check-in: d2ae60a7be user: tangent tags: trunk
09:21
Moved bin/scanswitch into libexec/scanswitch, per FHS. (That is, it is a program that's normally used internally within the software, not something that should be in the user's PATH.) check-in: 3850bf3c78 user: tangent tags: trunk
09:12
Renamed bootscripts/ in the source tree to boot/ and installing its contents into $prefix/share/boot according to FHS. check-in: 6a4641388f user: tangent tags: trunk
09:05
Renamed imagefiles dir to media in the source tree, and installing its contents to $prefix/share/media to conform to the Filesystem Hierarchy Standard, the official way of doing things on Linux. check-in: 136f311902 user: tangent tags: trunk
08:40
. check-in: 5ca3498c8c user: tangent tags: trunk
08:40
Whitespace improvements to previous check-in: 041e883a4a user: tangent tags: trunk
08:34
Rewrote the readme.txt file as README.md, and wrote a longer version of the brief credits found in that file as AUTHORS.md. check-in: 455d4da843 user: tangent tags: trunk
07:32
Renamed all "pidp" references remaining related to the initscript and screen(1) to "pidp8i". Closes [5a50b2b21e] check-in: e8a260f907 user: tangent tags: trunk
07:10
The install make target now overwrites the OS and program media in $prefix/imagefiles only when os8.rk05 is missing at install time. You can force a reinstall with "make mediainstall". check-in: a1e313a8af user: tangent tags: trunk
02:51
Made "install" target depend on "all" check-in: 2d6ab60acf user: tangent tags: trunk
2016-11-26
23:03
Fixed some more "PiDP-8" -> "PiDP-8/I" references check-in: 605fe0aa51 user: tangent tags: trunk
22:48
Fixed autodependency include for new location of scanswitch.c check-in: e962572e34 user: tangent tags: trunk
22:44
Removed commented-out stuff from src/gpio.h and rearranged the header check-in: b3e2b1fb56 user: tangent tags: trunk
22:41
The differences in the near-duplicate copy of gpio.h have no effect, so moved scanswitch.c up to the top src level and removed its subdirectory. Closes [0c6553aaa36]. check-in: 2b3b157d60 user: tangent tags: trunk
16:43
The new build system now allows building out-of-tree check-in: ce17709249 user: tangent tags: trunk
16:23
More ChangeLog work check-in: 596b45e203 user: tangent tags: trunk
15:50
Fixed a portability problem in auto.def that prevented some of the recent changes from running on OS X. check-in: 5783b221d5 user: tangent tags: trunk
15:42
More work on the changelog check-in: 6565719ef8 user: tangent tags: trunk
15:26
Added ChangeLog.md check-in: b0fb73d366 user: tangent tags: trunk
14:50
Fixed the upstream bug in the init script where failure to run scanswitch would cause it to try and load 127.script. check-in: 667edea287 user: tangent tags: trunk
14:41
Added "/I" after "PiDP-8" references in the initscript check-in: 31ab49e486 user: tangent tags: trunk
14:39
Fixed a couple of bugs in the recently-reworked initscript check-in: 8ffac8526b user: tangent tags: trunk
14:34
Installing the script formerly known as pdp.sh as $prefix/bin/pidp8i. Between this and the recent chnage to the installer to put $prefix/bin into the non-root user's PATH, you can now type "pidp8i" to enter the simulator. check-in: d7e04ec845 user: tangent tags: trunk
14:25
Changed default installation prefix to /opt/pidp8i, partly to address [5a50b2b21e7a] but also so we don't conflict with upstream distro's use of /opt/pidp8. check-in: 95b1f3616b user: tangent tags: trunk
14:16
Merged the functional contents of install/*.sh into the make install target. check-in: 0b9be72eeb user: tangent tags: trunk
13:09
Renamed etc/rc.pidp8 to etc/pidp8i-init.in, into which template we substitute the absolute install directory name for much the same reason we just did it for the bootscripts. check-in: 65b1b8269a user: tangent tags: trunk
12:55
Each of the bootscripts that uses ../ paths to find other files in the system now use absolute paths based on the "prefix" value from autosetup, so that it doesn't matter what your CWD is when you start the simulator. check-in: 53537b0268 user: tangent tags: trunk
11:34
Added top-level "make install" target. Closes [b3521c15d6f] check-in: 669621ba0f user: tangent tags: trunk
10:27
Silenced the new "clean" targets check-in: 2cb32c646f user: tangent tags: trunk
10:08
Removed -lrt from LDFLAGS. It's only needed on old Linuxes, which we don't encounter on Raspberry Pi, and it impacts portability to non-Linux OSes. check-in: 10486f1b1a user: tangent tags: trunk
10:05
Replaced Linux-specific nanosecond-resolution sleep calls with portable alternative, with the best local option determined by autosetup. Closes [13d74235b70a]. check-in: a4aebcb04c user: tangent tags: trunk
09:45
Replaced the simple Makefile based build system with one based on autosetup, with the following advantages over the prior system: - autodependency generation - better "clean" behavior; added "distclean" target - the serial mod config is now separate from the source code, so mistakes like the one fixed in [a3bd0f7154] don't happen - object files are sequestered in an "obj" subdirectory - scanswitch build is now fully integrated into the main build system; no more recursive Makefiles Partially addresses [b3521c15d6], but there is more in that ticket that this checkin does not provide. check-in: caf26ab564 user: tangent tags: trunk
02:58
Commented the SERIALSETUP flag setting back out. (Shouldn't have checked it in like that; that's a local change only.) check-in: a3bd0f7154 user: tangent tags: trunk
02:33
Added comments explaining what each of the stock bootscripts does, as well as "echo" messages that send a short explanation of what is happening to the simulator console. Also redefined 7.script in terms of 0.script, so that one is not lead to believe that these two scripts are redundant. The new commenting is especially heavy in these two scripts, as it explains why we need two scripts to provide "one" (actually two!) functions. check-in: 90f8b7c9f9 user: tangent tags: trunk
01:37
Added a script for the ASR-33 and added comments to 1.script explaining why they differ, and the conditions required to use the new script instead of 1.script. check-in: 84a0e8d0d8 user: tangent tags: trunk
2016-11-24
08:53
Added a new SVG DECtape label document. Somewhat unfinished, but usable at this point. check-in: d990ace086 user: tangent tags: trunk
2016-11-23
21:22
Removed the obsolete SERIALSETUP comment from the top of gpio.c and moved the #include for gpio.h to the top. check-in: d7084b2f87 user: tangent tags: trunk
08:36
Added power input and power switch schematic check-in: 5bd9319683 user: tangent tags: trunk
06:27
Re-shot several of the "Warren's PiDP-8/I" pics check-in: 5b672f1dc4 user: tangent tags: trunk
2016-11-22
02:23
Allowing pics/*/*.jpg to be binary check-in: 48c70bf6d8 user: tangent tags: trunk
02:22
Added my PiDP-8/I pics check-in: 8387bd6d8d user: tangent tags: trunk
2016-11-21
12:17
Removed an unwanted +x bit check-in: 0bb1838f17 user: tangent tags: trunk
12:14
Added a top-level Makefile, so you don't have to cd down into src check-in: 93d49a25d1 user: tangent tags: trunk
10:54
Fixed a bug in 2.script, where a "../" was in the wrong place, preventing TSS-8 from loading correctly. check-in: 869d391320 user: tangent tags: trunk
10:39
Made ../bin/scanswitch a top-level dependency, so you don't have to remember to build it separately. The top-level initrc script doesn't behave sanely when that binary is missing. (Symptom: starting pidp8 either gives "0" as a result or you drop into the SimH monitor with a complaint about a missing "127" bootscript, since 127 == "failed to run scanswitch".) check-in: 11b31c536d user: tangent tags: trunk
09:55
Applied Ian Schofield's "Display update for the PiDP8" patch from the PiDP-8 Google Group. check-in: 3a85f08639 user: tangent tags: trunk
09:40
Creating ../bin if it doesn't already exist. Fossil doesn't store directories, and there's no point checking an empty file in just to create the bin dir. check-in: d0c31db7f9 user: tangent tags: trunk
09:37
Made serial mod setting easier to enable check-in: 7c16f39bc8 user: tangent tags: trunk
09:33
Upstream version 20151215, containing everything from the tarball except for backups and *.o. Also, all CRLF text files converted to LF. check-in: ec36ee3dab user: tangent tags: trunk, v20151215
09:11
initial empty check-in check-in: 7ce3553bf5 user: tangent tags: trunk