Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
2687 check-ins using file doc/graphics/front.jpg or pics/wy/front.jpg version fbb7719c23
2024-11-10
| ||
18:35 | Pull pi5 and ils2 branches into trunk. This enables pi4 and pi5 hardware and improves PiDP-8/i displays. Leaf check-in: 0ad7bdeb6b user: poetnerd tags: trunk | |
2024-08-09
| ||
04:05 | Fix mis-calling "False" as "false" and fix error return in check_exists (even though nobody uses it as of yet.) Merged in from trunk. Leaf check-in: 27a689c5eb user: poetnerd tags: pi5-ils2-bookworm | |
2024-08-08
| ||
21:13 | Fix mis-calling "False" as "false" and fix error return in check_exists (even though nobody uses it as of yet.) Merge in from trunk. Leaf check-in: ee19934afd user: poetnerd tags: pi5-ils2-bworm-cyclerealistic | |
2024-08-03
| ||
18:38 | Fix mis-calling "False" as "false" and fix error return in check_exists (even though nobody uses it as of yet.) (In from trunk.) Leaf check-in: c4b8c499df user: poetnerd tags: pi5 | |
17:42 | Fix mis-calling "False" as "false" and fix error return in check_exists (even though nobody uses it as of yet.) check-in: acf91edb78 user: poetnerd tags: trunk | |
17:17 | Move declaration of op_code outside #ifdef PIDP8I so it works both with and without gpio. check-in: 9de1597bf4 user: poetnerd tags: pi5-ils2-bworm-cyclerealistic | |
2024-06-30
| ||
18:59 | Enable ILS mode in single-step/single-instruction mode. Enable ILS in more of the throttling modes, including throttling to very slow speeds like 1 instruction per second check-in: 3b3fcb8834 user: HBEggenstein tags: pi5-ils2-bworm-cyclerealistic | |
2024-06-20
| ||
00:55 | fixed ILS tweaking check-in: 74efaad4a1 user: HBEggenstein tags: pi5-ils2-bookworm | |
00:39 | merged accidental fork check-in: adc65f80bb user: HBEggenstein tags: pi5-ils2-bworm-cyclerealistic | |
00:24 | fixed ILS tweaking check-in: b0f1224117 user: HBEggenstein tags: pi5-ils2-bworm-cyclerealistic | |
00:21 | fixed ILS tweaking check-in: 7b450b94dc user: HBEggenstein tags: pi5-ils2-bworm-cyclerealistic | |
2024-06-15
| ||
21:58 | merge Steve Tockey's branch cycle-realistic into the pi5-ils2-bookworm branch check-in: d413ed639f user: HBEggenstein tags: pi5-ils2-bworm-cyclerealistic | |
16:55 | Revert unconditional install of pidp8i.rc. We install it once, but don't mess with it if it's already there. check-in: 8b74d4f9fe user: poetnerd tags: pi5-ils2-bookworm | |
16:29 | Unconditionally install pidp8i.rc check-in: 1d0f9ffd4d user: poetnerd tags: pi5-ils2-bookworm | |
2024-06-14
| ||
23:42 | revert pinctrl chaching optim., not worth it. Moved ILS/NLS switching logic from compile time to runtime / configuration file check-in: ccedb853c9 user: HBEggenstein tags: pi5-ils2-bookworm | |
2024-06-09
| ||
21:02 | Fix for scanswitch as per email on 5/19. Otherwise pidp8i won't start from systemd. check-in: 32b450529e user: poetnerd tags: pi5 | |
20:59 | Fix for scanswitch as per email on 5/19. Otherwise pidp8i won't start from systemd. check-in: 3a1f169d7d user: poetnerd tags: pi5-ils2-bookworm | |
19:35 | Eliminate all use of vc includes and libraries. Eliminates PI_CFLAGS, PI_LFLAGS and PI_LIBS. Also pull in fix for install from Trunk. (Should save you a bit of merging, HB.) check-in: 1ecc2e5833 user: poetnerd tags: pi5-ils2-bookworm | |
19:27 | Eliminate all use of vc includes and libraries. Eliminates PI_CFLAGS, PI_LFLAGS and PI_LIBS. Cleanup made possible through testing by HBEggenstein in pi5-ils2-bookworm branch. check-in: f50a614018 user: poetnerd tags: pi5 | |
2024-06-06
| ||
19:54 | performance optimizations check-in: 1aefd0c723 user: HBEggenstein tags: pi5-ils2-bookworm | |
00:55 | bug fix for LED update in stopped state, and fixing a potential sign/overflow problem in the dithering of the LED update from the decode loop check-in: d2afc15e23 user: HBEggenstein tags: pi5-ils2-bookworm | |
2024-06-03
| ||
19:10 | After splitting out the PI_BINS I broke install. This should fix it. check-in: 4b84468f43 user: poetnerd tags: trunk | |
2024-05-31
| ||
17:16 | forgotten line from previous checkin check-in: 53d0aa19bd user: HBEggenstein tags: pi5-ils2-bookworm | |
17:07 | a)As ILS redraw loop is now executing faster and to accomodate fater Pi models, thefrequency at which LED status is updated is increased, so each redraw has at least 32, better ca 60 sampling points to work on, to use the fully brightness level range. b)The user tweakable RISING_FACTOR and FALLING_FACTOR values now also go thru self-calibration, making them comparable among different users and hence potentially different Raspberry Pi models. check-in: f0642ec578 user: HBEggenstein tags: pi5-ils2-bookworm | |
2024-05-26
| ||
21:19 | Some changes to the ILS code aiming to make it useable for all 40-pin header Raspi Pi models from RPi Zero to RPi 5, for a unified 'Bookworm' 32 bit OS image. The ILS code is performance optimized to allow execution on RPi Zero (when SIMH is throttled to realistic IPS), contains self-calibration to adjust to different execution speeds and has a means for tweaking the ILS effect for expert users. check-in: e29ea438fd user: HBEggenstein tags: pi5-ils2-bookworm | |
2024-05-19
| ||
19:07 | Another missed merge conflict: Gotta set -DPIDP8I! Fixed now. check-in: c752f1c29a user: poetnerd tags: pi5 | |
18:51 | Made wrong fixup of merge conflict for BUILD_PIDP8I_CFLAGS. Fixed now. check-in: 13ee9167f6 user: poetnerd tags: pi5 | |
18:47 | Pull in SIMH4 from Trunk. check-in: e467afdd62 user: poetnerd tags: pi5 | |
17:27 | We weren't initializing the GPIO pin direction in the nls interface like we did in with ils. This fixes pidp8i-test and scanswitch. check-in: 1eaccc2260 user: poetnerd tags: pi5 | |
17:14 | Merge update to Open SIMH into trunk check-in: 1d15be1c09 user: poetnerd tags: trunk | |
2024-05-17
| ||
22:36 | Fixing typo in Makefile.in. Don't know how it crept in. check-in: 8c0883157f user: poetnerd tags: trunk | |
22:35 | Somehow a typo keeps creeping into Makefile.in. I thought I fixed it. Fixing it again! Leaf check-in: 9cd4c30135 user: poetnerd tags: open-simh | |
22:26 | Migration to OpenSimh version 4 works. Needed to change the expect string in lib/simh.py.in to expect "Open SIMH" additionally. New file from SIMH: src/SIMH_printf_fmts.h check-in: 5862224e2c user: poetnerd tags: open-simh | |
21:38 | Switch from SIMH 4 to Open SIMH. check-in: ddbf43ce8f user: poetnerd tags: open-simh | |
02:55 | oops! I missed a couple merge conflicts and broke the pi platform. Fixed now. check-in: 824e023952 user: poetnerd tags: trunk | |
01:48 | Cherrypicked from the pi5 branch. Split out the gpio stuff so that it does not build on non-Pi Platforms unless forced with a new binary option "force-pidp8i". Required adding a bunch of #ifdef PIDP8I in SIMH/PDP8/pdp8_cpu.c. Ripped out the bcm_host stuff because I think it's invalid for pinctrl. Passes tests on the Mac. Now let's see what I broke on the Pi side. TODO: Clean up what are probably messy approaches in auto.def check-in: 609e37c0b9 user: poetnerd tags: trunk | |
2024-05-13
| ||
03:08 | Fixes to get things building again on my pi. Pruned a couple superfluous lines I'd previously made in auto.def. TODO: See if I can get pidp8i-test blinking lights again. check-in: 6fb29f08a2 user: poetnerd tags: pi5 | |
00:26 | Split out the gpio stuff so that it does not build on non-Pi Platforms unless forced with a new binary option "force-pidp8i". Required adding a bunch of #ifdef PIDP8I in SIMH/PDP8/pdp8_cpu.c. Ripped out the bcm_host stuff because I think it's invalid for pinctrl. Passes tests on the Mac. Now let's see what I broke on the Pi side. TODO: Clean up what are probably messy approaches in auto.def check-in: d0a4868e9b user: poetnerd tags: pi5 | |
2024-05-12
| ||
18:16 | Took an updated pinctrl from upstream. Removed use of pinctrl.o. We don't seem to need it, and so we don't need to remove main etc. from it. Rolled back my change to gpiochip.h. Going to disable gpio builds on non-pi platforms. check-in: 1bf02a37f0 user: poetnerd tags: pi5 | |
2024-05-11
| ||
02:51 | Not sure how gpio-common.c.in compiled looking in the wrong place for gpiolib.h check-in: b0c3043c04 user: poetnerd tags: pi5 | |
2024-05-10
| ||
22:21 | Additional work to teach scanswitch about includes from src/pinctrl. check-in: 8d899e3b5f user: poetnerd tags: pi5 | |
21:38 | Teach Makefile.in about pinctrl includes check-in: d70f7b1975 user: poetnerd tags: pi5 | |
21:12 | First attempt to integrate new gpio handler from Oscar Vermeulen. Won't build on the Mac because pinctrl.c uses non-portable reallocarray. Gotta fix that. check-in: b468cd1c6f user: poetnerd tags: pi5 | |
2024-04-21
| ||
23:14 | Create new branch named "pi5" check-in: c877fedf8b user: poetnerd tags: pi5 | |
2024-03-18
| ||
15:53 | Broken URL fixes check-in: a555587cd1 user: tangent tags: trunk | |
15:16 | Link made to work only under "fossil ui" now works under other hosting check-in: 024c80d686 user: tangent tags: trunk | |
2024-03-14
| ||
05:20 | Removed the test for the pidp8i-test -v flag. It was added in 20170401 with the intent of printing the software configuration string and exiting, but it no longer works, if it ever did. check-in: 24803b41aa user: tangent tags: trunk | |
2024-02-08
| ||
21:09 | Using the new Pikchr diamond primitive in the contribution guide's commit flowchart. check-in: d1b190b233 user: tangent tags: trunk | |
2023-04-30
| ||
16:28 | Added notes on defects found in YAHTZE.BA. check-in: 416088d7ea user: poetnerd tags: trunk | |
2023-03-06
| ||
04:32 | Add more debug output to os8-progtest Refine basic-games.yml because a race condition broke it on M2 Macs. I think this refinement will be definitive. Fingers crossed. check-in: c124f7a6e7 user: poetnerd tags: trunk | |
2022-12-24
| ||
18:53 | Correct attribution of SIMH hack to Kyle Owen check-in: 6019a1e1a7 user: poetnerd tags: trunk | |
2022-10-15
| ||
09:43 | Markdown formatting fix check-in: b56241f7d7 user: tangent tags: trunk | |
2022-10-13
| ||
03:03 | Installing os8-cp after os8-run in "make install" check-in: 6beed7df47 user: tangent tags: trunk | |
2022-07-04
| ||
12:28 | Grammar tweak check-in: 0ef5a18707 user: tangent tags: trunk | |
2022-01-08
| ||
02:55 | Typo fix check-in: ef142cdc8e user: tangent tags: trunk | |
02:51 | Updated SIMH to get Rick Murphy's FPP bug fix. check-in: b74012df75 user: tangent tags: trunk | |
2022-01-02
| ||
01:37 | Small tweak to "clone" language in the contributing guide check-in: 96307b81e3 user: tangent tags: trunk | |
2021-12-20
| ||
17:21 | Merged CONTRIBUTING.md changes in Leaf check-in: 6c073bdde3 user: tangent tags: cycle-realistic | |
17:21 | Fixed an obvious bug in the new material added to src/pidp8i/main.c.in check-in: 8689b4ae5c user: tangent tags: cycle-realistic | |
17:20 | Merged cycle-accurate branch tips together. check-in: f5d7f8b691 user: tangent tags: cycle-realistic | |
17:05 | Typographic tweak check-in: ef267a71d2 user: tangent tags: trunk | |
17:04 | Simplified the tail end of "Getting Started with Fossil" now that the 1.x versus 2.x crisis point is years in the past. check-in: 82951c6a5a user: tangent tags: trunk | |
16:58 | Rewrote the list of starting points in the "Getting Started with Fossil" section of the contribution guide. check-in: 4a054cc15d user: tangent tags: trunk | |
2021-12-11
| ||
19:48 | Here is the cycle-realistic version. For some reason, Fossil is not picking up some changes to pidp8i.h as well. This is needed in pidp8i.h: typedef enum { pft_stopped, /* the cpu is not running */ pft_running, /* the cpu is running */ pft_go, /* the cpu is (re-) starting from being stopped */ pft_exit /* exit(ing) SIMH */ } pidp8i_flow_t; check-in: 03fb9d8dc5 user: stevet tags: cycle-realistic | |
2021-12-04
| ||
21:20 | First apparently working version of the cycle-realistic PiDP-8/I. This makes the Sing Step switch on the PiDP-8/I front panel behave the same as on a real -8 (subject to a minor risk that MA and MB may not be 100% correct in all major states). See the thread "New, experimental, (hopefully) cycle-realistic version of the PiDP-8/I" in the user group for more information about how to use it. check-in: 241d799d53 user: stevet tags: cycle-realistic | |
21:11 | Create new branch named "cycle-realistic" check-in: 53974b1c29 user: stevet tags: cycle-realistic | |
2021-11-16
| ||
02:34 | Calling udevadm from the "make install-system" target via a relative path since the upstream OSes keep moving it about. It's been found in /sbin, /bin and /usr/bin! check-in: 870c65f831 user: tangent tags: trunk | |
2021-11-09
| ||
01:16 | First version of fixes. "Why are the ILS equations now not symmetrical excepting the scaling factor?" https://tangentsoft.com/pidp8i/tktview?name=135d14a0c2 "Extremely low throttle values cause blinky display" https://tangentsoft.com/pidp8i/tktview?name=b8d9865f31 Perhaps also "ILS brightness takes seconds to settle at low throttle values" https://tangentsoft.com/pidp8i/tktview?name=26cc6b3614 In the initial test version I deliberately exaggerated the rise and decay delays just so that people testing this are convinced this is really still doing a "lamp" simulation. Perhaps one should make those settings user configurable anyway. Still to do: fix some code indentation, check if there are comments that are no longer describing the current code, check if the timing of the switch management is still ok. Leaf check-in: 44e6476477 user: HBEggenstein tags: led-update-fixes | |
00:09 | Begin branch to fix some LED update issues: -prevent excessive undersampling of the LED states especially with high (unthrottled) instructions-per-second rates -speed up the ILS thread by reducing the number of GPIO switching -fix a bug in the calculation of the target brightness when the number of sampled instructions is rel. low (say < 100) -improve double buffering of LED "display" : swap displays only when updates were made (helps with extremly aggressive throttling) check-in: febe31baea user: HBEggenstein tags: led-update-fixes | |
2021-11-08
| ||
23:33 | Begin branch to fix some issues related to the LED panel display Leaf check-in: 556e1a6952 user: HBEggenstein tags: bogus, led-fixes | |
2021-10-31
| ||
22:41 | in order to check whether a deposit is made to nonexistent memory, the memory size need to be passed now in the handle_flow_control_switches function. Now the code even compiles.. Leaf check-in: 01aa183fda user: HBEggenstein tags: fix-dep-exam-ignore-if | |
20:15 | Begin branch with fix for bug : "Deposit and Exam limited to first 4096 words" check-in: ccf47d95d4 user: HBEggenstein tags: fix-dep-exam-ignore-if | |
2021-10-23
| ||
14:16 | I2CB: build process, documentation improvements As this feature is still experimental and to allow the continuous integration to build the simh executable without th installed dependencies (libi2cd), the I2CB device logic is not included in the build by default for now, but configure offers the --i2c-bridge option to enable it, provided the libi2cd lib and header file can be found. Leaf check-in: 36a77478e0 user: HBEggenstein tags: i2c-bridge-device | |
2021-10-18
| ||
07:54 | I2CB: reformatted source code, added some documentation, changed (C) remark as per Warren Young's feedback check-in: 3a58bc038e user: HBEggenstein tags: i2c-bridge-device | |
00:38 | Restored a space present in an upstream SIMH file to prevent a pointless merge conflict. check-in: fab3f7655b user: tangent tags: i2c-bridge-device | |
00:25 | Began a new ChangeLog entry with this branch's contribution as its first entry. check-in: bf5d1b8113 user: tangent tags: i2c-bridge-device | |
00:04 | Removed the "PiDP add" and "PiDP end" comments. Those markers are only for injections into upstream files; this one's new. check-in: 151d16011d user: tangent tags: i2c-bridge-device | |
2021-10-17
| ||
21:42 | I2CB device: first mostly functional version. check-in: 11736019ce user: HBEggenstein tags: i2c-bridge-device | |
2021-10-16
| ||
13:50 | work in progress. minor tweaks but seems to compile and have basic device configuration working now, except attach/detach logic and flawed association between I2C addr and dev no check-in: 6b2c49bf4c user: HBEggenstein tags: i2c-bridge-device | |
00:41 | Work in progress The association of dev no and I2C address per unit need more work check-in: d3432d4092 user: HBEggenstein tags: i2c-bridge-device | |
2021-10-13
| ||
23:07 | Initial commit to start a branch exploring the idea of having a generic SIMH device that will forward IOT instructions for configurable PDP-8 devices so they can be implemented on external hardware, typically a microcontroller connected to the host via I2C. This could be used for rapid prototyping of either historical device emulation or emulating custom I/O logic. check-in: fbcfafaf43 user: HBEggenstein tags: i2c-bridge-device | |
2021-07-12
| ||
12:35 | Merged trunk changes in check-in: a9eb4a4733 user: tangent tags: pi4-gpio-clean | |
2021-06-05
| ||
12:09 | Dropped the ETOS matter from COPYING.md, and clarified the blanket licensing info for the rest of the DEC software. check-in: d80d302db1 user: tangent tags: trunk | |
2021-05-17
| ||
15:18 | Changed the way "bosi prepare" handles sshd first start to use a Raspberry Pi specific mechanism that [https://groups.google.com/g/pidp-8/c/qCVLKZoJPkU/m/TLqY2IkaBAAJ | reportedly regenerates the shredded keys]. check-in: 02c35e52bf user: tangent tags: trunk | |
2021-04-23
| ||
19:51 | Updated to the latest SIMH to fix a problem with TSS/8 booting. It seems they updated some of the device handling since the Feb 3 update we did just prior to the current stable release. check-in: f02ebe72df user: tangent tags: trunk | |
2021-04-05
| ||
01:18 | Tweaks to the U/W FOCAL manual supplement's section on getting program text in, following with the wiki edit to the more generic "Getting Text In" doc. check-in: 19b97405ed user: tangent tags: trunk | |
2021-04-01
| ||
22:07 | Added a patch to the build of U/W FOCAL. It puts code that clears EAE Mode B (and copes appropriately with other PDP-8 Family members that don't have EAE Mode B) into a block of initialization code reserved for "CLEAR ANNOYING FLAGS". This should resolve bug 025575a170. check-in: 9f44dd87b8 user: poetnerd tags: trunk | |
2021-02-15
| ||
08:49 | Adjustments to the build advice in the readme to track the changes made to "bosi build". check-in: 218401a205 user: tangent tags: trunk | |
08:10 | Added missing ;; in one of the case statements in bosi check-in: 247961207f user: tangent tags: trunk | |
07:59 | Small tweaks to the release process doc. check-in: d28caab153 user: tangent tags: trunk | |
07:04 | Merged yet more changes for v20210214 in Leaf check-in: 73038fadf8 user: tangent tags: release, v20210214 | |
06:57 | Reworked the logic in the new "bosi build nls" code so it copies any missing images from UV, rather than blindly copy all of them only when the first one is missing. This lets you re-run the script later, relying on it to fill in the gaps before starting on the expensive parts of the build. check-in: 5ec88693ac user: tangent tags: trunk | |
06:53 | Fixed a misplaced curly brace in previous check-in: 59e778933e user: tangent tags: trunk | |
06:51 | Added the "nls" parameter to "bosi build" so the single-core build can share the images synced as unversioned content up to the public server rather than need to rebuild them. This also clones the images down as part of the repo for the first time, so the user has a more complete clone of the repo. check-in: 3d933f656d user: tangent tags: trunk | |
06:34 | Moved the Python 3 library stuff back up in bosi from "build" to "init" step again after the "sudo make install" step failed, since that may need to run one of the class simh or class os8script Python programs that depend on one of these as root. Using platform binary packages rather than pip3 user packages. check-in: 3a02a9163b user: tangent tags: trunk | |
03:50 | Moved the pip3 install command down from "bosi init" into "bosi build" so it's run as the pidp8i user, not as root. It does us no good to have the Python libraries installed for use by root! check-in: e4a27760c4 user: tangent tags: trunk | |
03:31 | Merged still more trunk tweaks in check-in: 280c662a13 user: tangent tags: release, v20210214 | |
03:31 | Moved the 8GB image size requirement up after reflecting on the prior change. check-in: 9cac6262d6 user: tangent tags: trunk | |
03:17 | The "bosi shrink" process roached the SD card, and I can't be bothered to figure out why. It's a minor optimization, not worth spending the time on, given that you have to go out of your way to find something smaller than 8GB and end up paying about as much for it when you do find one. I'm therefore betting that almost no one is actually trying to use a 4GB card, the only thing smaller that could possibly work, since even with the shrink, the finished image wouldn't fit on a 2GB card. check-in: d79a842547 user: tangent tags: trunk | |
02:42 | Swapped commands in "sudo time" constructs in bosi so we use the calling shell's builtin version instead of /usr/bin/time, since at least on macOS, the builtin's output is clearer. Tweaked the prior commands to ensure that we don't count the time taken while sudo is blocking waiting for a psssword input against the time taken by the elevated command. check-in: 1ef732c32c user: tangent tags: trunk | |
02:36 | Merged more trunk tweaks in check-in: 50be8bd991 user: tangent tags: release, v20210214 | |
02:36 | Comment tweak check-in: 4a67ec5806 user: tangent tags: trunk | |
01:59 | Documented need for prior commit's change in the release process doc. check-in: fba31778b0 user: tangent tags: trunk | |
01:58 | Updated "stretch" to "buster" in tools/bosi check-in: f0461538d2 user: tangent tags: trunk | |
01:27 | Had to reorder and update some of the steps in "bosi prepare" to make it work on the current Rasperry Pi OS version. check-in: aeac6fa347 user: tangent tags: trunk | |
00:58 | More tweaks to the BOSI process. check-in: 356fc7e331 user: tangent tags: trunk | |
00:14 | Merged trunk tweaks in check-in: d6d2943cec user: tangent tags: release, v20210214 | |
00:02 | Upped minimum SD card requirement from 2GB to 8GB after "bosi init" failed with an out-of-space message on the "apt upgrade" step, even after removing the biggest disk hogs we can most do without. The Foundation recommends 8GB, so we now do, too. check-in: 0136f1193f user: tangent tags: trunk | |
2021-02-14
| ||
23:10 | URL fix check-in: be28caef24 user: tangent tags: trunk | |
22:51 | Merged trunk changes for v20210214 into release branch check-in: 1fa1be1425 user: tangent tags: release, v20210214 | |
22:39 | Released v20210214 check-in: fad938bcb7 user: tangent tags: trunk | |
2021-02-11
| ||
06:13 | Reworked the way the Python missing module detection stuff works so it generates the proper module names on Debian Buster. Dropped recommendation of easy_install (semi-obsolete) and rewrote the advice it emits to be a bit clearer. check-in: 76133aacd0 user: tangent tags: trunk | |
2021-02-09
| ||
02:18 | Mentioned class-os8script doc. Took credit for some stuff. check-in: 3bd3ff0759 user: poetnerd tags: trunk | |
02:00 | Update of ChangeLog to accurately report the fix to UCSYS.BI. check-in: 4e30777357 user: poetnerd tags: trunk | |
2021-02-08
| ||
23:43 | "file link" doesn't exist in Jim Tcl, so the new symlink recreation stuff doesn't work when configured without "real" tclsh available. check-in: 1eb3e88ec3 user: tangent tags: trunk | |
23:29 | tools/autosetup-update now removes the contents of autosetup/* before doing its work so we track upstream deletions properly. This results in a lot of files being deleted, but it looks like it's a result of files being merged, rather than removal of functionality. The configure script appears to run still... check-in: 2dbb85383b user: tangent tags: trunk | |
23:08 | Fix for c23c91bdd. Futil was matching on the size of the file being edited. Now the regex that skips over the file has been refined. check-in: e96b7f3637 user: poetnerd tags: trunk | |
22:56 | Year fix in ChangeLog: it's 2021 now, really! check-in: 77a8cc35a2 user: tangent tags: trunk | |
22:23 | Merged SIMH updates down to trunk. check-in: 5dedd3ca5d user: tangent tags: trunk | |
22:07 | Cherrypicked the last two changes on the bogus file-renaming branch down to trunk. check-in: 25d04173ec user: tangent tags: trunk | |
22:06 | Redo of [e0af34dd55] atop fixed parent. check-in: a38bb07eca user: tangent tags: trunk | |
22:04 | Retry commit [ccb4c54bb2], without the inadvertent reversion of the Advent filename case folding fixes. check-in: d02c0ede5a user: tangent tags: trunk | |
21:55 | Removed the last remaining symlinks, being those for CC8's init.h and libc.h files, which CC8 always looks for in the CWD, yet which need to exist in 3 different places. Creating symlinks for the other two at configure time so we no longer need those making checkouts to "fossil set allow-symlnks 1" to avoid screwiness. Closed-Leaf check-in: 3fcbc85340 user: tangent tags: file-renaming | |
21:21 | Added tools/simh-bisect.in to INFILES in Makefile.in so clean builds and such work properly. (Probably harmless, but no point letting that list drift from the corresponding on in auto.def.) check-in: 8197e6123d user: tangent tags: file-renaming | |
21:10 | Renamed the old .agignore files to .ignore. (This is why we couldn't commit them to the repo at the same time as previous: does Fossil remove before rename, or vice versa?) check-in: e0af34dd55 user: tangent tags: file-renaming | |
21:09 | Removed the .ignore symlnks. (Purposefully separate from next step, so there isn't a naming conflict.) check-in: ccb4c54bb2 user: tangent tags: file-renaming | |
20:53 | Merged trunk in Leaf check-in: d022dae222 user: tangent tags: simh-update | |
20:53 | Re-lowercased src/advent/* (excepting README.md) check-in: 5bab882cd4 user: tangent tags: simh-update | |
18:39 | Updated the Fossil instructions in the contribution guide to track recent upstream changes. check-in: a15213d710 user: tangent tags: trunk | |
09:33 | Merged trunk changes in check-in: 0748329823 user: tangent tags: simh-update | |
09:25 | Several cleanups to the "make clean" target: removing bin/*.rk05 generically rather than a long list of explicit names, so we always remove everything we built; removed several redundant TU56 entries since we were already removing bin/*.tu56 for the same reason; and removed a few generated files from the repo so they don't show up as MISSING after a "make clean". If these latter aren't being regenerated properly after being removed, that's a reconfig issue, not a reason to check the last generated version in. check-in: 44ace29ebe user: tangent tags: trunk | |
06:32 | Lowercased all the file names in pspec/advent.pspec to match their new case in the repo. Without this, the build only succeeds on systems with case-insensitive filesystems like macOS, and then only with the default FS options. check-in: c425495e2c user: tangent tags: trunk | |
06:01 | The simh-update tool could put diffs for non-managed files into the patch, which would complicate patch application. This is especially problematic in bisecting, since it increases the "footprint" of the patch needlessly, increasing the risk of bad merges on switching versions in place. check-in: 7e2e92698e user: tangent tags: simh-update | |
05:26 | Merged trunk changes in so I can run simh-bisect on the branch. check-in: 98b3c85a50 user: tangent tags: simh-update | |
04:27 | New tool: simh-bisect, a companion to simh-update for bisecting upstream SIMH changes against our local PiDP-8/I patches. check-in: 0a19e8889c user: tangent tags: trunk | |
03:57 | New SIMH had extra whitespace in attach output. One place in os8script was not robust about that. Fixed now. check-in: 40717103a9 user: poetnerd tags: simh-update | |
03:28 | Sync advent sources from new upstream at poetnerd.com: Source names are in lower case. There are a couple typos fixed: advent.dc and getwrd.ra. There is a runad.bi script, but it appears incompatible with the version of BATCH we have. There is also a clear.bi script, but it's also probably out of sync with reality. check-in: 1d9cb9aa3e user: poetnerd tags: trunk | |
00:51 | Updated Autosetup to 0.7.0+ check-in: 5d15b9ec74 user: tangent tags: simh-update | |
00:43 | Updated ChangeLog for the imminent release check-in: 600a9459a8 user: tangent tags: simh-update | |
00:43 | New release policy: point at the release branch for released version file and directory links, using trunk only for the prerelease version notes. check-in: c5b5ced48b user: tangent tags: simh-update | |
00:41 | Updated SIMH to GH commit 2f66e74c506420959d2591ffd1700a9b58d59f28. EDIT: Moved to the simh-update branch since it breaks clean builds. (Worked fine prior to commit due to preexisting RK05 and TU56 media that didn't get rebuilt as part of testing.) check-in: e3aba3706e user: tangent tags: simh-update | |
2021-02-07
| ||
23:54 | MIME type fix for previous check-in: efb452f916 user: tangent tags: trunk | |
23:53 | URL fix in previous check-in: b39d87f092 user: tangent tags: trunk | |
23:49 | Markdown improvements to the Adventure dir's readme check-in: ffe6313b33 user: tangent tags: trunk | |
23:10 | Fixed a problem with LOAD_ADD + EXAM interactions due to use of IR instead of MB register in the tail end of the PDP-8 CPU instruction decoding loop. We use IR instead high up in the loop for an early display update, but that's because MB isn't settled yet. Without this, you can get bogus MB displays, per bug [7ae7a73744c9c0], which this closes. check-in: 709bc3a7f6 user: tangent tags: trunk | |
2021-02-04
| ||
18:56 | Fixed a Markdown rendering problem. (Unwanted line break in literal text.) check-in: b91714a2ed user: tangent tags: trunk | |
2021-02-02
| ||
02:34 | Fixed build of basic-games.tu56. Wasn't supposed to install the README.md file. The blow-out was benign on Mac build, but kicked out other files on the Pi build. It should have been fixed like this long ago. TODO: Figure out why the state machine in os8-cp couldn't recover as easily in the pi build. check-in: bfbf64133a user: poetnerd tags: trunk | |
2020-12-16
| ||
19:52 | Moved a link for better locality. check-in: daf8e4403c user: tangent tags: trunk | |
19:35 | Added "Simplifying Boot and Login" section to the top-level README.md file. check-in: f7c4a027ba user: tangent tags: trunk | |
19:28 | Added named anchors to several more sections in README.md, and moved them to the end of the header so they a) don't harm readability in text form as much; and b) link you to the actual header line, not to a prior empty paragraph. check-in: fee8b21e16 user: tangent tags: trunk | |
19:15 | Moved the sshd config instructions into doc/OS-images.md, since README.md primarily covers the build-from-source option, where the step isn't actually necessary. Since we've given out links to this section of README.md multiple times on the mailing list, kept a forwarding link to it in case someone follows one of those links. check-in: 5bc5a272b9 user: tangent tags: trunk | |
19:03 | Tightened up the top-level README.md file some more. check-in: 4befb5ef3c user: tangent tags: trunk | |
2020-12-14
| ||
16:59 | Assorted updates to the top-level README.md, mainly to track changes since the last release. check-in: c21b97be5f user: tangent tags: trunk | |
2020-12-09
| ||
06:17 | Fixed the message prompting for the installation of pyyaml on configure. check-in: 76d2c7abee user: tangent tags: trunk | |
06:12 | Added libbcm_host stuff for Deeper Thought check-in: b9eb3c36f2 user: tangent tags: trunk | |
03:57 | os8script class document is complete. The demo program is moved to its permanent location. check-in: 77a525a884 user: poetnerd tags: trunk | |
02:49 | Changed os8script.check_and_run to have an optional replies arg. Fleshed out and commented the demo program. Cleaned up document. TODO: 1. move the demo to its permanent home. 2. Write the documentation to point to it. 3. The proofreading, grammar, etc. check-in: 25dc789408 user: poetnerd tags: trunk | |
2020-12-08
| ||
05:24 | Created a demo program for the os8script class. Along the way I realized that the housekeeping was needlessly complex, and should be added to the os8script class. By way of a test I moved cleanup code from os8-progtest to os8script. The class document has moved forward but is still not ready. The example needs to be cleaned up, and the appropriate smoothings of best practices need to be documented: 1. The recommended os8.check_and_run method assumes you're running the command decoder, and needs to be taught about the arrays of responses. Otherwise: 2. The use of the response arrays requires calling os8.simh.os8_cmd to run commands. The use of send_string, send_command, and os8_cmd is not orthogonal, and isn't using the respnse arrays where it could. check-in: 23d51abbd5 user: poetnerd tags: trunk | |
2020-12-07
| ||
03:03 | Snapshot. Almost, but not quite done. TODO: 1. Finish the narrative on how to write a complete program. 2. Confirm all the links work. 3. Completeness, style, and grammar check. check-in: 0a1d0ed404 user: poetnerd tags: trunk | |
2020-12-06
| ||
17:11 | Added mention of ocomp. Added links to README files. Under OCK, now link to the os8-combined-kit.md doc. check-in: 3af5c9428d user: poetnerd tags: trunk | |
2020-12-05
| ||
22:43 | Moved the testing theory and methods from doc/RELEASE-PROCESS.md to a new file, doc/testing.md. check-in: 5bcfb770a0 user: tangent tags: trunk | |
22:31 | "make test" now depends on "all" check-in: 4b8d41ed9e user: tangent tags: trunk | |
21:16 | Update Changelog.md with packaging and testing status updates. check-in: 0ef418b9ce user: poetnerd tags: trunk | |
20:22 | Documented testing regime, including the layers of the system, the existence proof of working lower layers, and the use of os8-progtest and make test. check-in: 116f6dba66 user: poetnerd tags: trunk | |
19:50 | Add documentation of the --exitfirst option and the work-around for long output. check-in: 0c003f5ef9 user: poetnerd tags: trunk | |
19:15 | I found a way to kick the basic games tests when they stall: Send a newline, and then cope with extra newlines in output. check-in: d2feb4a20c user: poetnerd tags: trunk | |
04:23 | Added 'make test'. auto.def looks for tests for the packages it builds. Makefile runs them. Along the way I learned that tests with lots of output like basic-games:snoopy and basic-games:bunny sometimes randomly hang up. It looks like pexpect is returning a partial read on the output. I've experimented with the maxread argument to pexpect spawn, and with pausing for a second between tests. But the tests are still flaky. For this snapshot I've got them commented out of basic-games.yml while I ponder reponses. Also fixed a mistake I made in -x option: I wasn't calling clean_quit to exit and so I was leaving temp files. check-in: f212194966 user: poetnerd tags: trunk | |
03:02 | Add --exitfirst, -x to exit with -1 status on FIRST failure. This will be useful when we want to run all tests but blow out if one fails. Let's blow out on the first failure. check-in: a8991d9a8a user: poetnerd tags: trunk | |
02:40 | os8-run manages context. We do not need resume. It was commented out of dist-rk05.os8. Deleted now. It is now deleted from src-rk05.os8. This may rid us of a race condition where we're doing resume but don't need to. check-in: e92c4bb634 user: poetnerd tags: trunk | |
2020-12-04
| ||
05:20 | Added a test harness for basic-games. It runs HELLO.BA, SNOOPY.BA, and BUNNY.BA. More tests can be added. check-in: f15facae14 user: poetnerd tags: trunk | |
2020-11-24
| ||
05:30 | Snapshot. Starting to organize into a logical sequence of presentation. TODO: 1. Work through more API calls. 2. Decide how to present the match tables. check-in: f1dd4ef410 user: poetnerd tags: trunk | |
2020-11-20
| ||
05:03 | Another snapshot of class-os8script.md Still brainstorming content. check-in: bcefc61e95 user: poetnerd tags: trunk | |
2020-11-19
| ||
21:32 | Snapshot of class-os8script.md In course of documenting, figured out a one character change to the initialization that elimintates nade for fakeout_script. So I did it. check-in: 20b6b2476b user: poetnerd tags: trunk | |
2020-11-18
| ||
22:13 | Found another rename needed to follow convention. dcp writeup. check-in: 4654cb8a4a user: poetnerd tags: trunk | |
22:12 | I spazzed and didn't follow the naming convention. Remaned new os8script class doc to contain a dash instead of an underscore. check-in: dc2c5dc5c3 user: poetnerd tags: trunk | |
2020-11-17
| ||
01:29 | A few Markdown fixes in the new os8-progtest doc check-in: f0513f19c8 user: tangent tags: trunk | |
01:11 | Added whitespace to the ADVENT test, since we're using it as an example. check-in: ef57a63a2f user: tangent tags: trunk | |
01:11 | Edit pass on the os8-progtest doc. check-in: 7528959167 user: tangent tags: trunk | |
2020-11-16
| ||
05:28 | Fixed apt package name for pyyaml in GH-CI. check-in: fc48b818df user: tangent tags: trunk | |
05:25 | Forgot the license info in os8-progtest.md. Fixed now. check-in: 09ac12b129 user: poetnerd tags: trunk | |
05:01 | I must have gotten confused with the merge of trunk. I thought I moved the tests to scripts/os8-progtest/. Now they're moved for real. Next step in production: shift os8-progtest to os8-progtest.in so we parameterize the Python version. check-in: b5df9631af user: poetnerd tags: trunk | |
04:51 | Further cleanup to make os8-progtest ready for production use: 1. Change failure to print failure and continue on to other tests. 2. Correct comments about escape characters. 3. Move the test .yml files from tools/testing to scripts/os8-progtest. 4. Add a --srcdir option, and properly expand the path for finding the test files. 5. Document usage of the program and creation of the state machine files in doc/os8-progtest.md check-in: 11b7f30c67 user: poetnerd tags: trunk | |
00:00 | Added pyyaml prereq to the GitHub CI workflow check-in: bf53ce3e08 user: tangent tags: trunk | |
2020-11-15
| ||
23:51 | Converted the tests for Python modules in auto.def to a loop over the module names, then added pyyaml to that list. check-in: 41c08ee670 user: tangent tags: trunk | |
17:48 | Added ability to process multiple tests on command. Removed superfluous "program" item in test files. Added test of fib to cc8. check-in: 7d40ec51ed user: poetnerd tags: trunk | |
16:53 | Added a "config" parameter, and if config contains "slow" then wait .05 seconds between sending each character. This enables interaction with uwfocal without overrunning keyboard buffer. This structure can be expanded... check-in: ed4d5840ec user: poetnerd tags: trunk | |
03:20 | Converted os8-progtest to use files. Bit the bullet and used YAML. YAML is now a prereq. (I have not yet added the prereq code to auto.def.) check-in: b37034d41d user: poetnerd tags: trunk | |
2020-11-14
| ||
04:55 | Eliminate redundant line of verbose output. check-in: 4ebe4ee822 user: poetnerd tags: trunk | |
04:41 | Added testing for chekmo. Improved output on test failure. Further cleanup on exit. check-in: c5184fcbbc user: poetnerd tags: trunk | |
04:21 | Add comments to give clues to proper reply strings. check-in: 14ed9296d3 user: poetnerd tags: trunk | |
04:12 | Needed to remove the temp file created for the boot device. check-in: a090dfb35b user: poetnerd tags: trunk | |
2020-11-13
| ||
23:08 | Program test harness. Will validate advent, cc8, and uwfocal. Note: uwfocal is fragile. It EASILY gets its input buffer overrun. check-in: cd63546a8a user: poetnerd tags: trunk | |
18:42 | Fixed a missing backtick and a typo. Should fix the rendering of the last couple pages of this doc. check-in: e11923f83d user: poetnerd tags: trunk | |
06:17 | Early snapshot. Beginnings of a document of the os8script.py API. Probably begin with a paste-in of the comments from the code. Currently consists of a reminder how I open coded the OCOMP command state machine. check-in: 452f1a6dba user: poetnerd tags: trunk | |
05:50 | Since we can print the File not found error, we should be able to print the user error output similarly. check-in: 1472e398b9 user: poetnerd tags: trunk | |
05:38 | code cleanup: Pulled common test and run code from ocomp, pal8 and os8 commands into a single method. This also fixes that pal8 and ocomp tested for simh context too late to be useful Eliminated redundant testing of results. Taught ocomp how to report WHICH file is not found (using code from pal8_command I'd forgotton I had.) Note that there STILL seems to be a race condition in the os8 command with regards to ^C out of some commands. I tried to chase it down but have not yet found it. check-in: aeb9b2026e user: poetnerd tags: trunk | |
03:17 | Small change: Make the replies a dictionary parameterized by command name so that we can be more table driven. check-in: 66a76695bb user: poetnerd tags: trunk | |
2020-11-12
| ||
00:40 | Converted the inventory to an HTML table without all the cross-page links to other content. I copied this version into the Wiki. TODO: Pick ONE of these either the Wiki or the README.md as canon. check-in: dea2133077 user: poetnerd tags: trunk | |
2020-11-11
| ||
09:58 | Actual fix for previous: I misunderstood what the grandparent commit was trying to accomplish. check-in: 4280bbc50d user: tangent tags: trunk | |
09:53 | Fixed a backslash problem in the Markdown for the ASCII table in uwfocal-manual.md. check-in: 70127af4ad user: tangent tags: trunk | |
01:49 | Attempt to compensate for problem in Appendix I on the backtick. The <code></code> blocks screw up the table. Let's delete them for now. check-in: 68f6e49bd2 user: poetnerd tags: trunk | |
01:31 | Improved os8pkg verify command. Uses new `ocomp` os8-run command. Documentation is updated for both tools. Test script for the ocomp command. Fixed a bug I introduced when I changed the os8script API: Need to pass in the script_path for error reporting. Oops. check-in: 5910fa4e4c user: poetnerd tags: trunk | |
2020-11-10
| ||
04:16 | Snapshot: Initial crude verify command. Runs OCOMP on the outputs and prints results. TODO: Teach os8pkg and os8script how to interpret the "NO OUTPUT" result as "success" and "File not found" as failure so the user doesn't have to make interpretation. check-in: 50d0971000 user: poetnerd tags: trunk | |
04:13 | API change: Allow us to run a script on an in-memory file created with Python io library. check-in: 5eba589cde user: poetnerd tags: trunk | |
02:55 | Keep the creator for ocomp.tu56 as a test script. check-in: f954eba078 user: poetnerd tags: trunk | |
2020-11-09
| ||
21:39 | Integrate the OCOMP Octal Compare and Dump tool into the DIST packs so that os8pkg can use it for verification. check-in: 543326f0a9 user: poetnerd tags: trunk | |
2020-11-06
| ||
04:52 | cc8 package needed updating to include the new ctbl.tx driver table. This fixes [ac71d98abf1c]. check-in: fb220f4ad2 user: poetnerd tags: trunk | |
2020-11-05
| ||
04:00 | I see that I broke install when I re-arranged the code. Fixed now. check-in: d1a1219a0f user: poetnerd tags: trunk | |
2020-11-04
| ||
21:03 | With re-arrangement of basic and basic-games packages, v3d-patched no longer has HELLO.BA. But we don't need it in a default basic. check-in: 7005ea8350 user: poetnerd tags: trunk | |
19:23 | More "hacker" reference replacement check-in: 2319bd5fae user: tangent tags: trunk | |
19:21 | Replaced embedded doc references to HACKERS.md with CONTRIBUTING.md, so clicks don't have to go through the HTTP redirect. check-in: 64c9b68d74 user: tangent tags: trunk | |
18:31 | Caught mis-conditional of LCBAS on "ba" not "basic". check-in: 5e6bcb2689 user: poetnerd tags: trunk | |
2020-11-03
| ||
22:23 | Redesign of how packages are managed. New tool os8pkg with a different approach allowing command-line based install and uninstall of packages in a way compatable with the previous config setups. check-in: d96fac26dc user: poetnerd tags: trunk | |
22:14 | And I forgot to save the document with the updated location. Leaf check-in: 60e7962e68 user: poetnerd tags: os8pkg | |
22:08 | Move pspec files from a scripts subdir to a top level dir, "pspec". check-in: b4799fbe0d user: poetnerd tags: os8pkg | |
21:43 | We don't install 600 blocks of KERMIT.PA source on our boot packs. check-in: 167527cdaa user: poetnerd tags: os8pkg | |
21:24 | Added conflicts command that identifies output files seen in multiple packages. check-in: bbf49da0ed user: poetnerd tags: os8pkg | |
20:56 | Backported the merger of the PiDP-8/I and MySQL++ "Submitting Patches" and GitHub mirroring sections of CONTRIBUTING.md to minimize differences. check-in: 396bbd5213 user: tangent tags: trunk | |
19:56 | Renamed HACKERS.md to CONTRIBUTING.md to placate GitHub, and added the new Fossil 2.14 "fossil clone URI" method. check-in: 2cdd8800d6 user: tangent tags: trunk | |
14:03 | Amend all command to not run include. Move build so that it will follow deps and precent install when all command is run. check-in: 132c4aa095 user: poetnerd tags: os8pkg | |
04:53 | A bit of cleanup to the internal structure of main: Startup of os8script runner is make into a subroutine that's called once when needed. A new command, "build" has been added that runs either the build: section, or performs os8-run on the default builder script. check-in: 6938c19e1f user: poetnerd tags: os8pkg | |
03:19 | Get rid of a superfluous line of code that was distracting me. It should have been deleted some time ago. check-in: be9572ec4c user: poetnerd tags: os8pkg | |
2020-11-02
| ||
22:39 | Removed uwfocal-4e-[12].tu56 binary blobs. Switched to managing uwfocal in src/uwfocal, controlled by scripts/pspec/uwfocal.papec. We build UWF16K.BN and UWF16K.SV. We copy more documentation in now. There is other stuff we could build. But that is for another day. check-in: a421a7ee91 user: poetnerd tags: os8pkg | |
00:21 | Binary blob, local.tu56, and all its usage, and mention in docs has been removed because everything that was in it has been spun out to source-tree based implementations. check-in: 82a7a25b1c user: poetnerd tags: os8pkg | |
2020-11-01
| ||
23:24 | Move the patched FORLIB.RL binary out of media/os8/local.tu56 to the source tree. TODO: Pull in all the sources and create a forlib-51.10M-tu56.os8 script that builds it from source. check-in: 4d4aa628a0 user: poetnerd tags: os8pkg | |
20:13 | Switch DCP from binary blob in local.tu56 to the source tree managed by os8pkg. Found a bug in Makefile.in: New packages were not generating a new scripts/os8pkg/pkgs.os8 file. check-in: ced69ff18e user: poetnerd tags: os8pkg | |
19:07 | Forgot to delete the music binary blob. check-in: 41a9d4b2c8 user: poetnerd tags: os8pkg | |
18:38 | Converted Music to use os8pkg. We actually build MUSIC.SV now. Not useful for the pidp-8/i just yet, but who knows... check-in: 769f9baff2 user: poetnerd tags: os8pkg | |
17:53 | Forgot to ADD the focal69-tu56.os8 script. check-in: f35da76cbe user: poetnerd tags: os8pkg | |
17:51 | Reorganized calls to umount in v3d/dist-rk05.os8. This unearthed a bug: following a umount command with a cpto or cpfrom command would pause and then timeout. Root cause: os8_pip_to and os8_pip_from were unconditionally calling esc_to_simh, and then calling simh_cmd that would check context and call it only if necessary. Fixed. Also corrected comment naming os8_pip_from ans os8_pip_to, and added some more pass-in of debug status. Removed install of music into dist in preparation for conversion to pspec. Added test/cpto.os8 as test case for this bug fix. check-in: 11fc9182d0 user: poetnerd tags: os8pkg | |
02:31 | Credit upstream for focal69. Rename source files to accurately follow upstream. check-in: 2fe0f9d65f user: poetnerd tags: os8pkg | |
01:37 | Converted focal69 from binary blob focal69.tu56 to build from source managed by os8pkg. TODO: Recover the source to the 4WORD overlay using the same techniques that were used by me in 2017 to recover the source of the 8K overlay. check-in: eb765f95d4 user: poetnerd tags: os8pkg | |
01:24 | The uninstall command quit working because of a misplaced indent. Fixed. Added some addtional output in verbose and debug modes. check-in: 06326e5076 user: poetnerd tags: os8pkg | |
2020-10-31
| ||
22:29 | The os8pkg script command is no longer supported. The code implenting tt should have been deleted when I checked in the version with the updated install and include methods. I've now removed the script command code. check-in: d1e39692e1 user: poetnerd tags: os8pkg | |
21:28 | Move LC/UC batch scripts for v3d to source tree instead of local.tu56. Along the way discovered that UCSYS.BI for v3f/ock somehow was being used. Fixed now. check-in: 78df097f1c user: poetnerd tags: os8pkg | |
20:18 | Added bin/os8pkg to clean-glob check-in: 801417feab user: tangent tags: os8pkg | |
20:17 | Merged fossil settings adjustments in from trunk check-in: f8e38aabcd user: tangent tags: os8pkg | |
20:17 | Added more delete-able things to clean-glob check-in: 07baed71a6 user: tangent tags: trunk | |
19:53 | Added a clean-glob setting, listing the files we know can be unconditionally deleted on "fossil clean" without saving them to the undo buffer. Also tweaked the ignore-glob setting to cooperate. check-in: b7b60dae32 user: tangent tags: trunk | |
19:17 | Cleaned a few things up in the "build all packages" bit of [fe948b87e0f940fc]. check-in: 58638a8250 user: tangent tags: os8pkg | |
18:58 | Moved vtedit from stuff media/os8/local.tu56 to a build from source package. We don't install the package. This check-in fixes the build system so that we actually build packages that are not used. bin/os8pkg install vtedit has been successfuly run. check-in: fe948b87e0 user: poetnerd tags: os8pkg | |
18:56 | Simplified some overcomplicated logic in auto.def for calling "os8pkg deps". check-in: 09ec30af96 user: tangent tags: os8pkg | |
18:52 | Implemented the "os8pkg all" command, previously documented. check-in: 79a3091518 user: tangent tags: os8pkg | |
18:36 | Fixed a hard tab in auto.def check-in: 124d4ffaa9 user: tangent tags: os8pkg | |
18:22 | Fixed a problem in previous that prevents most of the commands from running. check-in: 4f048240b4 user: tangent tags: os8pkg | |
18:10 | Added the "format" os8pkg command, which displays the "format:" value from the pspec file. We're going to need it shortly. check-in: d914005d00 user: tangent tags: os8pkg | |
17:29 | Merged trunk changes in check-in: ce293eb061 user: tangent tags: os8pkg | |
17:28 | The bin/cc8, d8tape, and palbart executable build rules weren't using the *_CFLAGS variables defined up at the top of Makefile.in. check-in: a4061519fd user: tangent tags: trunk | |
15:06 | There isn't room on the chekmo.tu56 image for a listing file so don't bother creating it or trying to store it. check-in: e20d036ee2 user: poetnerd tags: os8pkg | |
14:56 | Forgot to ADD the builder script! check-in: 99db9a092a user: poetnerd tags: os8pkg | |
04:55 | Updated the PiDP-8/I KiCad hardware files to the 2019 kit version. check-in: 4be67ee544 user: vermeulen.oscar tags: trunk | |
03:55 | Update top level README.md to call basic-games, kermit-12, and chekmo by their new names. check-in: a9992eded7 user: poetnerd tags: os8pkg | |
03:51 | Convert binary blob CHESS.SV copied in from media/os8/local.tu56 under the control of config option "chess" to a build from source CHEKMO.SV and CHEKMO.TX controlled by config option "chekmo". Fix a problem with depending on package obj/os8pkg/foo.os8 files. We don't need them, but I forgot to quit depending on them. check-in: 2573adc1ca user: poetnerd tags: os8pkg | |
02:22 | Radically improved usability of os8pkg by changing how it does its work: 1. Eliminate the scripts command. 2. install, like uninstall calls os8scripts directly to do the work. 3. include is used to create the .os8 script file that will install all selected packages. 4. The same code block makes the commands for install and include. 5. Search for a .pspec file. 6. All of this is documented in the updated os8pkg.md doc file. check-in: f9238bc0eb user: poetnerd tags: os8pkg | |
2020-10-30
| ||
03:33 | Compensate for directly calling os8script commands without a script file. There may be more bits of internal state to set up. check-in: 818e81c04e user: poetnerd tags: os8pkg | |
02:55 | Quit depending on README.md. Quit installing README.MD. The README.md file is a description file for understanding what's in the source tree. We don't install it, or depend on it on the OS/8 side. check-in: ed5c42ea35 user: poetnerd tags: os8pkg | |
00:05 | Whitespace improvements to scripts/os8pkg/*.pspec check-in: f134b44ead user: tangent tags: os8pkg | |
2020-10-29
| ||
23:08 | The package "python-pip3" is actually python3-pip on Raspbian. Closes [5a1e770c9eb] *again*. :) check-in: e4b49f8706 user: tangent tags: trunk | |
22:37 | Applied drh's invisible line trick to the ticket lifecycle workflow diagram to give a label to the fast-reject path. check-in: fe9f969e76 user: tangent tags: trunk | |
18:36 | Updated the release process doc check-in: 36cfa1dceb user: tangent tags: trunk | |
18:25 | More HACKERS.md tweaks and fixes check-in: 166819f74d user: tangent tags: trunk | |
17:04 | More tweaks to the ticket life cycle diagram in HACKERS.md check-in: a54abf9ae1 user: tangent tags: trunk | |
16:17 | Updated ticket workflow diagram with drh's improvements, plus some of my own. Improved the surrounding text. check-in: 0ef2851e8c user: tangent tags: trunk | |
00:50 | Document more of the os8pkg syntax. check-in: 5f5c6f66c7 user: poetnerd tags: os8pkg | |
00:31 | Moved kermit from binary blob media/os8/subsys/k12.tu56 as option k12 to kermit-12 build from source under control of kermit-12.pspec as option kermit-12. TODO: Find someone who can test out this kermit. It's a bit different from what we've had in the past. check-in: 60a72125bd user: poetnerd tags: os8pkg | |
00:16 | Assorted improvements to the HACKERS.md file, including the addition of a workflow Pikchr showing the life cycle of a ticket. check-in: 8c59adde57 user: tangent tags: trunk | |
2020-10-28
| ||
21:53 | Documented the "fossil open URI" method in HACKERS.md check-in: 03815a941a user: tangent tags: trunk | |
21:43 | Capitalization fix check-in: e3441ddc1e user: tangent tags: trunk | |
21:42 | Better explanation of the relationship between the GitHub mirror and this repo in HACKERS.md. check-in: 30c2dfb6ce user: tangent tags: trunk | |
21:14 | Found and fixed a few more uses of "pip" rather than "pip3" check-in: 74bd7b987b user: tangent tags: trunk | |
16:00 | Added bin/os8pkg to the list of scripts installed by "make install" check-in: 61ff141003 user: tangent tags: os8pkg | |
02:17 | Fixed typo that was causing packages to always be re-installed into the boot images. check-in: 513d950f14 user: poetnerd tags: os8pkg | |
01:59 | Remove debugging bit from basic-games.pspec. check-in: 7a9b5fe213 user: poetnerd tags: os8pkg | |
2020-10-27
| ||
19:25 | Refinement to basic-games packaging: 1. Hacked README.md with a broad sword to shrink lines below 140 characters so that we could use PIP ASCII mode to copy it in. 2. Added a rm -f line to basic-games.pspec to delete the old .tu56 image file. 3. Fixed a bug in os8pkg so that #2 would work. check-in: f9134d40c3 user: poetnerd tags: os8pkg | |
16:25 | Updated ChangeLog check-in: 92f90a86d3 user: tangent tags: trunk | |
16:02 | Merged CC8 "V2.0" down to trunk. check-in: 9c75595f59 user: tangent tags: trunk | |
15:36 | Replaced a few references to the old python-pip package (v2) since we're now recommending use of pip3 in other places. Closes [5a1e770c9eb8e74]. check-in: 2d34571e16 user: tangent tags: trunk | |
03:48 | Remove media/os8/subsys/ba.tu56 binary blob. Instead use os8pkg to manage the basic games src/basic-games. Change name of subsystem for configuration from "ba" to "basic-games". Makes use of the "build" construct in os8pkg to use an os8-cp command instead of requiring creation of scripts/misc/basic-games.os8 whose sole purpose would be to populate a distribution .tu56 image. The README.md is taken from the "Demos in BASIC" wiki page. check-in: aecf5a7244 user: poetnerd tags: os8pkg | |
03:01 | Eliminate use of wild cards in outputs. Otherwise the uninstall can wreck havoc! check-in: ef969b8356 user: poetnerd tags: os8pkg | |
00:56 | Implemented and documented install and uninstall commands. Updated advent.pspec to contain cleanups for uninstall. check-in: e1d2257810 user: poetnerd tags: os8pkg | |
2020-10-26
| ||
18:21 | Fixed usage message: options before sub-command check-in: 5d82d01c8d user: tangent tags: os8pkg | |
17:59 | Fix traceback on no command specified. Now correctly prints a usage message. check-in: 1b75ca7a3d user: poetnerd tags: os8pkg | |
02:57 | Remove cc8.tu56 from media/os8/subsys/README.md. We have built from source for some time. check-in: fd93e4c5ed user: poetnerd tags: os8pkg | |
02:55 | Remove media/os8/subsys/advent.tu56 binary blob and the reference to it in the README.md file. We build from source now. check-in: 9e17527bde user: poetnerd tags: os8pkg | |
02:35 | The long awaited "Build ADVENT from Source, and use os8pkg to do it"! check-in: 870bcfbf7d user: poetnerd tags: os8pkg | |
2020-10-24
| ||
22:23 | make reconfig now removes *.d files in the build dir in case the user is switching from a branch with deps not present in the target, as can currently happen when switching from release to trunk due to files we no longer ship. Without this, you get an error from make about files it is told must be rebuilt but which it has no info on *how* to build. check-in: 8e5dcae12f user: tangent tags: trunk | |
2020-09-17
| ||
19:55 | Typo fix check-in: d31d2dcd86 user: tangent tags: trunk | |
2020-09-15
| ||
20:58 | Remove debugging messages from auto.def check-in: 1bb8cbf96f user: poetnerd tags: os8pkg | |
20:32 | Found a place to put the "-include obj/os8pkg/*.mk" such that build works. Note that putting the include too early breaks EVERYTHING. check-in: 72eeb74e17 user: poetnerd tags: os8pkg | |
20:04 | Snapshot: Some cleanups. (Still some debugging to remove.) I understand conceptually what to do, but so far the concept simply breaks the install. First attempt to move the include of obj/os8pkg/*.mk enabled building of e8.tu56, but broke the rest of the build. check-in: b70257ba80 user: poetnerd tags: os8pkg | |
03:35 | This should fix the failure to build packages but it does not. auto.def now defines OS8_PKGS_All and populates it with all found packages. os8pkg now uses a high level name for the package file because it knows the format, but auto.def and Makefile.in do not. Alghough V3D_RUNTIME and OCK_RUNTIME depend on PKGS_INCLUDE, and PKGS_INCLUDE depends on OS8_PKGS_ALL, the packages do not build. check-in: cd6da4c92c user: poetnerd tags: os8pkg | |
2020-09-14
| ||
01:00 | Another try at solving chicken-egg problem. bin/os8pkg needed the python library templates. I re-arranged things. ./configure works. TODO: Fix problem with packages not building. check-in: 7b57aaaac3 user: poetnerd tags: os8pkg | |
2020-09-13
| ||
15:55 | Code cleanups in the new os8pkg loop within auto.def: remove redundant "then", remove pointless "set result", popped "exec" calls out of bracket expression now that we aren't pointlessly saving the result code, and did some whitespace cleanups. check-in: d468b646be user: tangent tags: os8pkg | |
15:44 | Moved the generation of bin/os8pkg up within auto.def, to just before the first call to it, for generating Makefile dep includes, etc. check-in: ff9626086a user: tangent tags: os8pkg | |
15:41 | Merged a fix from trunk in check-in: 89d61b9785 user: tangent tags: os8pkg | |
15:40 | Moved the generation of bin/os8-run from its .in version up from the block at the end of auto.def to just before the call to test-os8-run, which requires os8-run to exist. Without this, you have a chicken-and-egg problem in fresh working trees. check-in: 8d9c504067 user: tangent tags: trunk | |
15:26 | Merged trunk README.md changes in check-in: 6778aa5955 user: tangent tags: os8pkg | |
15:11 | Removed some commented-out blocks in Makefile.in. check-in: dc7a6ae44b user: tangent tags: os8pkg | |
04:58 | Complete first draft! auto.defs takes responsibility for createing and keeping updated .mk and .os8 files from all pspec files found. Makefile.in knows how to generate a pkgs.os8 file that is used by boot-rk05.os8 in the v3d and ock directories. e8 and cc8 seem correctly still to be installed on that boot media. TODO: 1. Clean out the stuff from Makefile.in that's no longer needed. 2. Create .pspec files for more packages, such as ADVENT. 3. Investigate using this system to manage ock build from source. Now creates a pkgs.os8 script check-in: f646470ec8 user: poetnerd tags: os8pkg | |
2020-09-12
| ||
04:45 | auto.def now scans for .pspec files in scripts/os8pkg and generates or updates .mk files in obj/os8pkg while figuring out which packages are actually in use. Makefile.in has the old cc8 and e8 build stuff commented out. TODO: Figure out if we can use the script output. The issue is that we have to single-thread all package application that happens on a particular destination system pack. check-in: a1ac42a085 user: poetnerd tags: os8pkg | |
00:41 | Add logic to emit either build lines or a default build. check-in: 1b1a3c11de user: poetnerd tags: os8pkg | |
2020-09-11
| ||
03:11 | Turn in-line sub-command parser setup to table driven for loop. check-in: 7e3f1767f4 user: poetnerd tags: os8pkg | |
2020-09-10
| ||
04:28 | Teach os8pkg about dry-run arg and pathnames to output. But don't fully implement file write, and dry-run actions just yet. check-in: 954b1707a0 user: poetnerd tags: os8pkg | |
03:56 | Added in missing sub parser arg for package files. check-in: 2f2659b4ea user: poetnerd tags: os8pkg | |
03:54 | Improved parser as per https://tangentsoft.com/pidp8i/forumpost/c5c0f40f3d?t=h check-in: b9227c6040 user: poetnerd tags: os8pkg | |
2020-09-05
| ||
14:31 | Updated build-from-source dependencies in README.md. check-in: cab0bfacab user: tangent tags: trunk | |
2020-08-16
| ||
04:18 | Version 0 proof of concept os8pkg command. check-in: 4577618753 user: poetnerd tags: os8pkg | |
2020-08-15
| ||
23:32 | Long overdue fixup of pexpect error reporting: pexpect used to hang for 30 seconds, timeout, and give a messy traceback when it got confused. This was NOT helpful because the traceback didn't give the useful information. Now we catch the timeout exception, and let the regular error reporting (which now is very good) to let us see what actually happened. check-in: ff1e4919aa user: poetnerd tags: trunk | |
2020-08-14
| ||
15:03 | ./configure --help output tweaks check-in: 49e4c3a872 user: tangent tags: trunk | |
15:02 | Removed a redundant configure option check-in: f2c77295fc user: tangent tags: trunk | |
14:54 | Hard tab fixes in auto.def check-in: a5a90132eb user: tangent tags: trunk | |
2020-08-05
| ||
02:20 | A missed add. scripts/misc/e8-tu56.os8 wants src/e8/e8defs.pa, but it's not in the fossil repo. :-( check-in: 667c5e9683 user: poetnerd tags: trunk | |
2020-08-01
| ||
02:18 | Having re-organized around OS8_TOOLTIME, the scripts need to be converted from using v3d.rk05 to v3d-patched.rk05, the OS8_TOOLTIME pack. Perhaps the .os8 scripts should be converted to .os8.in scripts that would use an OS8_TOOLTIME auto.def. check-in: a4a0a1aabc user: poetnerd tags: trunk | |
01:27 | Subtle mistake: OS8_RK05S needs V3D_RUNTIME and OCK_RUNTIME. It had OS8_RUNTIME which might be one or the other. I don't know where the dependencies would go if use-ock were set. Right now we unconditionally build both. check-in: d11565ea4f user: poetnerd tags: trunk | |
2020-07-31
| ||
02:13 | Implemented the clearer demarkation of different levels of OS8 boot media, as per Forum discussion: https://tangentsoft.com/pidp8i/forumpost/dcf09a8902 check-in: c548a7866c user: poetnerd tags: trunk | |
2020-07-20
| ||
21:10 | Merge github-ci, CI builds via mirror look good: https://github.com/tangentsoft/pidp8i/actions check-in: 3d63f75bdc user: ryan tags: trunk | |
2020-07-13
| ||
19:28 | Build CI on MacOS as well. Leaf check-in: 6872ad8e22 user: ryan tags: github-ci | |
16:43 | Build and upload an artifact tarball containing the files from install-target. check-in: f4f5fd64d2 user: ryan tags: github-ci | |
16:32 | Separate out install into install-target (--prefix target files) and install-system (files and packages outside of --prefix). Add DESTDIR so target files may be installed to a different root than /. check-in: 4bffc18e79 user: ryan tags: github-ci | |
2020-07-12
| ||
03:35 | Added a basic compilation GitHub CI workflow, for branches synced by the GitHub git sync (https://github.com/tangentsoft/pidp8i/actions). check-in: e01e5ca1ff user: ryan tags: github-ci | |
03:04 | Typoed the conditionals on fortran. The option has a dash not an underscore. This caused patches to be attempted on fortran packages even if the packages were disabled. Note that SABR is now required for the C compiler, and we apply the SABR patch unconditionally. check-in: 70b6053e6d user: poetnerd tags: trunk | |
2020-07-10
| ||
14:17 | Yet another critical script I failed to ADD. Maybe this fully fixes bug 8d1502e9eed check-in: 1f1ac14196 user: poetnerd tags: trunk | |
13:24 | Sigh. Forgot to add the v3d-patch-rk05 script. This fixes ticket [8d1502e9ee]. check-in: 9e9c7ea0b7 user: poetnerd tags: trunk | |
2020-07-02
| ||
13:59 | Added warnings about GitHub mirror limitations check-in: f03da5d93e user: tangent tags: trunk | |
2020-06-21
| ||
16:23 | Patches applied, verified, and tested for Combined Kit. Also re-added README.md that got lost in the big rename. TODO: Figure out how to give people a choice between V3D and OCK as their default startup. check-in: 7269a89e64 user: poetnerd tags: trunk | |
04:55 | Snapshot. Patching OCK. TODO: Fix failures to patch CREF, BRTS, PAL8, BLOAD. Test. check-in: 75aa4b158a user: poetnerd tags: trunk | |
03:47 | Moved the patches from a subdir of media to a new top-level patches source directory with subdirectories per Distribution. check-in: 0d66fb8342 user: poetnerd tags: trunk | |
03:22 | Sorted build scripts into subdirectories. check-in: 33554e1087 user: poetnerd tags: trunk | |
02:45 | Renamed uni and all its manifestations to ock. check-in: 37f2c27165 user: poetnerd tags: trunk | |
01:50 | Re-introduced v3d-patched.rk05. Build cc8 and e8 with it. Do not re-patch every time we rebuild cc8 or e8. check-in: 2f2e93f03a user: poetnerd tags: trunk | |
2020-06-20
| ||
19:58 | Careless... Missed last write of the draft os8-combined-kit.md doc. check-in: 94da351a5e user: poetnerd tags: trunk | |
19:53 | I see that I forgot to add the BASIC UC/LC batch command files. check-in: c64f22e593 user: poetnerd tags: trunk | |
19:52 | Began reviewing patches for Combined Kit. Found typos in existing patching doc. Fixed them. Found a possible error in how I build FORTRAN IV. Fixed it. check-in: deb9e3d7d6 user: poetnerd tags: trunk | |
2020-06-19
| ||
03:53 | Fixed BASIC.UF in Combined Kit. Even though the instructions say all patches were applied, UF.PA was the broken version with incorrect page 0 references. This should be correct going forward. check-in: b41dbe3653 user: poetnerd tags: trunk | |
2020-06-17
| ||
22:46 | Saw a typo. Fixed it. check-in: 572119ed70 user: poetnerd tags: trunk | |
17:26 | URL fix for previous check-in: c8473a2adb user: tangent tags: trunk | |
17:25 | Updated docs on --disable-os8-*, and alphabetized list of same. check-in: c80388e2e1 user: tangent tags: trunk | |
04:33 | Corrected a typo of v3d.rk05 table entry. check-in: 7ae64027f3 user: poetnerd tags: trunk | |
02:42 | Restored table formatting of scripts/README.md, merging in the text changes from the list-formatted version. Prior attempt simply used incorrect Markdown. check-in: c07a3a71fc user: tangent tags: trunk | |
02:17 | Integrated LCBAS.BI / UCBAS.BI into uni. It turned out to be pretty easy. The patch was short, and that section of BASIC.PA is the same for both V3D and uni. check-in: f7c9318074 user: poetnerd tags: trunk | |
02:10 | Whitespace, formatting, and spelling fixes in src/os8/uni/README.md check-in: 4e9492eb48 user: tangent tags: trunk | |
00:42 | Merged E8 integration branch check-in: a63a7bd1d1 user: tangent tags: trunk | |
2020-06-16
| ||
10:19 | Update n8.c to allow for long input lines. Closed-Leaf check-in: ce122dc321 user: isysxp tags: Native-Jun-20 | |
03:30 | Updated E8 with latest fixes from Bill Silver: Missing end of file bug fixed Search and replace buffers expanded to 15 characters from 11 Incremental search now does hot termination: any control character not otherwise recognized terminates the search and is executed as a command (as Emacs does) ^N and ^P now move up and down to the same column, or nearby Closed-Leaf check-in: 24c33bb347 user: poetnerd tags: e8-integration | |
03:20 | Recast the documentation of the sundry image creation scripts. Eschew tables because they don't render well. Provide more details on the uni-* scripts. Name the images created. check-in: c5a96e68c1 user: poetnerd tags: e8-integration | |
2020-06-15
| ||
18:07 | Merged in trunk changes, particularly the media/os8/scripts reorg. Moved e8-tu56.os8 into scripts/misc. check-in: e4e6e6b7ef user: tangent tags: e8-integration | |
18:01 | Reorganized the os8-run scripts tree, per https://tangentsoft.com/pidp8i/forumpost/c914aae82f check-in: fbfd75116e user: tangent tags: trunk | |
17:17 | Removed media/etos/etos.txt. The corresponding media files were removed long ago. check-in: 36d420e93e user: tangent tags: trunk | |
16:28 | Add ctbl.tx which contains a lits of libc functions. check-in: f29f0c5b88 user: isysxp tags: Native-Jun-20 | |
16:18 | This is a significant re-write of the native compiler. Numerous additions have been implemented. Missing features from K&R are now only struct/float/function pointers. check-in: cf7e75b64f user: isysxp tags: Native-Jun-20 | |
05:37 | Did the last step of integration: Put E8.SV on SYS and E8CMDS.TX, E8SRCH.TX on DSK of both v3d.rk05 and uni.rk05. Also fixed a heretofore undiscovered bug in patch_command: When run_patch_file needed to resume to OS/8 context it called resume_command with nonexistent variables. Now we pass in line and script_file so they can be used in the call to resume_command. check-in: b1970fddd0 user: poetnerd tags: e8-integration | |
05:07 | Cleaned up the README.TX file a bit. It now mentions the help files. It's not all in capitals any more. check-in: b57641fef7 user: poetnerd tags: e8-integration | |
04:59 | Added two 22x72 reference files e8cmds.tx, e8xrch.tx, and updated e8-tu56.os8 to copy them to the tu56 image. Makefile.in knows we depend on them. check-in: 9eed79faa8 user: poetnerd tags: e8-integration | |
02:23 | With the removal of src/e8/COPYING.md we needed to update Makefile.in and e8-tu56.os8. check-in: b6b476fdb5 user: poetnerd tags: e8-integration | |
02:11 | Don't copy the css.pdf to e8.tu56 any more. Adopt newer names for E8 manual. TODO: Fix "Line too long" problem so we can copy the E8 manual in ascii mode. check-in: 7970ecd751 user: poetnerd tags: e8-integration | |
00:12 | Better web formatting replacement for prev check-in: 0ef3f51b9a user: tangent tags: e8-integration | |
00:11 | URL fix check-in: 47bc55b175 user: tangent tags: e8-integration | |
00:10 | Referenced src/e8/AUTHORS.md from the top-level version. check-in: baa096a1dd user: tangent tags: e8-integration | |
00:09 | Rewrote src/e8/AUTHORS.md for clarity and active voice. Added some additional info. check-in: d19939d333 user: tangent tags: e8-integration | |
2020-06-14
| ||
23:59 | Removed src/e8/COPYING.md, being redundant w.r.t. SIMH-LICENSE.md. Documented the reason we're apparently stripping the license out. check-in: 3868e6e364 user: tangent tags: e8-integration | |
23:25 | Added --e8-screen-{width,height} configuration options and changed the E8 build process to use the generated e8defs.pa file. check-in: c09ec25bb7 user: tangent tags: e8-integration | |
18:44 | Enabled storage of e8 doc files as images on tu56 image. It wasn't a bug in cpto per se. It was a poorly documented requirement to precede the option with whitespace. TODO: Add the "sacrificial end character" code, because when we put files in as images, the PTR driver DOES lose the last character. check-in: 02b6db5df2 user: poetnerd tags: e8-integration | |
2020-06-13
| ||
13:53 | Merged as much of E8's Makefile stuff into our Makefile.in as makes sense. Basically, only the creation of e8-manual.pdf and the upload to the repo as UV content. check-in: bca79f692b user: tangent tags: e8-integration | |
13:39 | Renamed doc/pdf.css to e8-manual-pdf.css to track a change upstream check-in: 267ebd41d8 user: tangent tags: e8-integration | |
13:37 | tools/e8-update fails if it isn't run from the top source dir. Without this, it'd either choke on its later assumptions or wreck the tree. check-in: 04eca764cf user: tangent tags: e8-integration | |
13:31 | Created tools/e8-update and ran it, updating a few things that have changed upstream since the creation of this branch. check-in: 9dc10a1e2d user: tangent tags: e8-integration | |
13:13 | Reorganized the E8 stuff in the tree to conform to existing norms. check-in: e4505fd571 user: tangent tags: e8-integration | |
03:31 | Create an e8.tu56 tape image containing the e8 editor. TODO: 1. fix os8-run copyto command so the /I option works. 2. Agree on default E8 setup and create e8defs.pa 3. Decide how to distribute the docs under OS/8 check-in: 2817c79165 user: poetnerd tags: e8-integration | |
2020-06-12
| ||
01:34 | Expanded use of os8_ctrl_c appropriately. This should silence race-condition noise on the bsd platform, as well as improve reliability for a wider range of commands run under cdprog and os8 script commands. check-in: 62449ac644 user: poetnerd tags: trunk | |
2020-06-11
| ||
06:08 | Improved error reporting from os8_command: I was relying too much on the "print caller string" functionality, when instead I should have been acting on error status and printing good messages. I missed a "re-sync with command prompt" in error handling. Fixed now. The osi_ctrl_c code now looks for ^ that might come from an echo of ^C but does not require it. TODO: Review callers of os8_send_ctrl ("c") for possible conversion to os8_ctrl_c. check-in: 83d6d9ac2d user: poetnerd tags: trunk | |
2020-06-09
| ||
23:01 | Documented [6498933542] in the ChangeLog check-in: 04a5f7c8d9 user: tangent tags: trunk | |
22:49 | Fixed a serious bug in an undocumented change made in v2019.04.25: the handler for SING_STEP + IF (restart with boot script #IF) changed from just jamming a "DO" command into SCP for the new boot script to re-execing the simulator with the same script name. This ensures a clean simulator, rather than starting the new script atop the old dirty simulator, but there was a flaw: execl() call was missing the trailing NULL sentinel, potentially allowing the kernel to walk off the end of the call stack. This may explain some problems people have had getting their PiDP-8/I to switch OSes via this mechanism. Problem diagnosed by Clang 8 on FreeBSD, of all things. check-in: 6498933542 user: tangent tags: trunk | |
22:20 | Adjustments to the pexpect installation advice given from configure check-in: 0a5864182b user: tangent tags: trunk | |
2020-05-27
| ||
00:49 | Fixed missing files in uni: BASIC: EABRTS.BN, RESEQ.BA. FORTRAN II: GENIOX.SB. Required pulling RESEQ.BA in from a master DECtabe binary image, because it wasn't in source. The standard way to buld EABRTS.BN is to use TTY: as a PAL8 input file, and to type "EAE=1". Instead I added EAEDEF.PA and build with it. check-in: 87cbc11ba5 user: poetnerd tags: trunk | |
2020-05-26
| ||
19:01 | Removed date and version-related comments in CC8: such info belongs in the VCS commit comments, not in source code comments. check-in: a4220bc5c7 user: tangent tags: trunk | |
18:50 | CC8 comment fix check-in: 65085ceb9a user: tangent tags: trunk | |
18:49 | Reverted the C; hackery in the CC8 user manual, using actual ASCII pipe characters now that the Fossil table parsing bug is fixed on trunk and deployed to tangentsoft.com. check-in: abada11098 user: tangent tags: trunk | |
17:47 | Minor change to c8.c to manage strings ('"'). check-in: ee05493cd8 user: isysxp tags: trunk | |
2020-05-20
| ||
05:05 | Merged the May 2020 version of CC8 into trunk. check-in: 5d861a9fee user: tangent tags: trunk | |
04:58 | Merged trunk changes into pi4-gpio-clean. check-in: 4d51e218ef user: tangent tags: pi4-gpio-clean | |
03:03 | And I typo'ed Vince's name in the license field of os8xplode. Jeez! Murphy was working over time! check-in: 2e44544d1e user: poetnerd tags: trunk | |
2020-05-18
| ||
18:20 | Brought in changes to test-os8-run and v3d-rk05.os8 to make testing quiet. Closed-Leaf check-in: 1edc07b3ab user: poetnerd tags: flip-expect | |
18:13 | Remove debugging DIR command from uni-fiv-build.os8 check-in: 4f072e96ec user: poetnerd tags: trunk | |
18:09 | Merge of development work for OS/8 Combined Kit build from source. check-in: 15eca39699 user: poetnerd tags: trunk | |
14:58 | Sigh. Another file forgotten to add. Our uni init.tx.in file. Closed-Leaf check-in: de7fc4dcc1 user: poetnerd tags: os8-uni | |
14:56 | I keep forgetting to ADD stuff. NOW we have os8-cmp.in. :-( check-in: d2f68d78fa user: poetnerd tags: os8-uni | |
2020-05-17
| ||
22:33 | v3d-rk05.os8 needed to perform SQUISH as absolute last step. Updates to test-os8-run to sanitize temp file names that would otherwise be unique across builds. Now a set of 10 random tests between trunk and flip-expect all come up green. check-in: a2ffdcf544 user: poetnerd tags: trunk, good-exam-1 | |
21:41 | Additional clauses in sanitize_log subroutine to remove unique components of temporary file names. check-in: faf1eb983a user: poetnerd tags: os8-uni | |
04:45 | Clean integration of rewrite of run_patch_file. check-in: 218045c8e0 user: poetnerd tags: os8-uni | |
04:43 | Rewrite of the run_patch_file routine. Eliminates a race condition where we exit ODT, do SAVE, but the save doesn't happen because we exit to OS/8. Switched run_patch_file to use resume instead of restart as added protection. check-in: 29afcff886 user: poetnerd tags: flip-expect | |
04:23 | Use os8xplode instead. It's faster and has greater coverage. check-in: 4c25a04e83 user: poetnerd tags: os8-uni | |
04:22 | Cleanup of os8-cmp. Cleaner control flow. Also moved squish to last action in v3d-rk05.os8. It needs to be LAST. check-in: c90df560e1 user: poetnerd tags: os8-uni | |
2020-05-16
| ||
21:04 | A fast tool to unpack images from Vince Slyngstad. check-in: 9cf8e0d48a user: poetnerd tags: os8-uni | |
2020-05-15
| ||
00:40 | This time ADD the tool. :-( check-in: 244f5858ac user: poetnerd tags: os8-uni | |
2020-05-13
| ||
07:04 | New tool: Give it a couple images, it extracts them and compares them. The extraction is a bit time consuming. TODO: Add -y option to extract system area. check-in: 88aebc50ed user: poetnerd tags: os8-uni | |
2020-05-12
| ||
23:34 | To get the C compiler, while avoid a bootstrap problem if uni became the boot disk, and to prepare for adding patches, I've created a uni-rk05.os8 script. Now to boot the unified kit, you boot bin/uni.rk05 TODO: There are a couple missing bits: EABRTS.BN, GENIOX.SB, RESEQ.BA I gotta find out why. uni-dist-rk05.os8 has been updated to copy in CUSPS I left out. check-in: 86ef40af7a user: poetnerd tags: os8-uni | |
04:13 | Brought in improvements from flip-epect that our work in EPIC drove. check-in: 98553d2bf4 user: poetnerd tags: os8-uni | |
04:11 | cdprog also now obeys "enable transcript" which was necessary for EPIC as well. :-( I'm tempted to build an EPIC specific parser next to ODT and FUTIL. check-in: d46d071f43 user: poetnerd tags: flip-expect | |
04:10 | Improved error reporting. Improved robustness in cdprog: Notices if sending escape fails and tries ^C. This works around problems with running EPIC. I'm considering adding a test for '$' at the end of a cdprog line, as a way to mean, "Send escape, and expect to return to monitor level." It will be cleaner for many things. Alas Epic doesn't do that either. It insists on getting an escape to the command decoder to do its work properly. (Otherwise it sometimes just produces no output.) And then after it gets that escape, it returns to the commmand decoder with its in-core image still corrupted by the previuos comparison! What a piece of crap! check-in: f1a6ce9360 user: poetnerd tags: flip-expect | |
2020-05-11
| ||
17:07 | Assorted improvements to the CC8 manual Closed-Leaf check-in: 3c88d213d8 user: tangent tags: cc8-2020-05 | |
16:12 | Change to c8.c to correctly manage ' character. check-in: 05b89395b2 user: isysxp tags: cc8-2020-05 | |
13:57 | Minor changes to the CC8 manual in regard of switch statements etc. check-in: 761a32f3e4 user: isysxp tags: cc8-2020-05 | |
02:57 | Whitespace, comment, and spelling fixes for CC8's new pd.c example. check-in: 87ea12551c user: tangent tags: cc8-2020-05 | |
02:51 | Clarified the documentation for CC8's atoi() check-in: 4ce304092d user: tangent tags: cc8-2020-05 | |
2020-05-10
| ||
16:22 | The short-circuiting issue also affects ||, not just &&. check-in: bb5e0c7236 user: tangent tags: cc8-2020-05 | |
16:18 | Assorted improvements to doc/cc8-manual.md: grammar and spelling fixes, Markdown formatting fixes, and clarity improvements. check-in: f425df101a user: tangent tags: cc8-2020-05 | |
10:33 | An update of the cc8 manual to include the current functionality of the native compiler. check-in: d38ea4e835 user: isysxp tags: cc8-2020-05 | |
02:41 | uni-dist.rk05 now has its own init.tx: uni-init.tx.in. All known bugs are closed. bin/uni-dist.rk05 is ready for testing. check-in: febafb29c1 user: poetnerd tags: os8-uni | |
02:20 | Take cosmetic change from flip-expect. check-in: 300128588d user: poetnerd tags: os8-uni | |
02:19 | Improved cosmetics of debug message. check-in: bff92cae19 user: poetnerd tags: flip-expect | |
02:11 | Merge in fixes from flip-expect It's unclear to me why so many deltas came from the merge. check-in: f616e49102 user: poetnerd tags: os8-uni | |
01:42 | Check in our test harness that enabled us to find the immediate past bugs. check-in: 84fcd162f7 user: poetnerd tags: flip-expect | |
01:41 | Fixed two bugs: 1. Quit looking for an echo of "^C" when exiting BUID with "^c". Unlike FOTP, ODT, FUTIL, PIP, etc., it doesnt echo that. It goes right to the monitor. 2. Correct spelling of FOTP Error, "NO FILES OF THE FORM". It gets a colon. NOW we see the FOTP file not found error. I see tht the build-test.os8 script heeds an ADD... check-in: 3b45b444e8 user: poetnerd tags: flip-expect | |
00:31 | Merge changes from trunk to get test-os8-run working. check-in: 06df321a9f user: poetnerd tags: os8-uni | |
00:17 | Merge fixes from trunk to get test-os8-run to work. check-in: 19736080f9 user: poetnerd tags: flip-expect | |
00:07 | Python3 install shouldn't install pyc. The test needed to be added to a second place. check-in: b5cdf52d22 user: poetnerd tags: trunk | |
2020-05-09
| ||
18:42 | Worked around a screwy interpretation of @srcdir@ in Autosetup's handling of @include@ which caused out-of-tree builds fail in the generation of boot/*.script from boot/*.script.in. This is related to the prior check-in, but the failure mechanism (and thus its solution) are different. check-in: aa8de8f4e1 user: tangent tags: trunk | |
18:33 | Fixed all "@include @srcdir@/boot/common.script" from boot/*.script.in: common.script is generated from common.script.in, so it lands in @builddir@, not in @srcdir@. This distinction only matters when doing out-of-tree builds. check-in: a8f891a345 user: tangent tags: trunk | |
18:29 | Fix two long standing bugs in v3f: 1. obj/build-v3f.rk05 could get over-filled on remakes. Since it's contents are wholly copied in an rm -f is added to delete the old. 2. UCSYS.BI didn't take notice of a relocaded page zero literal that LCSYS.BI knew about. check-in: 6582f33084 user: poetnerd tags: trunk | |
17:42 | Got LCSYS.BI and UCSYS.BI working under uni. In the process found and fixed long standing bug with V3F UCSYS.BI: Page zero literal moved. Noticed it when porting LCSYS.BI to v3f but didn't fix it for UCSYS.BI. check-in: e57763e4b3 user: poetnerd tags: os8-uni | |
12:06 | Updated c8.c from CC8 with the version from Ian's latest branch. check-in: de69883598 user: tangent tags: cc8-2020-05 | |
11:57 | Merged in trunk changes check-in: fd3012405b user: tangent tags: cc8-2020-05 | |
05:52 | Silly little mistake: Mist copying in BCOMP.SV so BASIC wouldn't run. It works now. check-in: 6961ee4910 user: poetnerd tags: os8-uni | |
05:26 | Builds a Unified Combined Kit bootable RK05 the same way it builds the v3d-dist.rk05 image. It boots, and has the right handlers (I think). Issues: LCSYS.BI isn't working. There are still places where the cdprog state machine in os8-run can get confused on error conditions. But we've got a complete first draft of "Build OS/8 combined kit from source." check-in: 4ffe4ea3d5 user: poetnerd tags: os8-uni | |
02:47 | Generates FORTRAN IV Object rk05 image. I had to change the syntax of FORLIB.BI because what was there was bad syntax. Command lines do not begin with open curly braket. TODO: Put this stuff onto an image and see if it boots. check-in: 019eecff7d user: poetnerd tags: os8-uni | |
2020-05-08
| ||
23:03 | The BASIC and FORTRAN II rk05 object image is now built. The Core Control Block values match what is in SYS: TODO: Put these onto a system disk and test them. check-in: 476cfa0ca6 user: poetnerd tags: os8-uni | |
22:30 | Merge in new os8-run and libraries from flip-expect branch. This should fix the problems we encountered building FORTRAN IV libraries. check-in: 2daeb79342 user: poetnerd tags: os8-uni | |
17:25 | This is an update of the native c compiler for OS/8 Please see the file cc8-manual in the doc directory for full details Report any errors to Ian Schofield isysxp@gmail.com Closed-Leaf check-in: 6070d8ffae user: isysxp tags: cc8-may-2020 | |
11:16 | Added Ian's new examples to cc8.tu56 for copying to the OS/8 RK05 disk if the CC8 compiler is selected at configuration time. check-in: c295baab6e user: tangent tags: cc8-2020-05 | |
10:39 | Added an example Forth interpreter written in CC8 check-in: e199927364 user: isysxp tags: cc8-2020-05 | |
10:38 | Added a double precision addition example for CC8 check-in: e21af7c6f6 user: isysxp tags: cc8-2020-05 | |
10:37 | Added a Hilbert curve example for CC8 and Tek4010 displays. check-in: 056916f3fd user: isysxp tags: cc8-2020-05 | |
10:31 | Many improvements to cc8/examples/basic.c check-in: 35b4819db9 user: isysxp tags: cc8-2020-05 | |
10:30 | Minor improvements to cc8/examples/ps.c check-in: aaa3ef4d23 user: isysxp tags: cc8-2020-05 | |
10:29 | Minor improvements to cc8/examples/fib.c check-in: f2015a8fed user: isysxp tags: cc8-2020-05 | |
10:21 | Updated OS/8 ("native") CC8 compiler to May 2020 version: allow multline comments; handle \t, \n, and \r in string constants; set high bit in string constants to avoid mishandling; change the way 2-character relational operators are handled to avoid UTF-8 and C language parsing problems; implemented support for the ternary operator (?:); increased the size of one of the symbol tables in the memory map. check-in: e6283d0c01 user: isysxp tags: cc8-2020-05 | |
10:11 | Fixed "MQA" to "ACL" check-in: 1cc4dcce5b user: isysxp tags: cc8-2020-05 | |
04:06 | Complete first draft of revised class-simh.md check-in: 24c3500bd0 user: poetnerd tags: flip-expect | |
03:02 | By shifting the '$' prompt to the build_rep_adds we narrow the need to match on it and eliminate all the false positives for it. check-in: ae52e8e70c user: poetnerd tags: flip-expect | |
01:10 | Split os8_escape into character specific sends, that listen for the character to echo back. This should fix problems where subsequent expect was tripping over the echo of the escape. check-in: 2d5536fc63 user: poetnerd tags: flip-expect | |
2020-05-07
| ||
21:14 | Fixed benign but long-standing bug in all-tu56.os8: There was a DT mount/umount in the td8e sections. Because the relevant .tu56 image was already mount it was just an error that showed up in the logs. check-in: d14aa78ca1 user: poetnerd tags: flip-expect | |
18:49 | Further updates to class-simh.md to talk about quit with error checking. Added lots of error checking to calls out to simh_cmd. TODO: Investigate apparent bug in all-tu56.os8 that mounts drivers on DT instead of TD when builtding td8e v3f. Why doesn't BUILD complain?? check-in: bb9fb5438d user: poetnerd tags: flip-expect | |
16:55 | Found source of unexpected output from v3d-rk05.os8. Was not a long-standing bug. I forgot about having to context switch when flipping between simh and os8 commands. I've added better reminder comments. At issue: simh.py would figure stuff out and send a "cont" command, but that command would not always succeed quickly enough, and the first command after context switching would get messed up. check-in: 4b819965ad user: poetnerd tags: flip-expect | |
15:33 | Removed the "sleep(0.02)" hack in teco-pi-demo, since earlier work on this branch removes the need for it. Worked twice here in testing, at least. check-in: 15fc966a2b user: tangent tags: flip-expect | |
14:37 | Cleanup: Deleted old PAL8 code from os8script.py.in Documented removal of os8-run limitations. Note: the os8 command has a .5 second delay after an error. This fixes an observed race condition where we send ^C after an error before there's an OS/8 ready to hear it. Error reporting is so good now that I think I see a long-standing bug in scripts/v3d-rk05.os8: Removal of SYS:FORLIB.RL fails. I think it always failed but I'll investigate. check-in: 6850ec9fe9 user: poetnerd tags: flip-expect | |
13:43 | Added new version of pal8 command: Quits trying to analyze the PAL8 command line. Just passes it. We report errors now, so we can be more liberal in ingest. TODO: Remove old code. Document removal of limitations. check-in: a69c492982 user: poetnerd tags: flip-expect | |
01:37 | Shifted resume's work into simh.py.in. Documented current behavior of resume. Changed approach to outputting what the "os8" command gets: Instead of conditionalizing on self.verbose, I added an enablement keyword "transcript", and documented its operation in os8-run.md. Now I'm exploring if we can simply get rid of the pal8 command. Along the way, I discovered how the os8 command could fall out of sync if it encountered an error. This code remedies that, I think, but needs more testing. check-in: 68296b70c5 user: poetnerd tags: flip-expect | |
2020-05-06
| ||
14:21 | Got resume with simh "cont" command working. The trick was to expect the echo of "cont\n" and then do os8_kbd_wait(). Added a verbose mode to the "os8" command to print the output. TODO: Add a command to os8-run to turn verbose on and off. Probably through a keyword "verbose" arg to enable. I have to think about whether I want a quiet mode that overrides verbose. What I want is a mode where I can turn command result display on and off. I think the current "verbose" flag is more of a less verbose debug flag. check-in: dd813fc8e9 user: poetnerd tags: flip-expect | |
05:54 | Pruned the methods from simh.py.in and os8script.py.in that I wanted to get rid of. That meant that test-os8-send-file goes away, since it tests stuff that I've gotten rid of: os8_get_file and os8_send_file. os8_pip_to and os8_pip_from are now the preferred APIs. I've further cleaned up the PAL8 command. Both the 2 and 3 arg forms now pass detailed error status back up to the printout from the running script. There's a draft of new regular expressions for the pal8 command that are aimed at removing a lot of the current limitations. There's an update to doc/os8-run.md that drops mention of problems and limits that have gone away with the flipped expect. check-in: c3896bd487 user: poetnerd tags: flip-expect | |
02:34 | There's sometimes a race condition when you send escape: Sometimes instead of getting "\n\\.$" you get "\n\\.$\\.$" To detect the race condition I currently label it "Monitor Escape". After I'm sure this is what is happening, I'll re-label it as "Monitor Prompt" at which point any log harvesting will not see any difference. check-in: 600278db4f user: poetnerd tags: flip-expect | |
01:59 | Root cause of "NO CCL!" noise: Our built image inherits whether or not INIT is set. A blank tape will complain "NO CCL!" on first boot. Fixed. check-in: 45e0339c8b user: poetnerd tags: flip-expect | |
2020-05-05
| ||
22:01 | Further cleanups: auto.def also needed deletion of txt2os8.in. Finally got rid of the copy_pair stuff. We've not used it years. Added a higher level os8_escape routine to replace in-line calls to os8_send_ctrl with higher level os8_escape. Added documentation of more stuff in class-simh.md. Noticed several commands were not testing successful monitor prompt. Fixed. TODO: Still getting a surprise "NO CCL!" from all-tu56.os8 as well as a complaint of an unexpected Monitor prompt. check-in: 849d7d9d03 user: poetnerd tags: flip-expect | |
03:51 | Remove mention of txt2os8.in from Makefile.in check-in: 2d37892c35 user: poetnerd tags: flip-expect | |
03:50 | txt2os8 never finished porting to python3. It has been superseded by os8-cp. Rather than port it to python3, debug it, and then port it to the new flipped expect event order, I'm deleting it. check-in: f26ab5cc0a user: poetnerd tags: flip-expect | |
03:37 | Added pal-test.os8 script and media/os8/PALTST.PA file used by it. This universe now gets all the way through from make clean to success reported by all scripts. However I saw a couple of reports of unexpected replies that were not deemed fatal. Along the way, I realized that PAL8 and BUILD wanted their reply lists IN ADDITION TO the default _os8_replies list. TODO: Continue pruning. check-in: 3c431bc4e3 user: poetnerd tags: flip-expect | |
2020-05-04
| ||
03:58 | Updated class-simh.md. That drove getting teco-pi-demo fully converted to python3, adding a -f for full speed option, and conversion to the flipped pexpect main loop. Fixed a race condition in os8-cp where it forgot to test for return to monitor after getting directory listing. Some style cleanups. This looks like it's actually working! TODO:Further testing. Review cdprog_subcomm. check-in: c5c55a3351 user: poetnerd tags: flip-expect | |
2020-05-03
| ||
23:39 | Snapshot: v3d-dist-rk05.os8 seems to run. Had to fiddle with os8_pip_to because the command decoder prompt you get when you do a continuation on a PTR: transfer has no preceding newline. But EVERYTHING else needs that newline, otherwise you match on file specs with an asterisk wild card. Gross hack specific to os8_pip_to deals. check-in: bb2c3a92d2 user: poetnerd tags: flip-expect | |
04:56 | Snapshot: Some more of os8script.py is working again in the new way. Tomorrow I take on a rewrite of build. It SHOULD be cleaner now. check-in: 4b9b9bd4a4 user: poetnerd tags: flip-expect | |
03:52 | pal8 command is migrated. Now displays all errors and exits gracefully. TODO: 1. Turn my internal testing script into a useful harness. Next step: Continue sweep thru os8script.py. Focus on v3d-dist-rk05.os8. Also: Consider teaching 3 arg pal8 to use call_pal8 since it's so good now about repoting errors. (At issue is that the errors are in the listing in the 3 arg call.) check-in: 3e98a230f0 user: poetnerd tags: flip-expect | |
00:41 | Eliminate use of os8_send_cmd and send_cmd in simh.py.in. Instead we have: simh_send_line that says it relies on the caller to run expect to determine success and simh_cmd that calls simh_send_line and checks return. The only time we needed simh_send_line here was in do_simh_show where we parsed the output of the show command. Everywhere else we flipped over to simh_cmd. check-in: 2413983604 user: poetnerd tags: flip-expect | |
2020-05-02
| ||
23:44 | Ported SQUISH and restart to new way. Renamed os8_restart to simh_restart_os8. check-in: 6c522288c6 user: poetnerd tags: flip-expect | |
22:55 | Begin of refactoring simh.py Re-arranged the location of the functions. Added more comments. check-in: 80c5e1a2b1 user: poetnerd tags: flip-expect | |
21:35 | Let the pruning begin... Cleaner interface to new flipped sense of pexpect. check-in: 6cc5421905 user: poetnerd tags: flip-expect | |
04:52 | Bug fix for os8-cp under python3. In the course of other branch work I discovered a use of _child.before without "decode()". Anyone running os8-cp in a python3 environment would have not been able to copy wild card specified file lists from OS/8. check-in: a32e5897f5 user: poetnerd tags: trunk | |
04:37 | One little style-y thing. os8_pip_from appears to work, but I need to check the wild carding that uses directory output. check-in: e318bad0e5 user: poetnerd tags: flip-expect | |
04:31 | Beginnings of flipping the execution order for all of pexpect simh. This checkin has os8-cp converted to the new way. copy_to has been tested. copy_from needs a few cleanups. LOTS of cool error checking is possible. Some is implemented. check-in: 1b33e7e1ae user: poetnerd tags: flip-expect | |
2020-04-30
| ||
01:10 | Correct verbose status mesage of include command to name the expanded path, not the un-expanded variable name. check-in: 93d521bdd3 user: poetnerd tags: trunk | |
01:03 | Efficiency improvement: pre-compile the regexps for the cd_replies. check-in: 86e7370603 user: poetnerd tags: trunk | |
00:48 | Fix typo that left the LCBAS.BI, and UCBAS.BI case conversion batch scripts off v3f media. check-in: 268031e3f1 user: poetnerd tags: trunk | |
00:44 | Style/efficiency cleanup: Move pal8_replies out of the function, and into a once-only global like others. check-in: 617167b92b user: poetnerd tags: trunk | |
2020-04-29
| ||
04:51 | Another messy snapshot. I've recrafted all-tu56 to swap back and forth between using the td device and the dt device. It means calling build like 4 times to built the td12k tu56 image, but it NEVER gets confused. Additionally I'm experimenting with a "cdprog1" command that knows you return to the monitor instead of the command decoder. os8_send_cmd then looks for when its looking for the monitor dot prompt, and if it gets "\n.$." it suggests using cdprog1 instead. TODO: clean this all up: Get rid of all the debugging scaffolding. Push simple single change updates to trunk. check-in: f4f8ad0c2a user: poetnerd tags: os8-uni | |
00:17 | Snapshot. Gross. Turning on error diagnostics tickles some nasty race between pexpect and emulation of the TD8E DECtape. To work around this I created a kludge command in os8-run called "Sleep." When I set the sleep delay to 0.2 seconds things work with the TD8E build. Any lower and you get meaningless random "TA0 DOES NOT EXIST" errors. This checkin has additional debugging print statements that need to go away. I must ponder, but I wanted to at least save this snapshot. check-in: 1780dbf1c1 user: poetnerd tags: os8-uni | |
2020-04-27
| ||
03:03 | Taught the pal8 command in os8-run about options, removing a documented limitation. Updated the os8-run.md doc as well. check-in: 93e583cc67 user: poetnerd tags: trunk | |
02:56 | Cleanup: Got rid of absldr and fotp sub-commands of begin/end in os8-run. They were never used, never documented, and diverging from the common (redundant) implementation of cdprog. check-in: 691a4648e8 user: poetnerd tags: trunk | |
02:50 | pip_to_replies is now the same as cd_replies. So we just use cd_replies. check-in: 66041fe979 user: poetnerd tags: trunk | |
2020-04-26
| ||
19:05 | Snapshot: Add images and builders for BASIC and FORTRAN II on one image and FORTRAN IV on the other image. TODO: Teach the builders how to build. ALSO: Don't forget to build the rest of the device drivers in SYS. check-in: 5a28d1aa6a user: poetnerd tags: os8-uni | |
18:08 | Oops. Missed one file in CUSPS: MSBAT.PA. Now all are built. TODO: Begin working on one or more languages rk05 uni build. check-in: dd2021aeec user: poetnerd tags: os8-uni | |
17:58 | Now builds the contents of src/uni/CUSPS into bin/uni-cusps.rk05 Bug fix to os8-run: Changed error detection string from "DF" to "DF\r" because the echo back of the TDFRMT filename in pal8 was mistaken for a device full error. check-in: 9e455a5798 user: poetnerd tags: os8-uni | |
04:41 | Sigh pedandic python3 doesn't like concatenating the None type that came from my fancier regex for pal8 args. Fixed. check-in: afe4fd78b3 user: poetnerd tags: os8-uni | |
04:34 | Now builds a significant chunk of the CUSPS. To build TECO I needed os8-run to pass the /W argument. So I fixed os8script.in to no longer have the limit of not passing in any PAL8 arguments. (I updated the doc.) Along the way, I discovered why I wanted that pal8 command. The 2 arg form of PAL8 hangs the state machine when attempted from either the os8 command or the begin cdprog construct. The "ERRORS DETECTED X\n\rLINKS GENERATED X\n\r." output confuses expect. I've also checked in the build tester I use for each CUSP as I integrate it into uni-cusps-build.os8. Doing a monolithic build is required because if there were multiple make lines parallel make would get into all kinds of nasty race conditions with the output rk05 image being modified in multiple processes simultaneously. check-in: 5d9e6f4434 user: poetnerd tags: os8-uni | |
01:25 | Had to re-arrange the builds and spread uni into multiple RK05 images. This snapshot builds the SYSTEM component HANDLERS and a bit of CUSPS. check-in: 2611fb4df7 user: poetnerd tags: os8-uni | |
2020-04-25
| ||
21:32 | Corrects misunderstanding of monitoring file transfer status and error reporting in pip_to routine. Fixes Ticket f934c3284efce717f918fd880f4d11359edcf7aa check-in: db4ba62622 user: poetnerd tags: os8-uni | |
21:19 | Corrects misunderstanding of monitoring file transfer status and error reporting in pip_to routine. Fixes Ticket f934c3284efce717f918fd880f4d11359edcf7aa check-in: fab6bb749a user: poetnerd tags: trunk | |
01:05 | Took build fixes for CCL.BI and RESORC.BI from the work I did with v3f. check-in: bbfe23f17d user: poetnerd tags: os8-uni | |
2020-04-24
| ||
21:30 | Forgot to ADD uni-build.os8. Now others can build! check-in: 3f927a632d user: poetnerd tags: os8-uni | |
19:39 | Ian Schofield's April 2020 release of the OS/8 CC8 compiler, adding support for 2-character relational operators (e.g. >=) and the C switch statement. On a branch because we're not yet certain it will make it in the current state into the upcoming release. Closed-Leaf check-in: 66d42bb8a6 user: tangent tags: cc8-2020-04 | |
19:19 | Removing bin/*.tu56 on "make clean". Currently this only forces cc8.tu56 to be rebuilt, but if we ever have other tape images we produce as intermediates in the same way (e.g. E8) then we'd want them rebuilt in the same way. check-in: c17b291bd8 user: tangent tags: trunk | |
04:28 | Updated a copyright year check-in: 7d8546a726 user: tangent tags: trunk | |
04:25 | Everything in UNI that was in v3f now builds. TODO: Investigate why, if BATCH.PA is not found the state machine hangs. It should see the error and either continue or die. check-in: 24acc69ecd user: poetnerd tags: os8-uni | |
04:05 | Creates obj/uni-build.rk05 out of uni/{SYSTEM,CUSPS,HANDLERS} check-in: 7a60cbbd61 user: poetnerd tags: os8-uni | |
2020-04-23
| ||
15:56 | URL fix check-in: 560ca2e7d3 user: tangent tags: trunk | |
2020-04-22
| ||
04:09 | Begin work on the Fossil Combined Kit. Initial checkin contains the Combined Kit sources and an initial extremely drafty draft of a top-level README.md check-in: 04a9ed7d11 user: poetnerd tags: os8-uni | |
00:36 | Python 3 fixes for teco-pi-demo check-in: e388501307 user: tangent tags: trunk | |
00:17 | Python 3 does the *.pyc thing entirely differently, which affects "make install". This change doesn't bother to install __pycache__, just avoids the installation failure when *.pyc doesn't exist. check-in: 1c0de38a5b user: tangent tags: trunk | |
2020-04-21
| ||
13:35 | Handling the case where none of "make", "gmake" or "bsdmake" exists in tools/mmake. check-in: 68d2aafd44 user: tangent tags: trunk | |
2020-04-20
| ||
01:54 | Small tweaks to new PCRE support for SCP EXPECT check-in: d387b4f59c user: tangent tags: trunk | |
01:36 | Small tweaks to new ChangeLog.md material check-in: 68a0b5c503 user: tangent tags: trunk | |
01:01 | Portability fix for lack of "file attributes" command in Jim Tcl, needed by fixup step at end of auto.def, where *.in scripts get handled, losing the +x bit set in Fossil. check-in: 78bb5a4cca user: tangent tags: trunk | |
00:53 | Updated SIMH to tip-of-master check-in: c331a1d356 user: tangent tags: trunk | |
2020-04-19
| ||
23:47 | Updated Autosetup to tip-of-master. ("0.6.9+") check-in: 32f74149a0 user: tangent tags: trunk | |
23:46 | First pass at an updated ChangeLog.md file for the upcoming release check-in: 503a697688 user: tangent tags: trunk | |
23:41 | Merged in trunk changes, leaving only the dtach changes in this branch. Leaf check-in: 16b4f0c7e2 user: tangent tags: screen-mgr-none-dtach | |
23:37 | Creating $prefix/run on "make install" for use by some of the SCREEN_MANAGER settings. check-in: b05c595e2c user: tangent tags: trunk | |
23:35 | Merged the warning about Ctrl-A vs Ctrl-B for screen vs tmux down from the screen-mgr-none-dtach branch. check-in: 773103b2ea user: tangent tags: trunk | |
23:23 | Cherry-picked the elements of branch screen-mgr-none-dtach that don't involve dtach, the only part of that branch that doesn't currently work. The main user-visible feature of this is the "none" option. check-in: 9d08417d8e user: tangent tags: trunk | |
23:04 | Style pass on HACKERS.md: double space after period to single, Unicode characters where sensible (em dashes, curly quotes, ellipses...) and Markdown style tweaks. A few typo fixes and such as well. check-in: e71e805b5f user: tangent tags: trunk | |
22:03 | The build system now detects the availability of Python 3 and prefers it if available. check-in: d07b6b46f9 user: tangent tags: trunk | |
2020-03-24
| ||
23:50 | Add ".decode()" to all uses of self_child.{before,after}. Now everything builds under python3. Closed-Leaf check-in: 9b105fe0f5 user: poetnerd tags: os8-run-python3 | |
2020-01-27
| ||
18:41 | Clarified that SCREEN_MANAGER=none is for interactive use only in the README.md file, and made a test for this high up in the pidp8i script. check-in: bf005a02cd user: tangent tags: screen-mgr-none-dtach | |
18:37 | Moved the dtach socket from /tmp to $prefix/run. systemd does strange things with /tmp, and systemd likes "run" for files like this. check-in: d80f67fef7 user: tangent tags: screen-mgr-none-dtach | |
17:45 | Allow SCREEN_MANAGER=none mode to work under systemd: don't redirect commands through systemctl if isatty. check-in: 31a8e26aa0 user: tangent tags: screen-mgr-none-dtach | |
17:33 | Fixed a whitespace bug in the method dtach mode uses to extract the PID for passing to systemd, if present. check-in: 021f889a86 user: tangent tags: screen-mgr-none-dtach | |
17:32 | Removed -E mode from the dtach call in the pidp8i script: we *want* to be able to detach from the terminal. This should not interfere with terminal escapes from the simulator since dtach should be scanning for this only from the terminal *input* side. If someone comes up with a reason that SIMH or the simulated software needs Ctrl-\ for its own purposes, we can change the detach character to something else. check-in: e13467f10a user: tangent tags: screen-mgr-none-dtach | |
17:27 | Installing a default etc/pidp8i.rc file if it doesn't already exist so users will have an example to work from. check-in: b9f771a73b user: tangent tags: screen-mgr-none-dtach | |
17:26 | Changed -A mode in the dtach command in bin/pidp8i in SCREEN_MANAGER=dtach mode to -n: when running under systemd, there is no controlling terminal, so there is nothing to detach *from*. tmux and screen handle this automatically, but dtach has to be told. check-in: a7e811e6bf user: tangent tags: screen-mgr-none-dtach | |
2020-01-26
| ||
21:48 | Whitespace fix check-in: e7411b636d user: tangent tags: screen-mgr-none-dtach | |
21:47 | Markdown fix check-in: 936d63bd1c user: tangent tags: screen-mgr-none-dtach | |
21:46 | Improved explanation of new SCREEN_MANAGER=dtach option. check-in: 02377ee417 user: tangent tags: screen-mgr-none-dtach | |
21:34 | URL fix check-in: 07a0439868 user: tangent tags: screen-mgr-none-dtach | |
21:33 | Tweaked a potentially confusing message output from "pidp8i stop". check-in: d044732095 user: tangent tags: screen-mgr-none-dtach | |
21:32 | Added the SCREEN_MANAGER=dtach option check-in: dd5ad30192 user: tangent tags: screen-mgr-none-dtach | |
20:53 | Added the SCREEN_MANAGER=none feature, being an alternative to "make run" for running the simulator hard-attached to the local terminal while still making use of the media in the install tree, rather than the pristine pre-install versions. check-in: b6e58203de user: tangent tags: screen-mgr-none-dtach | |
2020-01-14
| ||
15:26 | Fixed an incorrect line break in os8-run.md check-in: 059aac0685 user: tangent tags: trunk | |
2019-10-21
| ||
04:34 | Fixed some heading levels in the top-level README.md file check-in: a8298c604e user: tangent tags: trunk | |
2019-10-05
| ||
11:27 | Merged pidp8i-tmux down to trunk check-in: be3a3d9bd0 user: tangent tags: trunk | |
11:17 | Merged usb-floppy down to trunk check-in: 348a62931c user: tangent tags: trunk | |
2019-10-04
| ||
18:53 | Move README.md runtime configuration section below compile configuration section. Closed-Leaf check-in: 3d0d5dc385 user: ryan tags: pidp8i-tmux | |
18:12 | Added option to allow the pidp8i screen session to be managed by tmux(1) instead of screen(1). This introduces a new optional sourcable runtime configuration script, pidp8i.rc. check-in: 3df1c859f7 user: ryan tags: pidp8i-tmux | |
16:38 | Added udev rules to allow mounting media from disks on USB floppy drives. Closed-Leaf check-in: b33153775e user: ryan tags: usb-floppy | |
2019-09-22
| ||
08:48 | Added "bsdmake" to the list of "make" flavors checked for by tools/mmake. The PiDP-8/I build system won't build with BSD make, but these scripts may be used in other projects, and BSD make does understand the -j option. check-in: eec38b61e1 user: tangent tags: trunk | |
08:46 | Quoted an argument to "test -z": if the arg is empty, it must be quoted to give an empty argument rather than just disappear in the shell processing. check-in: 8eab979d44 user: tangent tags: trunk | |
2019-09-10
| ||
22:51 | Explained why tab size 4 with spaces is important in the C style guide. check-in: 530ae2d758 user: tangent tags: trunk | |
21:47 | Added forward link to info on starting OpenSSH on a Pi within the top-level README.md file. check-in: 579e02166b user: tangent tags: trunk | |
21:45 | Removed a few stale references to Zip file source tree downloads in the top-level README.md: we removed those links some time ago after getting a complaint about such files missing +x perms on things like the configure script. check-in: b3d05a02f0 user: tangent tags: trunk | |
21:43 | Added some forward references within the top-level readme, for those reading it online. check-in: c5b1607ded user: tangent tags: trunk | |
2019-09-03
| ||
00:01 | Added prism.js, shortly to be used by the skin for syntax highlighting in repo code displays. check-in: 27d9da9dbe user: tangent tags: trunk | |
2019-08-18
| ||
00:57 | Tightened up the Fossil vs Git stuff in HACKERS.md, added a bit more Fossil help, added some links to external help, and reorganized the top level sections to flow better. check-in: ce1fca0017 user: tangent tags: trunk | |
2019-08-17
| ||
23:15 | Merged the use of libbcm_host from trunk with Oscar's new GPIO pull up/down setup code to get the best of both worlds. This requires a version of libbcm_host that was only just released: https://github.com/raspberrypi/firmware/issues/1161 check-in: 1eee471981 user: tangent tags: pi4-gpio-clean | |
2019-08-16
| ||
00:50 | Changed all references to "FOCAL 69" to "FOCAL,1969", and linked to the new "[Running FOCAL,1969]" wiki article which explains why this naming difference matters. check-in: d10da9f386 user: tangent tags: trunk | |
2019-08-15
| ||
22:49 | Updated the docs talking about Fossil 2.x binaries now that Buster is out, shipping Fossil 2.9. check-in: 062d059f8a user: tangent tags: trunk | |
00:22 | Added support for Pi 4 GPIO, based on code the Raspberry Pi Foundation published: https://github.com/RPi-Distro/raspi-gpio/commit/80fa7d04eafb3ea34fc6f2d32de5f1873b5fb369 This check-in is based on a version of gpio-common.c.in posted to the PiDP-8 Google Group by Oscar Vermeulen, which is why we're giving him credit for this check-in, even though I (tangent) have done quite a lot of changes to that code, mainly to match the existing code style. This is a branch because it conflicts with the current tip-of-trunk and because it's not yet tested on a Pi 4. It is unknown whether this branch will end up overriding the method we're using on trunk for Pi 0-3 or if we will instead wait for the Foundation to publish a new libbcm_host that obviates some of what this check-in does. Closed-Leaf check-in: bd10d4dde2 user: vermeulen.oscar tags: pi4-gpio-hack | |
2019-08-14
| ||
23:43 | Create new branch named "pi4-gpio-hack" check-in: 9a444fb597 user: tangent tags: pi4-gpio-hack | |
2019-08-13
| ||
04:58 | Clarified the tarball unpacking command in the top-level README.md. check-in: 74ae8b2240 user: tangent tags: trunk | |
2019-08-11
| ||
03:37 | Assorted improvements to the top-level README.md file. check-in: c3f1846968 user: tangent tags: trunk | |
2019-08-09
| ||
10:57 | Added link to "Fossil Versus Git" article from our HACKERS.md, near where we are making similar (but less detailed) arguments. check-in: 1be7a95d8e user: tangent tags: trunk | |
09:02 | Updated Autosetup. This is mainly an update to Jim Tcl 78 check-in: bc107cc50c user: tangent tags: trunk | |
00:39 | Removed +x bit on files that don't need to be executable check-in: 453bb7afc7 user: tangent tags: trunk | |
2019-08-08
| ||
08:40 | Fixed a documentation bug (./configure --lowercase=none is actually =pass) and did a clarity pass on the surrounding text while in there. check-in: 87616c6220 user: tangent tags: trunk | |
2019-08-03
| ||
23:36 | Small fixes to previous for the non-Pi case. check-in: b40c2f5f83 user: tangent tags: trunk | |
23:31 | Calling bcm_host_get_peripheral_address() in libbcm_host.so from libraspberrypi-dev instead of the hard-coded version we had before, which was apparently copied from old versions of the Pi developer docs. Now following the current advice: https://www.raspberrypi.org/documentation/hardware/raspberrypi/peripheral_addresses.md Doing this in the hopes that it fixes the compatibility problem with the Pi 4, but if it doesn't, this is probably the correct thing anyway. Tested with a Pi 3B+, so checking it in straight on trunk. check-in: 55cfea5027 user: tangent tags: trunk | |
2019-07-21
| ||
10:13 | Simplified the logic in tools/mmake for detecting whether GNU make is called as "gmake" or as just "make". check-in: fc2a0c1c8f user: tangent tags: trunk | |
2019-05-22
| ||
19:19 | Removed the handler for "freeze display on STOP" to match Ian Schofield's original "LED dithering" ILS-lite patch for the Pi Zero. Leaf check-in: 7d1cd49fe2 user: tangent tags: pi-zero-ils | |
11:58 | Untested application of Ian Schofield's LED dithering patch, which replaces the NLS mode with a different PWM-based incandescent lamp simulator scheme than either his original ILS or my "new ILS," intended to give much the same effect while using less host CPU power, so that it can run on a Pi Zero. This checkin is very different from the patch as posted on the mailing list, but I *think* it implements the same core algorithm. It's untested because while I have a PiDP-8/I front panel and a Pi Zero W here, I don't want to tear my PiDP-8/I apart to put the two together. That's and many other reasons are why this is on a branch. check-in: de6d1f5a43 user: tangent tags: pi-zero-ils | |
11:03 | Removed an obsolete FIXME comment check-in: 0d1ada3484 user: tangent tags: trunk | |
11:01 | Added a delay value in the STOP mode code path to avoid pointlessly burning host-side CPU cycles while waiting for the user to hit CONT or START on the front panel. Suggested by Ian Schofield. check-in: 46b8e18352 user: tangent tags: trunk | |
2019-05-18
| ||
20:31 | Added link to Balena Etcher from doc/OS-images.md check-in: 78e77bf3f0 user: tangent tags: trunk | |
20:30 | Another clarity pass on doc/OS-images.md check-in: 824c33fa11 user: tangent tags: trunk | |
20:29 | Assorted tweaks to doc/OS-images.md check-in: b20ee14442 user: tangent tags: trunk | |
2019-05-17
| ||
11:25 | Clarified the "motivation" at the top of doc/os8-run.md check-in: ecff080a2b user: tangent tags: trunk | |
2019-05-15
| ||
18:35 | Grammar fix check-in: 0a67aee2f9 user: tangent tags: trunk | |
18:34 | More --enable-savestate doc improvements check-in: 59efb347f7 user: tangent tags: trunk | |
18:29 | Clarity tweak to the --enable-savestate doc check-in: 8a91c99445 user: tangent tags: trunk | |
2019-05-11
| ||
21:49 | Another systemd workaround for WSL check-in: 91ff28ae9d user: tangent tags: trunk | |
20:19 | Fixes to bin/pidp8i for systems that either have no systemd or where (as on WSL) it's broken. In these cases, the script approximates a SysV init script. check-in: 279555ae38 user: tangent tags: trunk | |
20:18 | Fix for Cygwin "which" in bin/pidp8i: unlike typical implementations, it gripes on stderr when it can't find a match in the PATH. Sending stderr to /dev/null. check-in: 15389943a9 user: tangent tags: trunk | |
18:35 | Added all of the files renamed in [1860880163] to *.in to the Makefile's INFILES variable, so we autoreconf when any of them get touched. check-in: c67bd86630 user: tangent tags: os8-run-python3 | |
18:32 | Changed xrange() call to range() in class simh to be compatible with Python 3. check-in: 6d23ecf72c user: tangent tags: os8-run-python3 | |
18:25 | The configure script now detects whether Python 2 or 3 is installed, and what its binary is called. If both are installed, it prefers Python 3. This then substitutes the value found into all scripts and module shebang lines that previously hardcoded "/usr/bin/env python". With this move, several files got renamed to *.in, as they previously had no other reason to be treated as Autosetup templates. check-in: 1860880163 user: tangent tags: os8-run-python3 | |
16:25 | Updated the discussion of systemd in the top-level README.md file: it was written in terms of the pre-release trunk implementation. We should have made similar changes shortly before release, but overlooked it. check-in: 1f0cad3572 user: tangent tags: trunk | |
15:33 | URL update check-in: 89e22f5975 user: tangent tags: trunk | |
15:33 | Merged in trunk changes check-in: 19490adbd4 user: tangent tags: os8-run-python3 | |
15:17 | Assorted small updates to doc/class-simh.md check-in: b4b89f2f1e user: tangent tags: trunk | |
13:03 | Added TECO Pi macro creation credit to bin/teco-pi-demo. check-in: 57ccbf54aa user: tangent tags: trunk | |
2019-04-26
| ||
16:19 | Updated to latest Autosetup master: my @include and @define features were merged upstream, and it improves syntax error detection for @if. check-in: fb4e965288 user: tangent tags: trunk | |
2019-04-25
| ||
13:02 | Added the Orientation section to the top-level README.md file and simplified the Prerequisites section following it. check-in: 8f7a8e5e59 user: tangent tags: trunk | |
10:34 | Math error fix in ChangeLog.md check-in: 5bd81437e7 user: tangent tags: trunk | |
10:29 | Added -y to an apt-get command in tools/bosi check-in: 04cce6c025 user: tangent tags: trunk | |
09:46 | Merged trunk changes for v20190425 into release branch check-in: 2e08e8ff1a user: tangent tags: release, v20190425 | |
09:40 | Small fix to tools/mkrel. check-in: 07a540166c user: tangent tags: trunk | |
09:40 | Released v20190425 check-in: 1999bfb59b user: tangent tags: trunk | |
09:26 | Expanded glob in previous to cover v3d.rk05 as well. check-in: 93796e07f6 user: tangent tags: trunk | |
09:25 | Updated tools/publish-os8 for the new OS/8 RK05 media names. check-in: 3d717c6324 user: tangent tags: trunk | |
08:56 | Changed the systemd service from "Type=oneshot" to "notify" allowing us to use systemd-notify to tell it when the service has successfully started and communicate the screen(1) PID to it. This greatly improves the reliably of systemctl commands on the background service. This solves some of the problems that lead to ticket [ce9ea9c96]. check-in: f9a56691d8 user: tangent tags: trunk | |
2019-04-24
| ||
11:12 | Adjusted the "make release" process so that the version tag ends up on the release branch, not on trunk, so that "fossil up vYYYYmmDD ; fossil up" results in the user staying on the release branch. If vYYYYmmDD is not the current release, it will switch them to the current release. check-in: 27340aeebd user: tangent tags: trunk | |
2019-04-22
| ||
16:17 | Set Fossil's "pull only" setting on the opened Fossil repo in tools/bosi so users can make local checkins without getting warnings about lacking permission to push. check-in: dcb3d283aa user: tangent tags: trunk | |
03:16 | On "make install" the *.script files have their savestate directories changed to $prefix/share/save, rather than depend on %HOME% in that condition. check-in: 5846d941cb user: tangent tags: trunk | |
00:14 | Reworked the PiDP-8/I custom SIGINT handler in terms of SIGTERM now that SIMH handles that properly. check-in: f4e7086472 user: tangent tags: trunk | |
00:04 | Extracted common elements of most boot/*.script files to boot/common.script.in and applied final changes that allow SIGTERM to work as we expect. Closes [ce9ea9c96]. check-in: dc8791be53 user: tangent tags: trunk | |
2019-04-19
| ||
08:45 | Updated SIMH again to get distinct SIGTERM handling. (Prior versions treated it the same as SIGINT, which is wrong.) check-in: 61903edc63 user: tangent tags: trunk | |
2019-04-18
| ||
12:32 | The new "pidp8i stop" implementation failed on a real PiDP-8/I because scanswitch fails when the simulator's running. Switched to a different method for detecting which simulator executable is running. check-in: 10339e6b1a user: tangent tags: trunk | |
11:33 | Rewrote "pidp8i stop" to send a SIGINT, wait 2 seconds, then SIGKILL to make use of the new savestate mechanism and hopefully close ticket [ce9ea9c96a]. (Checking it in to try on an actual PiDP-8/I next.) If savestate mode is disabled, we skip the first two steps and go straight to SIGKILL: this could lose data, but until SIMH gets proper SIGTERM support, this is the best we can do. check-in: 98a0b0305a user: tangent tags: trunk | |
11:29 | Fixed a few bugs in the new savestate.script: the ON ERROR handler doesn't help, and Ctrl-E CONT would cause a reboot. check-in: 780af010e3 user: tangent tags: trunk | |
10:12 | Removed a pointless "ECHO" from the new boot/savestate.script file. check-in: 4810c085f8 user: tangent tags: trunk | |
10:09 | Added the --enable-savestate configuration option, conditionally making use of SIMH's SAVE/RESTORE feature and the new Autosetup @include/@define feature to provide parameterized core/register/device state saving and restoration on simulator restarts. check-in: 555b5e5f8d user: tangent tags: trunk | |
10:07 | Added @include and @define features to Autosetup's template file processor. This is being pushed upstream as the template-include branch, but we're checking it in here rather than wait for our PR to be accepted because a) we don't want to wait; and b) it might be rejected, and our subsequent checkin requires this feature to work as it currently does. check-in: 3ea0b1ea99 user: tangent tags: trunk | |
07:25 | Updated SIMH again: we need the recent fix to ON ERROR handling. check-in: e5ae989411 user: tangent tags: trunk | |
06:17 | Fixed something checked into previous: we added $0 to a "chmod -x $(stuff)" line so there was always something to chmod -x if the subshell returned nothing to avoid a complaint from chmod about getting no args, but $0 should always have +x. Changed it to auto.def, something that should never be +x. check-in: 7e0d206df8 user: tangent tags: trunk | |
06:15 | Updated Autosetup to tip-of-master (post 0.6.9) in preparation for adding a new feature to it. This changes the syntax for @if expressions, so this checkin includes updates to the two affected boot/*.script files. check-in: 190c00fe14 user: tangent tags: trunk | |
2019-04-16
| ||
11:51 | "make run" now uses scanswitch to detect lack of GPIO, so it runs the simulator as "pdp8" not "pidp8i-sim" when there is no PiDP-8/I panel. check-in: cd3145ad2d user: tangent tags: trunk | |
11:49 | More print() fixes, this time for os8-cp. check-in: e05a907c3f user: tangent tags: os8-run-python3 | |
11:38 | Fixed a case where pexpect is giving us a byte string, which annoys Python's regex matcher. Explicitly converting it to an ASCII text string. It's basically a null operation, but it makes Python 3 happy. check-in: 560dc8061a user: tangent tags: os8-run-python3 | |
08:24 | scanswitch was returning -1 on no GPIO, which is 255 on macOS at least, which means the test for "no GPIO" in bin/pid8pi wouldn't get hit properly. Returning 127 as that script expects rather than change the script, since the script has established a kind of contract. check-in: 07be964914 user: tangent tags: trunk | |
2019-04-15
| ||
07:33 | Merged in the tiny trunk differences relative to the SIMH update accidentally checked in on this branch. Now this branch contains only the Python 2-ism fixes relative to trunk. check-in: 18d667556a user: tangent tags: os8-run-python3 | |
07:25 | Updated SIMH to latest upstream. No functional change relative to prior source base as far as I can tell from the commit history since the last update. check-in: fc1b9bc0e9 user: tangent tags: trunk | |
06:39 | Opening class simh log files in binary mode to avoid a problem introduced by an unbelievably screwy change in Python 3 vs 2: https://stackoverflow.com/a/5513856/142454 check-in: f921ba10f9 user: tangent tags: os8-run-python3 | |
06:33 | Replaced use of dict.iteritems() with items() check-in: 394ecc357c user: tangent tags: os8-run-python3 | |
06:27 | First steps to getting os8-run working with Python 3: this is all of the print() calls. (print() is a function in Python 3, not a keyword as in prior versions, so it requires parens around its arguments, always.) This is the start of a new branch because this won't be the only thing needed to get these programs working under Python 3. This is needed on my macOS box because Anaconda Distribution installs Python 3 as "python", which is arguably wrong, but hopefully we can get os8-run and its helper libraries into a state where they run on both versions so this won't matter any more. This checkin *also* accidentally includes a SIMH update, because I was in the middle of the SIMH update and got distracted by fixing the Python 2-isms and accidentally checked the SIMH changes in as well. The SIMH update should have been on trunk only. I'll fix that on this branch a bit down the line. check-in: 05bd569e5e user: tangent tags: os8-run-python3 | |
05:40 | Updated bosi script to point at the Fossil 2.8 binary for RPi check-in: 5e51328bc2 user: tangent tags: trunk | |
2019-04-04
| ||
04:09 | Cleanup of all-tu56.os8 to perhaps head off some other race condition. There was a v3f td128 that blew out because of a mounted dt device -- a heisenbug, not reproducible. I've carefully limited the attachment of the dt device, and explicitly detached it now. check-in: 993ffbdfd3 user: poetnerd tags: trunk | |
2019-03-24
| ||
07:15 | Another simh.os8_send_cmd() header comment rewrite. check-in: f02a71584b user: tangent tags: trunk | |
06:52 | Fixed a couple of locations where the prompt string passed to simh.os8_send_cmd() wasn't being escaped correctly, potentially leading to a breakage in the caller's state machine. check-in: e8a6d0e354 user: tangent tags: trunk | |
06:47 | Increased the default timeout to simh.os8_send_cmd() from 30 to 60 seconds in response to a report from a Raspberry Pi A+ user that the media build process can time out when building with the slow TD8E device. check-in: 614c94da4c user: tangent tags: trunk | |
06:46 | Rewrote the simh.os8_send_cmd() function comment for clarity and completeness. check-in: 0043a185db user: tangent tags: trunk | |
05:47 | Added explicit license grant to HACKERS.md check-in: 5ba94a47d1 user: tangent tags: trunk | |
2019-03-21
| ||
00:09 | Add error detection for LINE TOO LONG IN FILE to simh.py. Fixes bug f937eb1e32. check-in: 69f9981b49 user: poetnerd tags: trunk | |
2019-03-19
| ||
05:29 | Added a section on CR+LF handling to the CC8 manual. check-in: c8664e03e3 user: tangent tags: trunk | |
05:20 | Several small improvements to the CC8 manual check-in: 3cf04448ad user: tangent tags: trunk | |
04:29 | Added documentation for putc() and fputc() in doc/cc8-manual.md. check-in: 5a0c639bfe user: tangent tags: trunk | |
2019-03-17
| ||
04:57 | Clarity fix check-in: ffce738e78 user: tangent tags: trunk | |
04:55 | Merged the cc8-octal-output branch down to trunk. check-in: 96ed492d9f user: tangent tags: trunk | |
04:51 | Merged in trunk improvements Closed-Leaf check-in: 9492282084 user: tangent tags: cc8-octal-output | |
04:41 | Updated ChangeLog for upcoming release to March, February having passed. check-in: 617783a44d user: tangent tags: trunk | |
04:40 | Updated the README.md copyright year to 2019 check-in: 9959db70c3 user: tangent tags: trunk | |
2019-03-11
| ||
00:56 | Checkin [a96f0c5f20] missed a location where the old, incorrect "MQO" operator definition in the OS/8 CC8's code generator wasn't changed to the corrected mnemonic, MQA. Bug reported by Ian Schofield. check-in: 9074f0ba54 user: tangent tags: trunk | |
2019-03-02
| ||
17:13 | Added a named anchor to a document check-in: 97ee3f6977 user: tangent tags: trunk | |
2019-02-22
| ||
11:40 | Fleshed out the discussion of malloc() in the CC8 manual, turning it into a new sub-section, "Fun Trivia: The History of malloc()". check-in: cb743198fd user: tangent tags: cc8-octal-output | |
11:12 | Found malloc() in UNIX V7, so added that info to the CC8 manual's poin on "no malloc() in CC8". check-in: 4b64cfdc4c user: tangent tags: cc8-octal-output | |
2019-02-21
| ||
12:34 | Updated ChangeLog check-in: a6371d4cad user: tangent tags: cc8-octal-output | |
11:55 | Many improvements to the CC8 user manual. Basically, I began re-reading it from the top, improving it along the way with my new understanding of CC8. check-in: 0316450b57 user: tangent tags: cc8-octal-output | |
09:08 | Rewrote the history section at the top of the CC8 manual to give a better arc. check-in: 694c027652 user: tangent tags: cc8-octal-output | |
08:55 | Updated the CC8 user manual to cover the new octal output default. check-in: 84f718936e user: tangent tags: cc8-octal-output | |
08:12 | Squished the bug that prevents this branch from generating code that runs properly: I overlooked the #defines in libc.h which are treated by the compiler as text, not as C integers, so that integer indices emitted in the generated SABR code for calling into LIBC were in decimal but were then interpreted by SABR as octal. If this gave syntactically correct code, it would call the wrong function for every function past index 7. The fact that we never saw it generate syntactically incorrect code merely reflects the fact that we didn't happen to call any functions that used decimal indexes that have no corresponding octal interpretation, a possibility only 1/5 of the time. (e.g. 29) check-in: d5ab8f91d9 user: tangent tags: cc8-octal-output | |
2019-02-20
| ||
12:21 | Merged the CC8 ABSYM and doc changes from trunk into this branch to reduce pointless differences. check-in: f8a2346503 user: tangent tags: cc8-octal-output | |
12:13 | Comment improvement check-in: 4693b7fe41 user: tangent tags: trunk | |
12:10 | Reverted the changes to the ABSYM declarations in init.h, header.sb, and libc.c, and documented the reason why the declarations in these files do not all match, and why they cannot be packed up into the top of any zero page involving LOADER.SV. check-in: 4dfc549077 user: tangent tags: trunk | |
2019-02-19
| ||
11:30 | Ian smacked me with a clue-bat: there are *several* zero pages, and their usages do not conflict! Fixed several bits in the CC8 user manual that resulting from this confusion. (This also explains why the discrepancies between INIT and LIBC's globals don't matter: they're in different fields!) check-in: 3ae7245274 user: tangent tags: trunk | |
10:44 | First pass at making CC8 emit octal in SABR output only, and to convert the decimal constants in the static SABR code within header.sb, libc.c, and init.h to octal. This also gets rid of all the DECIM directives, since SABR defaults to OCTAL mode. This is on a branch because the result doesn't yet run correctly, and I'm out of time trying to figure out why. check-in: ce071e8713 user: tangent tags: cc8-octal-output | |
09:33 | Found yet a *third* copy of the CC8 ABSYM table! These fixups allow the cross-compiler to produce code that links to LIBC properly. That then highlit some differences in the INIT code between header.sb and init.h, the latter of which has both more code and more globals. Mainly fixing this involves packing the new globals up tight against those that init.h shares in common with header.sb and libc.c, but also a change to the docs to reduce the space available to the [f]printf() buffer yet again. check-in: 778e8ff4ec user: tangent tags: trunk | |
08:48 | Fixed indents in CC8 init.h and header.sb: I've been fighting with these hard tabs all night, and I'm sick of it. They're space indents now, per HACKERS.md. check-in: e289bdbe25 user: tangent tags: trunk | |
08:32 | Merged cc8-libc-zp-reorg branch down to trunk. It appears to be stabilized now. check-in: b0097f70c6 user: tangent tags: trunk | |
08:01 | Merged VC8E OPDEF stuff up from trunk to reduce unnecessary diffs Closed-Leaf check-in: 2d4b00518f user: tangent tags: cc8-libc-zp-reorg | |
07:58 | Merged VC8E OPDEF feature for CC8 LIBC down from the cc8-libc-zp-reorg fix, where it's out-of-place. check-in: 23f886388e user: tangent tags: trunk | |
07:04 | Fixed a CPAGE directive in libc.c that could potentially lead to the LIBC entry point call table being split across pages. check-in: 64f9c6e820 user: tangent tags: cc8-libc-zp-reorg | |
03:55 | Checkin [228e1c8b3a] added a comment ending in an exclamation point to HEADER.SB, which is perfectly legal in SABR, but it breaks a hidden contract between the CC0 and CC2 stages of the native compiler, wherein a '!' character terminates the preamble part of the CASM.TX output! This caused un-assemblable SABR output, because everything after that in HEADER.SB got chopped off. (Actually, it was probably treated as the start of the first inline assembly block.) check-in: ae9dda1ecb user: tangent tags: cc8-libc-zp-reorg | |
03:31 | Decided to move the LIBC globals previously moved into 10002 thru 10007 to the end of the field 1 zero page, so we can dedicate these 8 locations for user code. Otherwise, user code has no zero page locations they can safely use, which seems rather grabby of us. check-in: ca6257496b user: tangent tags: cc8-libc-zp-reorg | |
03:13 | Cherrypicked [52aa88863c] onto trunk, primarily to ensure that those with recent trunk checkouts don't get unexpectedly sent to branch cc8-cleanups. This change is harmless to have in both places. check-in: 0c7432da84 user: tangent tags: trunk | |
02:50 | Checkin [1ea9133a37] is incomplete: the CC8 native compiler's HEADER.SB file contains a duplicate of the ABSYM declarations in libc.c, shared between the two CC8 compilers; they need to match! It's not clear to me the consequences of these two not matching, since our tests didn't fail earlier, but there's also no good reason for these to differ. Added comments to reduce the chance of these two pieces of code drifting apart again. check-in: 228e1c8b3a user: tangent tags: cc8-libc-zp-reorg | |
02:39 | Added OPDEFs for DILX, DILY, and DIXY instructions to VC8E, shortly to be used within CC8's dispxy() LIBC routine. check-in: 281ab90846 user: tangent tags: cc8-libc-zp-reorg | |
02:06 | Comment fix check-in: 52aa88863c user: tangent tags: cc8-libc-zp-reorg | |
01:31 | Grammar fix check-in: b2f266258f user: tangent tags: cc8-libc-zp-reorg | |
01:23 | Moved [f]printf() buffer down into the otherwise sparsely used zero page, and rearranged the constants previously declared there to make better use of the space available. This then opens another half-page of space for the stack. Updated docs to cover all of this. EDIT: This is the start of a new branch because this checkin breaks some things, and some of the subsequent checkins destabilize CC8. I'm moving it to a branch until all that's fixed. check-in: 1ea9133a37 user: tangent tags: cc8-libc-zp-reorg | |
2019-02-13
| ||
19:13 | Moved the "Strings are of Words, Not of Bytes or Characters" section of the CC8 user manual up within the document to be after the "Character Set" section, where it fits better. (This wasn't really possible back when the latter section was part of the stdio section.) check-in: 7f8d8bcff5 user: tangent tags: trunk | |
19:12 | Added more detail about file I/O limitations to the LIBC user documentation section of the CC8 manual. (What used to be the "stdio" section is now broken up into several sections at the same level.) check-in: 23f92ab553 user: tangent tags: trunk | |
18:52 | Rewrote the "Inline Assembly in the Native CC8 Compiler" section in the CC8 user manual after learning more about its behavior and limitations. check-in: 573aba2f6a user: tangent tags: trunk | |
06:13 | Documented the new ./configure --boot-tape-* options, and updated some of the other configuration option docs in README.md. check-in: f5a05c7790 user: tangent tags: trunk | |
05:27 | Passing --disable-cc8-cross now effectively sets --disable-os8-cc8. That wasn't necessary before, since we were distributing a pre-built version of the native CC8, but now that we're building it from source, we need the cross-compiler to produce cc8.tu56. check-in: ff7ab04cc3 user: tangent tags: trunk | |
2019-02-12
| ||
06:13 | Updated ChangeLog.md to cover new CC8 work check-in: 1992d9b147 user: tangent tags: trunk | |
05:53 | Moved the "TC08 vs TD8E" and "V3D vs V3F" text from the ChangeLog.md file to the wiki, and referenced it from the ChangeLog. check-in: 01e0bc0d69 user: tangent tags: trunk | |
05:15 | Clarified the tail end of the concrete memory map example in the CC8 user manual. check-in: 3f8a6d035d user: tangent tags: trunk | |
05:13 | Fixed a field/page confusion check-in: 4037a35485 user: tangent tags: trunk | |
05:11 | Added a missing LOADER prompt in previous check-in: 7e3988ba1e user: tangent tags: trunk | |
05:11 | Fixed up a confusing use of LOADER/G in the new Memory Model stuff in the CC8 user manual. check-in: 0b061209fc user: tangent tags: trunk | |
05:03 | Decided to put the "1" back at the beginning of the addresses for the UDF ranges in the CC8 manual: it's a pretty good bet that the UDF will remain field 1 despite LOADER jiggery-pokery. check-in: d166926273 user: tangent tags: trunk | |
04:51 | Changed all of the bare CRs in the output from the final stage of the OS/8 CC8 (CC2.SV) to CRLFs. This solves a problem where PIP couldn't read the input file correctly, preventing us from using os8-cp in ASCII mode to copy the CC.SB file out to examine it in a civilized text editor. check-in: 529c0ee697 user: tangent tags: trunk | |
04:46 | Changed all uses of fprintf() in src/cc8/os8/p8.c that don't use printf() format specifiers to fputs() instead, saving 200 core memory locations due to the lower amount of stack manipulation required to call a straight function with a single parameter. check-in: 0b3919909f user: tangent tags: trunk | |
04:08 | Major improvements to the Memory Model section of the CC8 user manual following more RTFMing and experimentation. check-in: 8a9fab096f user: tangent tags: trunk | |
03:05 | Much more detail in the Memory Model section of the CC8 manual after spending some time RTFMing and trying to figure out how CC8 and the stack it's built atop (FORTRAN II, SABR, LOADER) lay things out in memory. check-in: e5dc02cc2d user: tangent tags: trunk | |
01:23 | Documented the breakdown of Field 1 usage by CC8 check-in: f289a33de1 user: tangent tags: trunk | |
01:03 | src/cc8/os8/header.sb was using size-4 hard tabs to emulate size-8 hard tabs, causing ugly output when you TYPE CC.SB or HEADER.SB on the OS/8 side. Changed these to size-8 hard tabs. Also added a Vim modeline to the top of the file to ensure that Vim (at least) will preserve our intent here. check-in: e7dd3c2c38 user: tangent tags: trunk | |
01:01 | Added a paragraph explaining the existence of TADI and such in CC8 output. check-in: 571e4b9d7f user: tangent tags: trunk | |
2019-02-11
| ||
09:13 | Fixed a bug introduced by [c20811f34c] affecting uses of printf "%d": the implementation wasn't passing "10" as the new radix parameter. It wasn't caught because CC8, being a K&R dialect, doesn't need or support function prototypes. check-in: a230f38ad3 user: tangent tags: trunk | |
08:06 | Clarifications to poetnerd's recent additions to the CC8 manual check-in: 970e63c338 user: tangent tags: trunk | |
05:41 | A few minor updates: Native compiler needs 20K; Added mention of the current state of the pre processor, I.E. it does have some support in both compilers, including #asm. check-in: b76c7b756c user: poetnerd tags: trunk | |
05:15 | Improved the section on Optimization in the CC8 manual check-in: fbb5c3e12f user: tangent tags: trunk | |
05:06 | Typo fix check-in: 35b5b4b6f0 user: tangent tags: trunk | |
05:05 | Added "Predefined OPDEFs" section to the inline assembly section of the CC8 manual, documenting the op-codes CC8 predefines in SABR output. check-in: 4a52fc8c15 user: tangent tags: trunk | |
04:30 | Fixed some nonstandard OPDEFs in the SABR code generated by CC8: its "MQA" is normally called "ACL", and its nonstandard "MQO" opcode is what's normally called "MQA". check-in: a96f0c5f20 user: tangent tags: trunk | |
04:18 | sprintf() now returns -1 when it hits an unknown format specifier, as cppreference says it should. This is actually smaller than the prior code, which incorrectly returned the number of characters written so far and then failed to terminate the output string. cppreference doesn't say we should terminate the output string in this condition, but the error return is enough to clue the user in that they shouldn't use the output string. check-in: 7e5e3a226d user: tangent tags: trunk | |
04:16 | Added note about "no heap/malloc" to the CC8 manual check-in: 47f3716a0e user: tangent tags: trunk | |
03:49 | Comment typo fix check-in: 433b6f5813 user: tangent tags: trunk | |
03:40 | Added %X support to CC8's sprintf(), now that %x means "lowercase hex." check-in: 99491648cd user: tangent tags: trunk | |
03:31 | The CC8 LIBC's itoa() function now has a radix parameter, like the function of the same name common in Windows and DOS C compiler standard libraries. This also effectively exposes the previously internal itoab() function, itoa() basically acting as a wrapper for it for bases other than 10 and for positive values in base 10. That is, the only difference between the two is for negative values in base 10. check-in: c20811f34c user: tangent tags: trunk | |
2019-02-10
| ||
06:01 | Grammar and clarity pass on the CC8 user manual check-in: 650ad501b1 user: tangent tags: trunk | |
05:47 | Merged the content of the "Known Bugs in the OS/8 CC8 Compiler" section of the CC8 manual down into the new LIBC reference. check-in: 6edb45e03f user: tangent tags: trunk | |
05:39 | Markdown formatting fix check-in: ec6d43e1ec user: tangent tags: trunk | |
05:38 | URL fix check-in: 681a96c67d user: tangent tags: trunk | |
05:37 | Rewrote much of "The Native OS/8 Compiler" intro material in the CC8 manual to reflect the new os8-run world, free of a pre-built cc8.tu56 image. Also removed cc8-tu56-update, referred to by that section, since it's now replaced by media/os8/scripts/cc8-tu56.os8. check-in: b58ecf4ec5 user: tangent tags: trunk | |
05:17 | Typo fixes check-in: 92d5c4b19e user: tangent tags: trunk | |
05:14 | Added note about lack of %ld in CC8 sprintf() check-in: e25e988ef8 user: tangent tags: trunk | |
05:08 | Collapsed some introductory material in the CC8 manual together to flow better, and change all "I" either to "we" where blame-sharing seems advisable or to the names of particular people where credit direction is required. :) check-in: 6ff36e09c3 user: tangent tags: trunk | |
04:56 | Moved a sentence down to make the CC8 doc flow better. check-in: f9acd37731 user: tangent tags: trunk | |
04:48 | The documentation for the way fopen() in CC8's LIBC treats file name extensions was wrong. It may *still* be wrong, but I think it's *less* wrong, at least. check-in: daa54b854a user: tangent tags: trunk | |
04:38 | Documented xinit() in the CC8 user manual. check-in: 7bde4d409d user: tangent tags: trunk | |
04:34 | Added the "Pointers Wrap Around" section to the CC8 manual and referred to it from each function documentation where relevant rather than repeat the warning about pointer wrapping and 4096 word field sizes. check-in: bc9432c9fe user: tangent tags: trunk | |
04:09 | Documented LIBC's strstr(), fixed a bug in its implementation discovered while comparing that implementation to our C reference, and clarified the whole "0-terminated word string" vs "NUL-terminated character string" thing. check-in: 3f02d1675d user: tangent tags: trunk | |
03:09 | Documented revcpy(), strcpy() and strcat() in CC8's LIBC. check-in: fe8674b377 user: tangent tags: trunk | |
02:36 | Clarified matters related to the stock CC8 include files libc.h and init.h in the manual. check-in: 8a7bc70515 user: tangent tags: trunk | |
02:25 | The cc8-tu56.os8 script was not copying CCR.BI to DSK:, as earlier CC8 systems did. This invalidates all of the CC8-based test exemplars yet again. Sigh. check-in: 904e54195b user: tangent tags: trunk | |
01:58 | Moved the inline assembly and calling convention section of cc8-manual.doc down to be near the Memory Model section, where it better belongs. Lots of improvements to the text after the move. check-in: f1e351cfb8 user: tangent tags: trunk | |
00:50 | Added proper documentation for printf() and friends to cc8-manual.md. check-in: 6988e82dd0 user: tangent tags: trunk | |
2019-02-09
| ||
22:47 | Documented memset() and memcpy() in CC8 LIBC. check-in: 0663863c87 user: tangent tags: trunk | |
21:10 | Several more LIBC functions documented check-in: 3441874c6e user: tangent tags: trunk | |
18:53 | URL fix check-in: 25556d8455 user: tangent tags: trunk | |
18:52 | Explained why libc.h and libc.c are where they are in the source tree. check-in: c8f9757d87 user: tangent tags: trunk | |
18:30 | Ian came up with a better optimization in the cupper vs while(toupper) loop so updated the related discussion in cc8-manual.md. check-in: 9ad642c82f user: tangent tags: trunk | |
18:17 | Extracted the section on core memory layout from the middle of the discussion of the compilers to its own section and expanded on it with info about stack/global layout from a private email exchange with Ian. check-in: c24e79e916 user: tangent tags: trunk | |
17:52 | Changed gets() in CC8 LIBC to return the passed pointer on success, as the Standard requires. Updated the docs to match. check-in: 479851471f user: tangent tags: trunk | |
16:14 | Minor improvements to the new cupper() docs. check-in: cd7773a818 user: tangent tags: trunk | |
16:05 | Rewrote the cupper() documentation in light of greater understanding of the code and some experiments. check-in: 52bdf1c613 user: tangent tags: trunk | |
14:57 | Documented dispxy() in CC8 LIBC check-in: 5ca29ae1f2 user: tangent tags: trunk | |
2019-02-04
| ||
21:01 | More minor text edits check-in: 46336e321a user: tangent tags: trunk | |
20:51 | Fixed a few spelling errors in COPYING.md check-in: baf0b81b9f user: tangent tags: trunk | |
19:04 | More work on the CC8 manual, mainly to cupper() and dispxy() check-in: 8e0263270e user: tangent tags: trunk | |
17:09 | Major update to the CC8 manual. Improvements in many areas, but it's mostly focused on LIBC areas. check-in: d4e8a88805 user: tangent tags: trunk | |
2019-02-02
| ||
05:15 | Assorted small improvements to the CC8 manual, mainly in response to the recent CC8-related ticket changes. check-in: 5474df892f user: tangent tags: trunk | |
05:12 | Changed emphasis from the mailing list to the project forum in HACKERS.md. check-in: cf44ed935a user: tangent tags: trunk | |
04:44 | More work on Ticket Processes. check-in: 6b135b2b1c user: tangent tags: trunk | |
04:34 | Addeed Ticket Processes section to HACKERS.md check-in: 9e3f86d083 user: tangent tags: trunk | |
04:23 | Drafty first draft of explanation of TD8E versus TC08, and V3D versus V3F. I expect this content, once understood by another, will be determined to be more appropriately put somewhere else. check-in: 002cb8eadc user: poetnerd tags: trunk | |
2019-01-31
| ||
21:59 | Finished the first pass on the CC8 LIBC docs in cc8-manual.md. This adds *some* documentation for every function, without any intention that it be complete at this point. Some points previously made elsewhere within the document (mainly in the lists of limitatios) are moved into this new section. Also expanded the section on inline assembly and the CC8 calling convention, since figuring out as much of LIBC as I have revealed much to me as I went. check-in: 19339280aa user: tangent tags: trunk | |
16:21 | Small improvements to the doc/cc8-manual.md intro material. check-in: acb19cdcd8 user: tangent tags: trunk | |
16:05 | Renamed media/os8/patches/TECO-31.20.10M-5.05.patch8 to TECO-31.20.10M-v5.05.patch8 to match related patch files. check-in: fe41407d03 user: tangent tags: trunk | |
16:04 | macOS curled some quotes in the new Markdown within cc8-manual.md. Grrr. check-in: 0aedc87d84 user: tangent tags: trunk | |
15:39 | Large improvements to the CC8 manual: rewrote the history section, mentioned Bill Cattey's Small-C 85 update, added links, reorganized it to gather related sections better, and added the first small bits towards documentation of the standard library. check-in: f15c1fd1e5 user: tangent tags: trunk | |
14:16 | Moved src/cc8/README.md to doc/cc8-manual.md. The other two CC8 README.md files remain behind, since they're small and need to be in-place. This top-level CC8 README is about to grow, hopefully to become a proper manual. check-in: 4cd53251ce user: tangent tags: trunk | |
05:39 | I ran 50 tests through test-os8-run both on Mac and Pi. All seems well. Merging in Ian's cc8/cross updates. TODO: Update status of open bugs addressed by this update. check-in: 96176af114 user: poetnerd tags: trunk | |
04:21 | Merge in current trunk. Test runs seem successful. Closed-Leaf check-in: ba538e6db4 user: poetnerd tags: smc85-cc8 | |
2019-01-30
| ||
20:30 | Another cc8/cross update from Ian Schofield. Addresses bug a4123bb743, making the cross compiler at last allow typed function declarations. cc8 now builds silently with -Wall. Supporting struct in the pdp-8 target had a storage management bug that is now fixed. The void type is now added to cc8. The resulting native C compiler for OS/8 is unchanged -- bit for bit identical, because that code does not use any of the enhancements to the cc8 cross compiler. check-in: dc687b9f08 user: poetnerd tags: smc85-cc8 | |
05:13 | Typo fixes check-in: 29330cbb14 user: tangent tags: trunk | |
03:12 | Updated RPi Fossil binary to 2.7 check-in: ee9f707dd5 user: tangent tags: trunk | |
03:02 | Markdown rendering fix in latest ChangeLog check-in: dd1dbf12f0 user: tangent tags: trunk | |
03:01 | Updated the ChangeLog with the work done since December 10. check-in: e7486b378c user: tangent tags: trunk | |
02:52 | Documented that --disable-os8-init now leaves INIT.TX and INIT.CM out of the disk image. It used to generated them but then not set the message to be displayed, arguing that you should be able to re-enable it later without regenerating the OS/8 media. check-in: 44b6675c0a user: tangent tags: trunk | |
02:22 | Greatly simplified the log sanitizer regexes for the SIMH ATTACH commands in test-os8-run. This invalidates the whole test corpus. check-in: d2e9ed2424 user: tangent tags: trunk | |
00:22 | The test-os8-run log sanitizer now suppresses the "Ctrl-F" message emitted by the latest SIMH console code, just merged in. Also cleaned up the formatting of the existing code in the log sanitizer. check-in: 18edbfc5a0 user: tangent tags: trunk | |
2019-01-29
| ||
22:03 | Polishing pass on the ChangeLog.md file. check-in: 18d6b64b65 user: tangent tags: trunk | |
21:12 | Added a link to the ChangeLog.md file from the release process doc. check-in: dabf2cb05b user: tangent tags: trunk | |
02:56 | Updated SIMH to latest upstream check-in: f8dba703c8 user: tangent tags: trunk | |
02:43 | Removed an empty line from SCP not present in upstream; same reason. check-in: 179af86b65 user: tangent tags: trunk | |
02:41 | Moved check for argv[0] == pidp8i-sim down within SCP, partly because we were doing it before that was sanity-checked, but also because where it is right now causes a merge conflict on simh-update. check-in: 4ad492579e user: tangent tags: trunk | |
01:09 | URL fix check-in: 05b9a8699c user: tangent tags: trunk | |
2019-01-13
| ||
15:17 | Update of native OS/8 C compiler from Ian Schofield which include: Add string storage area in Field 4. Improvements to CC.SV to read file line by line, and to include a bit more preprocessor functionality: Add simple #define directive. (Warning! Quoted text is not ignored!) Ignores formfeed character. check-in: d72ed26926 user: poetnerd tags: smc85-cc8 | |
2019-01-07
| ||
04:53 | Branch turned off debugging in media/os8/scripts/cc8-tu56.os8. check-in: 2822a3aa53 user: poetnerd tags: trunk | |
04:45 | Turn off debugging in cc8-tu56.os8 script. check-in: b087822359 user: poetnerd tags: smc85-cc8 | |
04:40 | Fix for ab0e67f1a5 merge in from smc85-cc8. Some sort of state dependent on the location of LIBC.RL was affecting the contents of the Native OS/8 C Compiler .SV files. So we carefully control where LIBC.RL will live before we use it. Tested by running test-os8-run with 200 randomly selected configs on both a Mac and on a Pi 3. check-in: dc82234d41 user: poetnerd tags: trunk | |
2019-01-06
| ||
20:55 | Add building of cc8.tu56 to test-os8-run check-in: 90551a9abb user: poetnerd tags: smc85-cc8 | |
20:53 | Fix typo in comment. check-in: 065cf7ae2b user: poetnerd tags: smc85-cc8 | |
2019-01-05
| ||
15:04 | I think this fixes ab0e67f1a5. Some sort of state dependent on the location of LIBC.RL was affecting the contents of the Native OS/8 C Compiler .SV files. So we carefully control where LIBC.RL will live before we use it. check-in: bfc8be2109 user: poetnerd tags: smc85-cc8 | |
15:02 | Make cc8.tu56 dependent on the script that makes it. check-in: bd1a37f561 user: poetnerd tags: smc85-cc8 | |
00:27 | Redo build of cc8.tu56 with make and an os8 script. Let's see if another platform will render THIS dterministically. If not, then it's probably the SABR environment. check-in: 4a6b076744 user: poetnerd tags: smc85-cc8 | |
2019-01-04
| ||
15:06 | Merge in latest trunk. check-in: cc92f84b3e user: poetnerd tags: smc85-cc8 | |
03:32 | I mis-labeled the subprocess.call Exception. check-in: a062d7a937 user: poetnerd tags: trunk | |
02:29 | New cc8.tu56, and complete refresh of tool chain to make it. What was in trunk would not build for a variety of reasons. This checkin fixes bugs: a3f875cd62 and c1719672d4. I was hoping it would fix ab0e67f1a5 (cc8-tu56-update nondeterministic) but it does not. check-in: 1f65fa2717 user: poetnerd tags: trunk | |
01:58 | Clean up .pt files left behind in obj directory by os8_send_file. check-in: 2eeb7b7433 user: poetnerd tags: smc85-cc8 | |
01:22 | New cc8.tu56 made with updated cross compiler, cc8-to-os8 and cc8-tu56-update. check-in: 8ee2f6e46f user: poetnerd tags: smc85-cc8 | |
2019-01-03
| ||
04:43 | Merged in updates from trunk. check-in: 0dd42ebd59 user: poetnerd tags: smc85-cc8 | |
04:42 | Import code from lib/os8scripts.py to create a scratch copy of the system packs. This too may help with making cc8-tu56-update more deterministic, as reported in bug ab0e67f1a5. check-in: 976a9d275a user: poetnerd tags: smc85-cc8 | |
04:38 | Specify examples and libs in global at beginning of program. Use list of examples instead of a directory listing of them. Cut out the deletion of basic.c example we don't want. check-in: 7a99f02922 user: poetnerd tags: smc85-cc8 | |
04:33 | Minimal update to get this tool working, once one has a working cc8 cross compiler. Adds detection of failed sub process. Uses new name for system packs. check-in: 6b76f3e6d2 user: poetnerd tags: smc85-cc8 | |
04:22 | Fixed breakage that caused this tool to output nothing. check-in: 5273de10e2 user: poetnerd tags: smc85-cc8 | |
04:21 | Need to define NOASLD. Otherwise cross exits with status 1 and breaks cc8-tu56-update. check-in: b3e27d0d6f user: poetnerd tags: smc85-cc8 | |
04:11 | Updated behavior of --disable-os8-init to match broader expectations: No longer installs init.cm and init.tx if disabled. Affects the 4 tu56 images also built. Note that @OS8_OPTS@ was not being used to build the 4 tu56 images until now. I expected that it was, but never passed them in. This closes bug 9c8f0a8de5. check-in: 8c7d9ced2a user: poetnerd tags: trunk | |
2019-01-01
| ||
21:07 | Checkin 44fac25071 broke bin/cc8-to-os8. That change back on 2018-01-20 was supposed to simply quit adding 'int' to declaration lines. Instead it caused the tool to quit producing any output at all. Here's a pull-up from my smc-85-cc8 branch where I fix the tool to generate the expected output: Suppress #include, but do nothing else. check-in: 6a0f8ef8bf user: poetnerd tags: trunk | |
2018-12-30
| ||
16:51 | New code base for cc8/cross: SmallC-85. SmallC-85 is a revived and updated port of SmallC that is much cleaner. This version compiles on the Mac using clang silently without warnings, and runs well enough to generate .sb files that are functionally the same as what was generated on the non-portable cross. Carefully uses today's trunk as baseline. check-in: 385a16c7cc user: poetnerd tags: smc85-cc8 | |
10:20 | Cherrypicked contents of checkin [8ef9b5fae0] accidentally made against trunk to the tip of branch smallc-85. This restores extern.h. Superseded by branch smc85-cc8. Closed-Leaf check-in: b2c0174786 user: poetnerd tags: smallc-85 | |
10:11 | Healed double-tipped smallc-85 branch: the first had no useful content, so the branch containing all the actual work basically merges into the stub. check-in: 6d2b6dec56 user: tangent tags: smallc-85 | |
2018-12-29
| ||
05:37 | Snapshot: Fix for globals: We needed to quit allocating storage for functions. Debugging fetch of globals. They seem swapped with locals somehow. check-in: 50ae87a7e9 user: poetnerd tags: smallc-85 | |
2018-12-28
| ||
12:57 | Fixed [b33f80acd8]: the Ctrl-E exit to the SIMH command prompt causes our new SIGINT handler to be called, which was not only turning off the LEDs but also shutting down the GPIO thread. That means that on sim re-entry, we'd refuse to turn the LEDs back on because the GPIO thread is no longer running. The fix is to turn LEDs off conditional only on whether the PiDP-8/I extensions are enabled, but to stop the GPIO thread only if we're going through the exit(3) path on handling SIGINT. check-in: 85596d132e user: tangent tags: trunk | |
12:17 | Fixed some pointless style differences between a mirrored pair of functions. No functional change. check-in: 1fdc270f88 user: tangent tags: trunk | |
11:42 | "make tags" was showing the call to ctags but not cscope, so that if it's available, you got the impression that cscope wasn't found here. check-in: 71eb12e111 user: tangent tags: trunk | |
05:15 | Looks like it's working! Deltas: GBLS and GLOBAL POOL output values are different, and I think that's because they used to be wrong. TODO: get n8.c and p8.c to compile on the Pi without errors for testing purposes! check-in: bd0ffae19c user: poetnerd tags: smallc-85 | |
01:43 | Take the version of cross/os8 I should have started with. Fix the problem with multiplying pointers by two when INTSIZE actually is 1. check-in: 220c52acab user: poetnerd tags: smallc-85 | |
00:03 | Roll back noise from libc.c. Add in SmallC-85 unlicense. check-in: 56c3cac87a user: poetnerd tags: smallc-85 | |
2018-12-27
| ||
06:20 | Fiddled with glint <- needs to be a char. Needed old target's print_decimal. check-in: 5b76366b51 user: poetnerd tags: smallc-85 | |
2018-12-24
| ||
16:55 | Snapshot: More stuff is working. TODO: get the numeric values to work correctly. Further fix to global symbol table output. Add the license file now canon upstream in SmallC-85. LATER: Merge the updates from trunk that predate the cc8-64-bit branch. (I should havve ported trunk, not the branch, but oh well...) check-in: a27c7fa2a1 user: poetnerd tags: smallc-85 | |
06:18 | Snapshot of refresh of cc8 cross compiler with smallc-85. This saves a copy of my work which merges enough of the old pdp8 targeting and the new cc8 platform to get through a build of src/cc8/os8/libc.c. The output code isn't quite correct yet, but it gets all the way through with mostly cosmetic errors, instead of crashing with illegal access or seg fault. check-in: 058d944b24 user: poetnerd tags: smallc-85 | |
06:08 | Create new branch named "smallc-85" check-in: ab1ea77b1a user: poetnerd tags: smallc-85 | |
2018-12-21
| ||
04:51 | Intrusive cosmetic changes. This removes all the references to mkos8 as the way packs are built. The only remaining mention of mkos8 is to give its place in history. check-in: b4006a6ae9 user: poetnerd tags: trunk | |
2018-12-20
| ||
08:36 | Better "Filtered" message on startup from test-os8-run in the face of -e, -s, and -c combinations. check-in: b8588065c5 user: tangent tags: trunk | |
2018-12-14
| ||
12:14 | Some cosmetic improvements to the LED GPIO start/stop sequences. No functional change. check-in: e399b67ef5 user: tangent tags: trunk | |
12:12 | Fixed some unclear paren nesting. check-in: 093ba368d9 user: tangent tags: trunk | |
2018-12-13
| ||
23:57 | Fixed a crash on simulator stop when turning off the LEDs if the LEDs were already turned off via another path. check-in: 1c0f9bd301 user: tangent tags: trunk | |
23:50 | Removed the new SIGTERM handler: it doesn't work well, and our recent changes to "pidp8i stop" make it unnecessary. check-in: 490a0b214b user: tangent tags: trunk | |
2018-12-12
| ||
14:08 | Added autosetup tests for sighandler_t and sig_t, with fallbacks for the former based on what we find. Without this, the new signal handling added to allow graceful "pidp8i stop" behavior only works on Linux. This change allows it to work on macOS, at least. check-in: df26be88ac user: tangent tags: trunk | |
13:58 | Fixed a number of problems with the way "pidp8i stop" was handled which resulted in an unclean simulator shutdown. The front panel LEDs now reliably get turned off each time, and the simulator's main thread is shut down gracefully. check-in: a773f0c174 user: tangent tags: trunk | |
05:02 | Reverted [c237120a73]: didn't see the "cd" command before the call to bin/os8-cp, which means we either need a "../../../" prefix or the "@builddir@/" prefix we had before. check-in: 02ab10b9a6 user: tangent tags: trunk | |
04:54 | Checking for error return from a read(2) call in d8tape to squish a complaint from GCC on Ubuntu 18.04. check-in: a6aa94eee4 user: tangent tags: trunk | |
04:49 | Specifying "Python 2" in the configure script messages: Ubuntu ships Python 3 by default, so when we claim "Python isn't installed" because Python *2* isn't available, it was jarring. check-in: d8244b866f user: tangent tags: trunk | |
02:51 | Removed the "@builddir@/" prefix on the call to os8-cp in Makefile.in: relative paths work even in out-of-tree builds, and this comes from os8-cp.in, so it's definitely in the build tree. check-in: c237120a73 user: tangent tags: trunk | |
02:50 | Fixed some drift in the INFILES definition in Makefile.in check-in: 670a6a98a0 user: tangent tags: trunk | |
02:40 | Raised the timeout on initial SIMH startup again, from 5 to 10 seconds. We still occasionally get pexpect timeouts on busy systems. Also, we've now seen it on a single-core FreeBSD VM while the host is busy running test-os8-run and such. check-in: 76ff6246c9 user: tangent tags: trunk | |
02:36 | Changed all the Python script shebang lines to use /usr/bin/env so they work on systems where Python is not in /usr/bin, such as FreeBSD, where it's in /usr/local/bin due to its being a non-core package. check-in: 91c645ba93 user: tangent tags: trunk | |
02:25 | Changed use of "type -p" to "which" in tools/mmake for portability to FreeBSD, whose /bin/sh doesn't understand that. It's in Bash and probably in ksh93, but we don't want to require that on FreeBSD. check-in: 72a6435832 user: tangent tags: trunk | |
02:21 | tools/mmake now tries harder to find the bin dir for the corecount call. This is needed on systems where $0 isn't set to an absolute path when a program is called via the PATH, like FreeBSD. check-in: 1124a3e512 user: tangent tags: trunk | |
02:14 | tools/mmake now runs "gmake" if found in the PATH instead of "make". This is required on FreeBSD since our Makefile.in isn't BSD make compatible. On macOS, /usr/bin/make is an older version of GNU make, so if gmake is available, it must've been installed separately, so we can assume the user wants us to use the newer version. check-in: 8146518605 user: tangent tags: trunk | |
02:02 | Merged perl-existence-check branch into trunk check-in: 4e7e8e9c36 user: tangent tags: trunk | |
02:01 | Tcl quoting hell fix with previous Closed-Leaf check-in: 313e2e8cad user: tangent tags: perl-existence-check | |
02:00 | The Perl test wasn't using the right command flags. (Copy-pasta from the Python test.) check-in: a5e8b82a58 user: tangent tags: perl-existence-check | |
01:58 | Moved the Perl test up in auto.def: tools/version is called before the prior location, which we thought was a good place to put it since it's just before the Python test. check-in: b0fb14bedb user: tangent tags: perl-existence-check | |
01:57 | The configure script now checks for Perl in the path. It's required by tools/version, tools/mkbootscript, and tools/test-os8-run. check-in: de63545335 user: tangent tags: perl-existence-check | |
01:43 | The configure script now tells how to get "pip" on Debian type systems. check-in: d3c0d7536f user: tangent tags: trunk | |
01:42 | Made corecount more portable. check-in: 5bbf26d6ef user: tangent tags: trunk | |
2018-12-10
| ||
14:52 | . check-in: 07987e8529 user: tangent tags: trunk | |
14:45 | If the pidp8i script doesn't detect the PiDP-8/I front panel via scanswitch, it falls back to our new pdp8 alias to suppress the GPIO thread. You can thus install the PiDP-8/I software on a systemd based Linux distro and say things like `pidp8i start` and get our new HLT handling, skip the complaints about no GPIO, etc. check-in: 8848227626 user: tangent tags: trunk | |
13:35 | Merged simh-update branch check-in: bb3903976f user: tangent tags: trunk | |
12:58 | Updated SIMH section of ChangeLog for this branch Closed-Leaf check-in: b96e790649 user: tangent tags: simh-update | |
12:23 | Updated copyrights in header comments for pdp8_cpu.c and scp.c. check-in: cf272a6d1e user: tangent tags: simh-update | |
12:09 | Merged in the upstream changes to scp.c check-in: 5b80a93d7b user: tangent tags: simh-update | |
11:56 | Added new sim_card module from upstream SIMH check-in: 1656b5ff6e user: tangent tags: simh-update | |
11:47 | Updated checkin ID and datestamp for current SIMH check-in: f28a9f5bd1 user: tangent tags: simh-update | |
11:41 | Initial pass at merging upstream SIMH version 86294db3 check-in: d9988b0985 user: tangent tags: simh-update | |
11:22 | Updated ChangeLog with today's work so far check-in: 22043c7e5c user: tangent tags: trunk | |
10:48 | Typo fix check-in: 0514b6a5e4 user: tangent tags: trunk | |
10:26 | The optimized PRINTS routine requires that AC point at the word *before* the string you want it to print, so we were printing "ELLO, WORLD!" The prior bug with mkbootscript masked this. check-in: 59b81c7034 user: tangent tags: trunk | |
10:23 | Set 8th bit on the ASCIIZ strings in pep001.pal, in case it's used with a terminal that cares about this, such as an ASR-33. check-in: 397c6d8901 user: tangent tags: trunk | |
10:21 | The pep001.pal program could hang in the TSF loop on writing the initial "ANSWER: " leader if the terminal device isn't prepared to receive characters. Added a "TLS" to send a null character to kick things off. This eats up the one remaining word left in PAGE 1! check-in: 15e91ae82b user: tangent tags: trunk | |
10:19 | Fixed a bug in tools/mkbootscript that caused it to write a SIMH "dep" command for only the first word in an assembly file data table, currently used in our examples for ASCII terminal output strings. This caused our "HELLO, WORLD!" demo program to do nothing useful, and for the "ANSWER: " leader from pep001.pal to be truncated to "A". check-in: 2702b89257 user: tangent tags: trunk | |
08:30 | If you run the simulator via the new "pdp8" name, we revert the change to the behavior of the HLT instruction: it drops you to the sim> command line instead of halting the CPU in expectation that the user will then poke around with the CPU state or hit CONT via the front panel. check-in: 2b00fa32cd user: tangent tags: trunk | |
08:24 | Set 8th bit on ASCIIZ characters in the PDP-8 assembly "HELLO, WORLD!" demo program: some terminal configurations may require it. check-in: 174d0dc11e user: tangent tags: trunk | |
07:55 | Comment clarity tweak check-in: e74a7c5ba7 user: tangent tags: trunk | |
2018-12-08
| ||
20:38 | The PRINTS routine in examples/hello.pal was not Rick Murphy's optimized version that we're shipping in examples/routines/prints.pal. Updated it. Also fixed the header comment so that the resulting boot script doesn't have a dangling clause in its startup message. check-in: a4075c7cd0 user: tangent tags: trunk | |
18:20 | Updated the references to "mkos8" in doc/class-simh.md. There are still two references there for historical reasons, but the bulk of the text now refers to os8-run instead. check-in: bcf566411e user: tangent tags: trunk | |
18:07 | Rethought the policy on overwriting binary media: although it made sense to allow the new RK05 disk file names to merge with the old, this step also overwrites the boot scripts when that happens, and those may have user changes as well. Therefore, the new policy is that if *any* IF=0 default disk image is found, past or present, we skip mediainstall. You have to choose to run it by hand in that case, or follow the manual merge steps from README.md. check-in: 685d583d5a user: tangent tags: trunk | |
17:53 | Changed a bunch of "os8v3d*.rk05" references to their equivalent and current names. check-in: c2fc076dcc user: tangent tags: trunk | |
17:51 | Changed "make install" so that it skips "make mediainstall" based on the existence of v3d.rk05 rather than local.tu56 so that we merge our new media with v20171222, as that release was able to merge its os8v3d-* with the os8.rk05 of prior releases. This does mean the prior release's local.tu56 and pristine source tapes can get overwritten, but those weren't supposed to be changed by the user anyway. We don't wan't people doing "make install" and not understanding why their "new" system behaves just like the old one. check-in: 384bf04b34 user: tangent tags: trunk | |
16:22 | Changing boot scripts via IF + SING_STEP now detaches all devices, shuts down the GPIO thread, and re-launches the simulator with the new script rather than just call "do SCRIPTNAME" in order to get a fresh simulator configuration, free of conflicts. The case that prompted the need for this is switching between boot scripts that assume the tape controller is TC08 to one that assumes TD8E, or vice versa. The only other way we could solve this is to write "detach" commands at the top of every boot script to undo everything done by every other possible boot script. Closes [81d528e3]. check-in: 82cc1aebca user: tangent tags: trunk | |
16:00 | The installation tree is now entirely owned by @INSTUSR@.@INSTGRP@. We still had a mix of root.root in there, due to the way the tree was being created, resulting in oddities like the normal user could write to the installed OS/8 media but couldn't remove them from disk. check-in: b08f63333c user: tangent tags: trunk | |
15:45 | Adjusted the ChangeLog.md entry on boot tapes to reflect the fact that all four are always built: you aren't selecting one to build, you're choosing which one gets used for IF=3. check-in: c7d1f02b34 user: tangent tags: trunk | |
15:35 | Cosmetic tweak for recent Makefile.in change check-in: 675d87a243 user: tangent tags: trunk | |
13:46 | test-os8-run uses a custom bin/* set, so it was still hard-coded to get bin/pidp8i-bin, not bin/pdp8 as class simh now expects when we pass True for the skip_gpio ctor flag. check-in: 8193ea0be2 user: tangent tags: trunk | |
13:40 | The test-os8-run Makefile target now runs the program first in -g mode then in -e mode only if that returns without error. When you say "make test-os8-run", you almost certainly don't want to begin re-testing all of the existing exemplars without having a complete test corpus first. If you want to test on an incomplete corpus, you can run in -e mode manually. check-in: 0cf1c0e9bb user: tangent tags: trunk | |
12:39 | When a program passes True for the formerly-named "ignore GPIO lock failure" flag to class simh, it now runs bin/pdp8 instead of bin/pidp8i-sim which disables the GPIO thread per [daa86ad9b6]. Consequently, the simh ctor no longer checks for the "Failed to lock GPIO" error from the simulator, and it checks for the SIMH startup banner intead of the PiDP-8/I GPIO thread startup banner, which may now never appear. Finally, this checkin modifies the interface of simh.try_wait to be more of a simple wrapper around simh._child.expect with exception handling built in; this is deemed safe, since class simh is the only known user of this public API. This fixes bug [b876ef8c]. check-in: d7b5cbd7cb user: tangent tags: trunk | |
11:37 | Removed the target added on the os8-v3f-extensions branch for media/os8/3finit.tx, which is built from a *.in file, because we'd previously choked this down to a single file, media/os8/init.tx in order to force a parallel build to go single-threaded at this point, since the configure script can't be sanely run more than once in parallel. The clue we needed to fix this is that on touching any *.in file and doing an mmake is that you'd get the "Fossil doesn't work here" complaint from auto.def because it's trying to lock the repo DB twice in parallel; one fails, the other succeeds, so it looks like there is no problem and the complaint is apropos of nothing. It's actually flagging a real problem! check-in: 19b31029e5 user: tangent tags: trunk | |
11:32 | The pidp8i-sim Makefile target also creates a hard link to bin/pdp8 now, so we can use it from class simh, especially via os8-run. check-in: a3afe42e70 user: tangent tags: trunk | |
11:09 | If the simulator is not called as "pidp8i-sim", we now disable the GPIO thread: it doesn't get started, we don't feed it with data, and we don't pull any data it is expected to provide. Additionally, the Makefile now creates a @prefix@/bin/pdp8 hard link to make the simulator fall back to a state nearly identical to the upstream SIMH version by triggering this new feature. This is in partial support of ticket [b876ef8c25]. check-in: daa86ad9b6 user: tangent tags: trunk | |
10:27 | Small cosmetic fixes in Makefile.in check-in: 94d64e2c34 user: tangent tags: trunk | |
09:58 | Found and fixed the cause of the obj/os8-run.log overwrite during test-os8-run, avoiding the need for the concatenation dance previously done to avoid the problem. check-in: 22dc5521d8 user: tangent tags: trunk | |
2018-12-07
| ||
20:59 | . check-in: 7a239c4f65 user: tangent tags: trunk | |
20:56 | . check-in: 75d5e505a6 user: tangent tags: trunk | |
20:51 | Typo fix in previous check-in: a5a8f4d322 user: tangent tags: trunk | |
20:50 | Reformatted the list of test-os8-run virtues to be clearer and also to work around a Fossil Markdown formatting bug. check-in: 2cc21c1c78 user: tangent tags: trunk | |
20:42 | Expanded on the os8-run section of the new ChangeLog entry check-in: 4920eed742 user: tangent tags: trunk | |
20:10 | Increased class simh's on-startup timeout from 3 to 5 seconds to try and avoid pexpect timeout errors when the system is busy, as can happen when the cores are oversubscribed doing test-os8-run passes and then a background process starts. (And on top of that, there's probably an I/O stall in there somewhere, like an SSD TRIM or cache flush.) check-in: 41b3353407 user: tangent tags: trunk | |
13:06 | First pass at ChangeLog.md and AUTHORS.md updates for the upcoming release. check-in: 4beae4e135 user: tangent tags: trunk | |
2018-12-06
| ||
23:51 | Merge os8-v3f-extensions branch to trunk. This replaces the old mkos8 builder with a generic scripting facility, os8-run. It also puts some historical sources "os8-v3f" under source control to build an update from OS/8 v3d. The ultimate aim of the v3f work is to re-generate the lost OS/8 Combined Kit which includes device drivers from the "OS/8 Device Extensions Kit" as well as integration of pieces that were formerly add-ons. The "Combined Kit" work is now possible. check-in: b7bc669fdc user: poetnerd tags: trunk | |
04:46 | Added a timeout parameter to simh.os8_send_cmd() with a default that lets the current os8-run scripts run without timing out when running especially long commands such as the CCL.BI assembly step on an old Raspberry Pi model B+. (We'd been declaring success while running on much faster platforms, which have correspondingly shorter maximum run times for these commands.) Closed-Leaf check-in: 9e2383ad18 user: tangent tags: os8-v3f-extensions | |
2018-12-03
| ||
22:32 | Passing debug flag from os8-run down into class simh. check-in: 66cca79b3c user: tangent tags: os8-v3f-extensions | |
18:18 | Avoiding the ^C was mis-nested, and only active when debugging was enabled. Fixed now. check-in: 7577fa194d user: poetnerd tags: os8-v3f-extensions | |
16:17 | Check in the CORRECT change to conditionalize on debug. check-in: 58762d8480 user: poetnerd tags: os8-v3f-extensions | |
16:17 | Fix debug noise. It was not properly conditional on self.debug. check-in: cacac3bb8a user: poetnerd tags: os8-v3f-extensions | |
10:26 | It is now possible to give a hash prefix of as few as 6 characters when identifying a particular test by hash to test-os8-run. check-in: 0cea4c1f35 user: tangent tags: os8-v3f-extensions | |
10:16 | Added inc::Module::Install to cpanfile: my Pi B needed it. check-in: 46248e133a user: tangent tags: os8-v3f-extensions | |
09:52 | It is now possible to pass hashes of prior generated tests to test-os8-run to re-test just those named tests. This is an alternative to -e when you want to re-test just some subset of the tests without looking the test up manually and re-running the test by hand. check-in: a1f53d7064 user: tangent tags: os8-v3f-extensions | |
09:25 | Extracted generate_tests() in test-os8-run. check-in: 684f72e682 user: tangent tags: os8-v3f-extensions | |
09:12 | Further cleanup of main() in test-os8-run. check-in: 17b868fbe2 user: tangent tags: os8-v3f-extensions | |
09:09 | Added --version and --help handling to tools/test-os8-run. check-in: 06d8af86f4 user: tangent tags: os8-v3f-extensions | |
06:26 | Refinements to sanitizing: 1. Cleans up -temp-<gensym>.foo temporaries for scratch media. 2. Cleans up -<pid>.pt_temp paper tape temporaries. 3. Cleans out backspace sequences that pexpect seems gratuitiously to enter which screw up the other sanitizers. These are nasty regexps. Special thanks to regex101.com without which these nasty regexps could not have been prototyped. check-in: e34afedcba user: poetnerd tags: os8-v3f-extensions | |
03:57 | Additional debugging of race condition in running BUILD in v3d-dist-rk05.os8: 1. Slight cleanup of debugging messages in os8script.py:build_subcomm. 2. Teach test-os8-run to preserve make.log as {last,fail}m.log. 3. Add logic in os8script.py:build_subcomm to NOT send ^C after successful BOOT command, because we are already at command level, and it creates a race condition in the expect command loop. TODO: 1. Sanitize log output to ignore temp file names for scratch images. 2. Cleaner handling of make.log saves. check-in: b7fdc79a38 user: poetnerd tags: os8-v3f-extensions | |
2018-12-02
| ||
22:15 | Take steps to preserve the os8-run.log file from the first time through os8-run making v3d-dist.rk05. For reasons I do not understand, the two runs of os8-run create new log files rather than appending the second run to the first file. check-in: 60386aa52a user: poetnerd tags: os8-v3f-extensions | |
21:08 | Draft of tool to unpack os8 packs that test-os8-run says are different. Attempt to fix v3d-dist-rk05.os8 script to allow test-os8-run to sanitize the init.txt. check-in: 268d30c309 user: poetnerd tags: os8-v3f-extensions | |
2018-12-01
| ||
03:51 | Added a "-c" option to test-os8-run to allow graceful limit to the count of tests created. check-in: 75497225c9 user: poetnerd tags: os8-v3f-extensions | |
2018-11-30
| ||
03:34 | Add to sub sanitize_log to clean up paths from 2 new cases: 1. abbreviating "attach" as "att". 2. Output echos what is attached. check-in: e7f460e1e3 user: poetnerd tags: os8-v3f-extensions | |
2018-11-25
| ||
03:42 | The less intrusive "os8_resume" has proven unreliable with 8 parallel makes going on for test-os8-run. The symptom is that we go to resume OS/8, but instead of provoking a dot prompt from OS/8, we seem to send ^C to SIMH before it ever resumes OS/8 operation. So now we call the restart_command instead of the resume_command inside os8script.py. This seems to operate reliably. check-in: 98ad1fc68b user: poetnerd tags: os8-v3f-extensions | |
2018-11-24
| ||
21:18 | Added "--prefix ." to call to ../../../configure in test-os8-run. This should eliminate a whole class of race conditions, because now it will build the run packs in tmp/<pid> subdirs instead of the usual top level. check-in: 865bf2ccdc user: poetnerd tags: os8-v3f-extensions | |
2018-11-21
| ||
04:23 | Addresses bugID 9c8f0a8de5 Puts conditional around SET SYS INIT in the v3d-dist-rk05.os8 script. Need to come to consensus on whether or not this is the right fix, and if the same change should be made to all-tu56.os8 before we can officially close that bug. check-in: b9956a79f0 user: poetnerd tags: os8-v3f-extensions | |
2018-11-19
| ||
05:04 | fix for vtedit enablement. A line from mkos8 was pasted in on creation time and not found in testing until now. check-in: 5feccfdf3a user: poetnerd tags: os8-v3f-extensions | |
2018-11-18
| ||
04:52 | The autosetup check for lz4 in the path was failing either way: when the tool is available, it was running it in a way that caused it to return a nonzero status code, failing the check. check-in: 70d23bbd7d user: tangent tags: os8-v3f-extensions | |
04:47 | Renamed test-mkos8 to test-os8-run, since mkos8 is now replaced with os8-run. Also renamed all of the references to it. check-in: 0211633f80 user: tangent tags: os8-v3f-extensions | |
04:39 | The top-level Makefile now disables the test-mkos8 target when tools/test-mkos8 can't run due to missing prereqs. check-in: 79a16d5ab5 user: tangent tags: os8-v3f-extensions | |
2018-11-17
| ||
15:55 | Added lz4 prereq to the test-mkos8 autosetup tests check-in: c46ae7cc93 user: tangent tags: os8-v3f-extensions | |
15:33 | Added an autosetup test for perl-in-path and whether that Perl can compile tools/test-mkos8. If so, we report success, and if not, we tell the user how to fix it with our new cpanfile. check-in: cc6666ce27 user: tangent tags: os8-v3f-extensions | |
08:59 | test-mkos8 is now working with os8-run to successfully create the v3d.rk05 image for comparison checking. Open Questions: 1. Is further refinement needed for the log sanitizizing? 2: Is comparing the binary of the disk image the best test? check-in: 5e4633e246 user: poetnerd tags: os8-v3f-extensions | |
02:06 | Found the problem with running ../../configure in test-mkos8: Needed to add back the line to auto.defs that creates the lib subdir that hosts the options file: if {![file exists "lib/pidp8i"]} { file mkdir "lib/pidp8i" } check-in: 408edf8633 user: poetnerd tags: os8-v3f-extensions | |
00:21 | Snapshot: Trying to get test-mkos8 working. ../../../configure from the test/tmp/<pid> directory blows out with: Error: couldn't open "lib/pidp8i/os8opts.py": no such file or directory check-in: d2986ecfba user: poetnerd tags: os8-v3f-extensions | |
2018-11-16
| ||
22:05 | Building without patches was disabled in Check-in [a2454ca487]. However the option was still present in auto.def until now. check-in: 38482c106b user: poetnerd tags: os8-v3f-extensions | |
2018-11-15
| ||
06:35 | A little format cleaning up. check-in: 6389b2a713 user: poetnerd tags: os8-v3f-extensions | |
06:29 | Adding documentation of os8-cp command. check-in: b88e188406 user: poetnerd tags: os8-v3f-extensions | |
2018-11-05
| ||
19:24 | I misunderstood how to do mediainstall, and what I had was not installing all of what we made. Fixed now. check-in: d6f48ac376 user: poetnerd tags: os8-v3f-extensions | |
01:00 | Fixes to uniquify resources that might be used in parallel make. Also cosmetics: changed "scratch" name to have "-temp-" in it to make it easier to find and delete if make blows out. Since I was touching the use of the system disk in all-tu56.os8, I cleaned out some dead code and updated as comment. check-in: b2a6c5d89e user: poetnerd tags: os8-v3f-extensions | |
2018-11-02
| ||
03:22 | all-tu56.os8 was copying in DTCOPY.SV and DTFRMT.SV insgtead of TDCOPY.SV and TDFRMT.SV when building for td8e. check-in: 32377aac5c user: poetnerd tags: os8-v3f-extensions | |
03:19 | scratch option os8-run mount command now creates a unique temp file. Now parallel makes will not step on each other. check-in: 2f3f1ca884 user: poetnerd tags: os8-v3f-extensions | |
01:25 | Fixed bug in all-tu56.os8: The old code to clean up the system rk05 that was commented out was lacking an "end enabled never", and so it caused the rest of the file to be ignored. This messed up all td12k creations. check-in: 8e309b3872 user: poetnerd tags: os8-v3f-extensions | |
01:23 | Added more debugging output. Line count stack was wrongly managed because Python pop semantics are the opposite of what I thought. So I was removing the first in, not the last in item from there. check-in: 85804b2ac3 user: poetnerd tags: os8-v3f-extensions | |
2018-10-29
| ||
03:30 | Moved v3f-build.rk05 to the obj directory. Along the way taught os8-cp to do path expansion on names in dirs.py just like os8-run does. This enabled a simplificaiton and cleanup of Makefile.in because the actions file in .../src/os8/v3f/actions.txt simply says that the destination lives in $obj. Also needed to update dirs.py.in to know about obj, as it knows about bin. check-in: bb42538cf0 user: poetnerd tags: os8-v3f-extensions | |
01:13 | Corrected dependencies in light of clearer understanding. mmake now seems to work for me with no redundant builds. check-in: db3b20634b user: poetnerd tags: os8-v3f-extensions | |
00:40 | Merged in v3f-parallel-make-fix. It behaves the same for me as previous versions, but no sense in forking. check-in: f3b2941356 user: poetnerd tags: os8-v3f-extensions | |
00:01 | DAMN! Forgot to add the new init file. Sorry! check-in: 78191ab4cd user: poetnerd tags: os8-v3f-extensions | |
2018-10-28
| ||
08:24 | Added (and in one case, reordered) some dependencies in the new os8-run based media build system so that all callers to os8-run from the Makefile now declare which media they require to exist before the script will run. Without this change, parallel makes are likely to fail because make is given the freedom to run targets before the things they're dependent upon exist. This is a branch rather than on the os8-v3f-extensions branch directly because I can't test it here against the tip of that branch due to a missing file. Also, it should be checked by Bill Cattey before being merged into that branch. Closed-Leaf check-in: 5a84eb18d9 user: tangent tags: v3f-parallel-make-fix | |
2018-10-27
| ||
04:27 | Added init.cf and init.tx to the 4 bootable tu56 images. I *think* I understood how to do the dependencies right for the v3finit.tx.in creation. check-in: b17efa3579 user: poetnerd tags: os8-v3f-extensions | |
2018-10-21
| ||
21:04 | Found another typoed dependency that should have pointed at v3d.rk05, but instead pointed at nothing. check-in: c01b3a17db user: poetnerd tags: os8-v3f-extensions | |
20:32 | Here's why it's always good to do the occasional fossil clean -n: I see I FORGOT to add the LCSYS.BI and UCSYS.BI files to the tree. Can't do the builds I've got running without them. check-in: 30b1f33839 user: poetnerd tags: os8-v3f-extensions | |
20:21 | Enables all the lowercase option for v3d and v3f tapes and in the 3.script and run-v3f.script scripts. TODO: Enable lowercase for BASIC in v3f. That script isn't qualified, and there's a backlog of patches and validation on BASIC that are needed. check-in: db857bdac1 user: poetnerd tags: os8-v3f-extensions | |
19:58 | Get BATCH working under v3f. This was HARD! Had to chase down source, and the diddling of one magic constant that SHOULD NOT BE as volatile as it was. check-in: aad0aa239c user: poetnerd tags: os8-v3f-extensions | |
03:49 | Put FORTRAN II and BASIC on the 4 bootable tu56 images unless overridden by "--disable fortran-ii" and/or "--disable basic" check-in: d5d8b023f9 user: poetnerd tags: os8-v3f-extensions | |
2018-10-20
| ||
18:54 | Additional debugging output, and a correction to the build_subcomm state machine during the BUILD command run within BUILD.SV. There was some duplicate code, and I think I may have spazzed and never properly exited the BUILD command state machine. check-in: 497f79dad6 user: poetnerd tags: os8-v3f-extensions | |
18:00 | Add missing dependency on the v3d.rk05 boot image to the making of v3f. check-in: b17e1072b9 user: poetnerd tags: os8-v3f-extensions | |
17:47 | Further refinement of make run-v3f: Sets dependency independently of what was specified as the default IF=3 OS/8 version. check-in: 464fcf21de user: poetnerd tags: os8-v3f-extensions | |
03:49 | The new run-v3f target was depending on one of the two possible TU56 tape images that could be in boot/3.script after configure runs, meaning the dependencies were correct for only one of the two possible cases. This target is now dependent on the same autosetup variable used to create 3.script from 3.script.in, so we're sure to build the correct tape image before starting the simulator. check-in: 8b39a5cb89 user: tangent tags: os8-v3f-extensions | |
03:01 | Correct dependency: We need to depend on $(OS8_BOOT_DISK) because that is what we will be running, not the renamed bin disk that had no patches. check-in: b247b928cf user: poetnerd tags: os8-v3f-extensions | |
2018-10-18
| ||
09:55 | Merged in trunk fixes check-in: ad9d51ebae user: tangent tags: os8-v3f-extensions | |
09:52 | The pidp8i-test program now debounces the switches in scan-switch mode. Without this change, if the contacts bounce rapidly enough for the scanning loop to detect, a builder could be lead to believe their properly-working PiDP-8/I has a problem. check-in: 9dfb8bdafd user: tangent tags: trunk | |
09:49 | Made the size of the global switchstatus array explicit, so we can do sizeof sanity checks on it in programs. check-in: e9ec92de08 user: tangent tags: trunk | |
09:48 | The recent addition of NetBSD support to tools/corecount accidentally included a change to the shebang line necessary for NetBSD but incorrect for Linux, which this project primarily targets. Changed it back to /bin/bash, lest we take a new dependency on ksh everywhere. check-in: 8065f647a8 user: tangent tags: trunk | |
08:39 | Whitespace fix check-in: 2607fa1a71 user: tangent tags: trunk | |
2018-10-17
| ||
15:34 | Removed media/os8/os8.tu56 and the references to it now that 3.script uses the new os8-run-built tape images. check-in: d34787b405 user: tangent tags: os8-v3f-extensions | |
15:25 | Merged a few of the differences between the new boot/run-v3f.script.in file and the preexisting run/3.script.in file into the latter. check-in: 47c6ab8349 user: tangent tags: os8-v3f-extensions | |
15:11 | Added "run-v3f" Makefile target, its "runf" alias, and the boot/run-v3f.script.in file those targets use. check-in: 06aef989e3 user: tangent tags: os8-v3f-extensions | |
2018-10-16
| ||
00:18 | The copy in of the v3f source files to the buld rk05 image was too quiet for too long. I enabled -v on the os8cp call for better status reporting. check-in: 39d8b6137a user: poetnerd tags: os8-v3f-extensions | |
00:07 | Remove superfluous dependency: v3d tapes don't care about v3f stuff. check-in: dadf27bae9 user: poetnerd tags: os8-v3f-extensions | |
2018-10-15
| ||
23:56 | Add dependencies on the sources in .../src/os8/v3f. Now if we touch one we will rebuild the V3F bits and pieces. check-in: ab959da8be user: poetnerd tags: os8-v3f-extensions | |
23:55 | Fix 30 year old bug: Build V7A should report its PROPER version. check-in: f691c6840c user: poetnerd tags: os8-v3f-extensions | |
2018-10-13
| ||
22:56 | Two new config options that control what kind of .tu56 image gets booted with the IF=3 option: --boot-tape-config={tc08 | td12k} with default of tc08 --boot-tape-version={v3d | v3f} with default of v3d. check-in: 4ed46aa217 user: poetnerd tags: os8-v3f-extensions | |
2018-10-12
| ||
02:44 | Pulled up trunk deltas into my branch. Everything tests out fine. check-in: 2ba40f1138 user: poetnerd tags: os8-v3f-extensions | |
2018-10-05
| ||
23:22 | Updated with more of what's in this directory. check-in: cde2b80fc0 user: poetnerd tags: os8-v3f-extensions | |
23:12 | Quick and dirty description of the scripts in this directory. check-in: 97cf611b8c user: poetnerd tags: os8-v3f-extensions | |
2018-10-04
| ||
06:06 | Something I should have done long ago: If we're going to re-configure sys, then we should use a scratch copy. all-tu56.os8 now does that for the td12k builds. It doesn't need to do that for the tc08 builds so it doesn't bother. Also changed the filename of the scratch to use "-copy" in the name instead of "_copy" aligning with filename conventions. check-in: f67db97d71 user: poetnerd tags: os8-v3f-extensions | |
05:40 | Fixed some noise. simh.py was printing stuff by default. Added a verbose internal variable to the simh object and updated os8-run and os8-cp.in to set that variable to True when they get the verbose option. check-in: fe46cf1a76 user: poetnerd tags: os8-v3f-extensions | |
05:23 | FIXED problem where make kept re-making v3d-src.rk05: Misuse of os8-run mount command's option "preserve". The NEW version got a new name with a version number and the old version was kept. Make kept finding the original version. The CORRECT option to use is "new" not "preserve". check-in: 48bf62dd63 user: poetnerd tags: os8-v3f-extensions | |
04:41 | all-tu56.os8 now copies in appropriate DECtape utilities: TD8E configs get: TDCOPY.SV, TDFRMT.SV TC08 configs get: DTCOPY.SV, DTFRMT.SV check-in: 4ee3a65c2a user: poetnerd tags: os8-v3f-extensions | |
04:30 | Enabled builds of all 4 tu56 images: v3d-tc08.tu56, v3d-td12k.tu56, v3f-tc08.tu56, v3f-td12k.tu56. Amended all-tu56.os8 and v3d-dist-rk05.os8 to put the following td8e drivers into the SYS:BUILD.SV image: TD8ESY.BN (12k system handler), ROMMSY.BN (rom system handler), TD8EA.BN. Left out were the B, C, and D TD8E non-system handlers. (I was paranoid about space.) Extensive comments in the scripts throughout on the various tradeoffs and dependencies. check-in: 0e4030caec user: poetnerd tags: os8-v3f-extensions | |
04:13 | That's what I get for assuming instead of testing. :-( This one PROPERLY specifies the copyin for ABSLDR.SV and is tested. check-in: 16dc21707a user: poetnerd tags: os8-v3f-extensions | |
03:40 | v3f BUILD installs ABSLDR, but v3d config does not. Need to copy it in. check-in: 221d5d7ff0 user: poetnerd tags: os8-v3f-extensions | |
2018-10-02
| ||
05:46 | Snapshot: Mostly working "all-tu56.os8" script that builds v3d or v3f on tc08 or td12k or tdrom system. TODO: More testing. Make the V3D rk05 BUILD.SV already contain the TD8E drivers. Decide on an INIT file. check-in: 857984d41b user: poetnerd tags: os8-v3f-extensions | |
04:33 | Bug fixes to basic_line_parse. I'm using a LOT of conditionals now, and apparently there were several bugs that I missed: 1. basic_line parse was not using the stripped version of line. 2. The options stack pop was taking the the wrong member of the stack so it was a first in last out, instead of the intended first in first out stack. 3. The test for comments was on the pre-stripped line so that comments could not be indented with whitespace. check-in: bfccd73f14 user: poetnerd tags: os8-v3f-extensions | |
2018-09-30
| ||
23:15 | Added version and directory expansions into the print command. Includes print-test.os8 to test them. check-in: f14e1e8973 user: poetnerd tags: os8-v3f-extensions | |
20:33 | The \s test for whitespace in tools/corecount wasn't working on NetBSD 6 for some reason, so changed it to the POSIX [[:space:]] character class. This should be effective on many more systems. check-in: b5e424045e user: tangent tags: trunk | |
03:35 | Got the build of os8-v3f for TD8E DECtape working again. Root cause: I still don't understand the BUILD command loop well enough, and I wrote it! I added a couple more special cases so now everything, including the TD8E build works. Clearer code will come when the pexpect loop is turned right way round. Couple things: Building the v3f tu56 images for BOTH TC08 and TD8E are now enabled by default. WARNING: If the TD8E build blows out it leaves the v3d.rk05 system pack with td8e devices enabled instead of tc08. The new script, v3d-reset-tc08.os8 fixes this. QUESTION: Do we make this situation more bullet proof by: Creating a copy of v3d.rk05 when we build for TD8E? or Building Unconditional cleanup code into os8-run for on-error, do such and such to clean up? Actually, I could probably modify the v3d-dist-rk05.os8 script to put both the TD8EA and TC08 drivers in the image of BUILD.SV, if there is room. Maybe I'll just do that. check-in: b24aa7b9d7 user: poetnerd tags: os8-v3f-extensions | |
01:30 | Add dependency on patches. Note that this depends on ALL .patch8 file regardless of whether or not we actually use them. A finer grained dependency could be done in the future. check-in: b9ceacad42 user: poetnerd tags: os8-v3f-extensions | |
01:28 | Add two more files to make clean action: lib/pidp8i/dirs.py lib/pidp8i/ips.py check-in: 8a974ca3b9 user: poetnerd tags: os8-v3f-extensions | |
01:24 | Further cleanup of Makefile.in: Further purging of "mkos8" methods and concepts: 1. MKOS8_OPTS->OS8_OPTS 2. Where mkos8 became os8-run rename files, directories, scripts and dependencies appropriately. 3. Eliminate 'mkos8' install dir and ctags. 4. Scripts named MKOS8_* now have names more related to their current function under os8-run, and may have been further changed to reflect our v3d/v3f naming and simplification. 5. make clean eliminated the mkos8 directory. 6. make targets for use by test-mkos8 updated with new names, but really needs to be redone now that patching is unconditional. check-in: d6f23aaeda user: poetnerd tags: os8-v3f-extensions | |
01:04 | Testing revealed: missing line in auto.def, and I forgot to tell Fossil that I'd shifted os8-cp to os8-cp.in. THIS should work. check-in: aef6b627f0 user: poetnerd tags: os8-v3f-extensions | |
2018-09-29
| ||
23:48 | Having gotten bit by os8-cp having a hard-coded default boot disk, I decided to use auto.def and parameterize it on @OS8_BOOT_DISK@ check-in: de864ed5b5 user: poetnerd tags: os8-v3f-extensions | |
21:06 | Make patching unconditional. Amend apperopriate documents to no longer talk about a --disable-os8-patches option. Make the text file that names the patches conform to current filename conventions. check-in: a2454ca487 user: poetnerd tags: os8-v3f-extensions | |
20:41 | Adopted new filename conventions: .mkos8 -> .os8 underscores to dashes test scripts end in -test instead of beginning with it Shortened names. Fixed up dependencies, including broken one on newly renamed v3f-*.tu56. check-in: 55e34d0b34 user: poetnerd tags: os8-v3f-extensions | |
18:02 | I had not done rigorous enough testing. Here is better test case, corrected code, and elimination of the old fancier test code. check-in: aa9df2a6e8 user: poetnerd tags: os8-v3f-extensions | |
17:33 | Simplified version test. Warren justified "just test for version X or above" by showing allowing richer matches just made it easy for people to leaving incompatibilities in place. Changed name of the tester script to replace underscore with dash, say "version" first, and most importantly to adopt a new convertion: ".mkos8" scripts become ".os8". check-in: 1fcde938d6 user: poetnerd tags: os8-v3f-extensions | |
01:58 | Change os8-run mount option "preserve" to delimit the version number with a dash instead of an underscore. check-in: 4f3c5b4d6e user: poetnerd tags: os8-v3f-extensions | |
01:32 | checkin cd80254374 was incomplete: auto.def created lib/mkos8 to host generated python files that are now kept in lib/pidp8, so we delete that line. Makefile.in still had the old MKOS8 python file list so 'make install' was doing the wrong thing. TODO Review MKOS8_INFILES and decide if more files, such as os8script.py should be there. check-in: 14a799a875 user: poetnerd tags: os8-v3f-extensions | |
2018-09-15
| ||
05:44 | Merged ma-mb-pause-fixes branch following verification of fix [6b7d74dc34e] by poetnerd. check-in: b159bee47f user: tangent tags: trunk | |
05:41 | Merged ma-mb-pause-fixes branch following verification of fix [6b7d74dc34e] by poetnerd. Closed-Leaf check-in: 6984de366a user: tangent tags: ma-mb-pause-fixes | |
2018-09-09
| ||
19:00 | Ian Schofield sent a second patch via private email claiming to have solved the MA/MB value problems in pause mode. This checkin is loosely based on that patch. It needs testing: thus the branch. check-in: 78642e72ce user: tangent tags: ma-mb-pause-fixes | |
2018-08-30
| ||
01:04 | Fixed a bug in the handling of the OSR instruction which can cause L to be set if the next GPIO pin up from those used by the SR lines happens to be set when you issue that instruction. This one goes back to v20151215! check-in: ffb387c4eb user: tangent tags: trunk | |
2018-08-12
| ||
06:16 | Added email alert signup and such info to HACKERS.md check-in: 7ab70d985c user: tangent tags: trunk | |
01:09 | Added Fossil forum stuff to HACKERS.md check-in: dc433058ce user: tangent tags: trunk | |
2018-08-07
| ||
10:46 | Fixed a broken link in doc/os8-run.md. check-in: 16c2b6f88a user: tangent tags: os8-v3f-extensions | |
2018-07-30
| ||
03:49 | Removed a redundant command in "make mediainstall" for the *.mkos8 scripts. check-in: 3850186b5d user: tangent tags: os8-v3f-extensions | |
2018-07-29
| ||
21:13 | Version detection code implemented. test_version.mkos8 updated. It seems to work for the cases I could think of. check-in: 43311b0e87 user: poetnerd tags: os8-v3f-extensions | |
20:11 | Added a print command. This, together with exit will be useful when version actions are enabled. check-in: ba11dee8b4 user: poetnerd tags: os8-v3f-extensions | |
19:56 | Add "exit" command that interfaces to python sys.exit() procedure. Enables immediate script termination and optional signaling of status, and also optional print of a string. check-in: 17fb06b45f user: poetnerd tags: os8-v3f-extensions | |
19:54 | Test script as we work through implementing version conditionals. check-in: aec3815e47 user: poetnerd tags: os8-v3f-extensions | |
2018-07-28
| ||
12:54 | Reduced the "Applying patch..." output to a single line to reduce verbosity in normal builds. check-in: 220dc69120 user: tangent tags: os8-v3f-extensions | |
2018-07-27
| ||
02:15 | I had habituated a misunderstanding of python regular expression syntax. Consequently I kept using '?' when I needed to use '*'. Particularly in allowing whitespace. This change corrects those regular expressions. check-in: cde469f6f9 user: poetnerd tags: os8-v3f-extensions | |
2018-07-25
| ||
01:58 | Silenced verbosity by default (again). When I went to the simpler parser, I forgot that I'd enabled VERBOSE by default. This should quiet things down. check-in: 7c305890df user: poetnerd tags: os8-v3f-extensions | |
2018-07-24
| ||
19:55 | Merged trunk changes in, in preparation for merging this branch down to trunk. check-in: 834dd5121b user: tangent tags: os8-v3f-extensions | |
19:19 | Renamed $mkos8_opts and obj/mkos8.opts in auto.def to $os8_opts and obj/os8.opts, respectively. check-in: cd80254374 user: tangent tags: os8-v3f-extensions | |
19:11 | Moved the mkos8.opts Python module to pidp8i/os8opts. That left the mkos8 namespace empty, so I removed that. Also removed the old_parse_args() function in os8-run while in there: dead code. check-in: 91c681d0dd user: tangent tags: os8-v3f-extensions | |
2018-07-23
| ||
03:34 | Remove the bespoke --enable-<foo> and --disable-<foo> arguments. Use the generic --enable and --disable arguments. Note that the usage message still informs about all known enable/disable args created in lib/mkos8/opts.py by auto.defs. However the usage message is clearer now and the arg parsing is simpler now. Note we delete the use of the fancy python argparse library. Nice as it was, we don't need it. The clearer usage message is also in the os8-run.md doc. check-in: 0f1c58479b user: poetnerd tags: os8-v3f-extensions | |
03:14 | Bug fix: Enable/Disable args for fortran should have dash, not underscore in their names to work properly. check-in: e24681d721 user: poetnerd tags: os8-v3f-extensions | |
03:12 | Bug fix: If we build with config option --os8-minimal, we won't build the os8v3d-patched.rk05 image. We only build os8-v3f from that image. --os8-minimal therefore should not attempt to build os8-v3f. check-in: e14bed0e60 user: poetnerd tags: os8-v3f-extensions | |
02:59 | Bug-fix: When we use config option --os8-minimal the system image os8v3d-patched.rk05 does not exist. Creating the source packs does not require a patched system anyway, so we use os8v3d-bin.rk05. check-in: afabf0c0e7 user: poetnerd tags: os8-v3f-extensions | |
02:57 | Bug fix: rename of os8_pip_into to os8_pip_to wasn't propagated to this program that used the routine. check-in: 623cab985e user: poetnerd tags: os8-v3f-extensions | |
2018-07-22
| ||
22:22 | Improve pal8 command: 1. Allow whitespace between arguments. 2. Fix a bug that caused the (apparently untested) 3 arg form not to work at all. 3. Clarify in the documentation the rationale for the command, and warn of its possible removal. TODO: Possibly expand the command to pass in arguments. check-in: c67efce19c user: poetnerd tags: os8-v3f-extensions | |
20:34 | Forgot to update the TODO to remove the order to implement restart. It's now implemented. check-in: 1a7abaa401 user: poetnerd tags: os8-v3f-extensions | |
20:16 | Added restart command and test_restart.mkos8 to test it. Note that test_restart.mkos8 assumes existence of test_copy.tu56 that is made by test_copy.mkos8, and system_v3f_tc08.tu56 made by os8-v3f-tape.mkos8. check-in: a86f9935a6 user: poetnerd tags: os8-v3f-extensions | |
19:31 | Removal of multi-word commands from os8-run #6: convert copy_to and copy_from to cpto and cpfrom respectively. This completes the project to eliminate multi-word commands from os8-run. check-in: 547a96be48 user: poetnerd tags: os8-v3f-extensions | |
19:06 | Added more clarification around case sensitivity throughout. (Also pruned a note about multi-word mount options that is no longer relevant.) check-in: d4c9e2f654 user: poetnerd tags: os8-v3f-extensions | |
2018-07-21
| ||
04:16 | Improved documentation of mount/umount: 1. Explain the rationale for using the POSIX commands. 2. Clarify how the "new" and "preserve" options behave DIFFERENTLY with regards to file preservation. 3. Add an example of use of the "new" option. 4. Update the mount examples to use the $foo path expansions. check-in: f30b93a62d user: poetnerd tags: os8-v3f-extensions | |
03:19 | Minor cleanups: 1. The more correct term for how we build is "from distribution media" rather than "source media" because we don't build from source, and because "distribution media" is the correct term used for our baseline truth. 2. Cleaned up broken formatting in the pal8 section's bulleted list, and in the begin/end keyword table. 3. Added a comma in the boot section cuz it called out for one. :-) check-in: 6f606611aa user: poetnerd tags: os8-v3f-extensions | |
03:15 | Renamed copy_into and pip_into to copy_to and pip_to respectively. This is because I decided that copy "to/from" made more intuitive sense than copy "into/from". check-in: 08108fae33 user: poetnerd tags: os8-v3f-extensions | |
2018-06-29
| ||
04:58 | More James L-W serial mod GPIO fixes by Dylan McNamee. check-in: 6f67aed364 user: tangent tags: trunk | |
04:54 | Changed GPIO pin mappings for the James L-W serial mod. Also diagnosed by Dylan McNamee. check-in: 538529c44e user: tangent tags: trunk | |
04:51 | The James L-W serial mod GPIO setup had two lines swapped relative to the original patch. Fix diagnosed by Dylan McNamee on the mailing list: https://groups.google.com/d/msg/pidp-8/tYGYJCSwV-Q/sJmESoAPBgAJ check-in: 59b1d29fcc user: tangent tags: trunk | |
2018-06-17
| ||
19:33 | The configure script now errors out if you try to pass both --serial-mod and --alt-serial mod. Documented it. check-in: cfe91ae914 user: tangent tags: trunk | |
2018-06-10
| ||
02:04 | Cosmetic change: Shorten comment about os8 errors because it is now more generally used. check-in: cdce8dcc87 user: poetnerd tags: os8-v3f-extensions | |
2018-06-07
| ||
04:07 | Fix formatting mistake check-in: 75954717a3 user: poetnerd tags: os8-v3f-extensions | |
04:05 | Removal of multi-word commands from os8-run #5: "read-only" becomes either "ro" or "readonly". check-in: 41ec8eeaef user: poetnerd tags: os8-v3f-extensions | |
03:55 | Removal of multi-word commands from os8-run #4: "must-exist" becomes "required." Lots of scripts touched but it was worth it, I think. check-in: fb4201a2c5 user: poetnerd tags: os8-v3f-extensions | |
03:42 | Removal of multi-word commands from os8-run #3: "copy_scratch" becomes "scratch". The meaning is probably clear enough without "copy". check-in: 6a2f3bb5fc user: poetnerd tags: os8-v3f-extensions | |
03:28 | Removal of multi-word commands from os8-run #2: "not-disabled" becomes "default". Not only does this make the parser cleaner and simpler, the description of what is being done becomes simpler. This is a GOOD change. check-in: 762a5798db user: poetnerd tags: os8-v3f-extensions | |
03:03 | Eliminating multi-word hyphenated commands from os8-run #1: "no-overwrite" becomes "preserve". check-in: ac83408912 user: poetnerd tags: os8-v3f-extensions | |
2018-06-02
| ||
18:55 | Tiny cleanup: Changed variable "MKOS8" to "OS8RUN". Removed mkos8 program because it has been subsumed by os8-run. Further cleanups of the simh.py and os8script.py libraries will not be backwards compatible with the use made by mkos8. check-in: 61529b46b6 user: poetnerd tags: os8-v3f-extensions | |
2018-05-28
| ||
22:55 | Taught Makefile.in how to 'make bin/system_v3f_tc08.tu56' Although the v3f stuff is built by default, this tape is not. TODO: 1. Test 'make system_v3f_td12k.tu5' 2. Create auto.defs options for this. check-in: 1858920a4a user: poetnerd tags: os8-v3f-extensions | |
22:27 | Use a variable for the OS/8 Scripts directory. check-in: 63ed426836 user: poetnerd tags: os8-v3f-extensions | |
22:23 | Now assemble the v3f sources. check-in: 321e9254cc user: poetnerd tags: os8-v3f-extensions | |
22:05 | Added code to Makefile.in to create the os8 v3f build rk05 image. TODO: Figure out how to make the image in an object directory instead of the src directory. Problem is with os8-cp and the manifest file actions.txt assuming current working directory. check-in: 0e628cd6fc user: poetnerd tags: os8-v3f-extensions | |
20:58 | Two short test scripts for testing the copy and patch commands. Note that they have not been converted to the new script location and use of directory expansion. Nevertheless they might be useful to someone. check-in: b118d2fbe5 user: poetnerd tags: os8-v3f-extensions | |
20:49 | Clean up mess made on first attempt to move scripts to new home. Includes a bug fix to Makefile.in where I missed a backslash, and a bug fix to simh.py which would blow out if your branch has upper case characters in it. check-in: 303cb7f12b user: poetnerd tags: os8-v3f-extensions | |
2018-05-25
| ||
02:49 | Snapshot: Minimum Makefile.in changes needed to replace execution of mkos8 with execution of os8-run. TODO: 1. Put in the dependencies on the new python modules. 2. rip out mkos8. 3. Confirm this all works for someone else. 4. CLEANUPS. check-in: c610c24d5d user: poetnerd tags: os8-v3f-extensions | |
01:47 | The done command was a mistake and now is gone. I realized it was a mistake when, we executed it in an included script, the scratch files were removed. Rather than creating a per-script scratch list, I moved the final cleanup to the main os8-run code and deleted the done command. check-in: 8b66b4f06b user: poetnerd tags: os8-v3f-extensions | |
00:36 | In cutting over to using os8-run I realized I needed a mount option that lets the script create a new empty image file and saves a pre-existing version. The "new" option to mount is now implemented. check-in: 26c846c5ce user: poetnerd tags: os8-v3f-extensions | |
2018-05-22
| ||
23:36 | Claimed case insensitivity in os8-run commands in os8-run.md. TODO: verify. check-in: 887345ef35 user: tangent tags: os8-v3f-extensions | |
23:32 | Moved the paragraph about the fatal error handling policy up from the discussion of "include" in os8-run.md up to the "Conventions" section, then added a link back down into the command reference. check-in: 2c68a31006 user: tangent tags: os8-v3f-extensions | |
23:30 | More assorted improvements to os8-run.md check-in: 22b3649806 user: tangent tags: os8-v3f-extensions | |
23:08 | Expanded the discussion of Pexpect in os8-run.md check-in: 046602545d user: tangent tags: os8-v3f-extensions | |
22:58 | More improvements to the "History and Motivation" section of os8-run.md. check-in: 6f0c5473ca user: tangent tags: os8-v3f-extensions | |
22:40 | Fixed a bit of lysdexia, and removed a thousands separator comma: this document may be read by non-USian readers. check-in: f27a09ad1c user: tangent tags: os8-v3f-extensions | |
22:37 | Expanded the new "History and Motivation" section of the os8-run.md file. check-in: 8382aec59c user: tangent tags: os8-v3f-extensions | |
22:27 | Added "Motivation and History" section to the top of doc/os8-run.md, and did some other minor improvements to the rest of the document. check-in: ec8ff7753c user: tangent tags: os8-v3f-extensions | |
22:23 | Style pass on src/os8/v3f/README.md check-in: c36863cfe0 user: tangent tags: os8-v3f-extensions | |
2018-05-21
| ||
02:31 | Teach call_pal8 to detect failure of PAL-8 to start. TODO: Re-do ALL the calls to os8_send_cmd to shift from looking for a command prompt before beginning a command and then maybe testing the command result (which is currently implemented with os8_send_cmd (prompt_string, command) ) to: Running a command and then testing the result. Yes, this means that pretty much the entirety of the command execution and result testing has been implemented in the wrong order. check-in: 6ce374d437 user: poetnerd tags: os8-v3f-extensions | |
02:26 | Teach copy_from and copy_into how to recognize when PIP failed to start. Tweak err_test.mkos8 to test that this is working. check-in: fc92e8017b user: poetnerd tags: os8-v3f-extensions | |
02:20 | Document how the POSIX path expansions are supposed to work. check-in: e2cdb32a96 user: poetnerd tags: os8-v3f-extensions | |
2018-05-18
| ||
05:01 | Added path expansion to copy_into and copy_from. Fixed two related bugs: 1. path expand needed to use os.path.join to deal with how dirs.py ends some dirs with a slash, and some not. 2. copy_into and copy_from needed to check to see if the system was booted. (I'd forgotten this requirement, didn't boot the dectape, and could not understand why things were failing.) TODO: Add catching of "PIP.SV NOT FOUND" in copy_into and copy_from. check-in: e927586fb2 user: poetnerd tags: os8-v3f-extensions | |
2018-05-16
| ||
13:28 | Simplified [05371feb7c], replacing the redundant map of module variable names to their values with a call to getattr() on the module and variable name in the single place that used this new facility. check-in: 2475d3ad2c user: tangent tags: os8-v3f-extensions | |
05:00 | Added directory expansion for Anchor directores found in dirs.py.in. This necessitated offering them up in an associative array, as well as directly in dirs.<varname>. TODO: Document this. Add $home. Update .mkos8 files to use these. check-in: 05371feb7c user: poetnerd tags: os8-v3f-extensions | |
2018-04-29
| ||
03:58 | Ok. Bed time. I'm making stupid mistakes. THIS TIME I fixed the example. check-in: a0393dd43d user: poetnerd tags: os8-v3f-extensions | |
03:55 | Fixed example to use cdprog instead of absldr. (I thought I'd fixed this one, but it was another example I fixed.) check-in: c317b8d4b2 user: poetnerd tags: os8-v3f-extensions | |
03:31 | Apparently I never tested the pal8 command when I objectified it. Now it's fixed and working. The scripts that used "fotp" and "absldr" are now tested working. check-in: 04acd3fc64 user: poetnerd tags: os8-v3f-extensions | |
03:13 | Rename "os8_cd" to "cdprog". Change all occurrances of "fotp" and "absldr" to use "cdprog". TODO: Test. check-in: b2f05b95df user: poetnerd tags: os8-v3f-extensions | |
00:44 | Work around a problem with markup: bullet list before a code block formatted both incorrectly. Moving the bullet list after seems to work better. check-in: f552138be1 user: poetnerd tags: os8-v3f-extensions | |
2018-04-27
| ||
04:32 | Snapshot: Switching begin absldr and fotp over to os8_cd. Code is there and updated doc with examples is in place. TODO: Update uses of the old "begin fotp" and "begin absldr" constructs to use "begin os8_cd" and then rip out the fotp and absldr sub commands. check-in: fc88854a6a user: poetnerd tags: os8-v3f-extensions | |
2018-04-22
| ||
04:06 | Moved Execution Context section up, and renamed "Enablement" Context to "Conditional Execution." check-in: 653f29de12 user: poetnerd tags: os8-v3f-extensions | |
04:00 | Add first illustrative example. check-in: dd46ecb99d user: poetnerd tags: os8-v3f-extensions | |
03:42 | Clearer overview of mount options. check-in: 4feae418ed user: poetnerd tags: os8-v3f-extensions | |
03:13 | mount command options can have either dash or underscore as separator. check-in: f62671242c user: poetnerd tags: os8-v3f-extensions | |
2018-04-15
| ||
19:37 | Teeny bit of format cleanup. check-in: 1a21d6840b user: poetnerd tags: os8-v3f-extensions | |
19:33 | All commands have basic documentation. Next Steps: Review and clean up basic documentation, then add in examples. check-in: 6b0600b73e user: poetnerd tags: os8-v3f-extensions | |
2018-04-14
| ||
23:47 | More content for commands. Added mention of as yet, unimplemented restart command. Commands still lacking basic documentation: begin/end, enable/disable, patch, configure. check-in: e5bb205204 user: poetnerd tags: os8-v3f-extensions | |
03:53 | Additional prose. Some reformatting, and re-casting of sentences for greater clarity. check-in: dd808ad53c user: poetnerd tags: os8-v3f-extensions | |
2018-04-13
| ||
04:42 | Properly cross links command sections. TODO: 1. Finish basic command descriptions with usage. 2. EXAMPLES EXAMPLES EXAMPLES check-in: d6d55f8ecd user: poetnerd tags: os8-v3f-extensions | |
04:02 | And another try. check-in: 51ea54ab4c user: poetnerd tags: os8-v3f-extensions | |
03:13 | Try a different way. check-in: 0ae10037ae user: poetnerd tags: os8-v3f-extensions | |
03:06 | Test out toc linking. check-in: d63dc72d3e user: poetnerd tags: os8-v3f-extensions | |
2018-04-11
| ||
06:08 | Added PiDP Keyswitch state diagram and schematic SVG. check-in: abb86b9d77 user: tangent tags: trunk | |
2018-04-10
| ||
01:56 | Updated SIMH again. No particular reason, just syncing. check-in: ff2f918885 user: tangent tags: trunk | |
2018-04-09
| ||
16:08 | The pidp8i script now uppercases its first argument in case it's being run via an all-caps terminal. check-in: 0389ea3108 user: tangent tags: trunk | |
01:31 | one more bit of format tweaking. check-in: 16680d5958 user: poetnerd tags: os8-v3f-extensions | |
01:29 | Fix up a few niggly typos and formats I don't like. check-in: 8ebf033bf7 user: poetnerd tags: os8-v3f-extensions | |
01:19 | Added a -vv (very verbose) flag that includes the SIMH expect output in the runtime output. I find that having the separate log file actually works better most of the time. check-in: e7224c448e user: poetnerd tags: os8-v3f-extensions | |
01:06 | Updated os8-run.md to reflect this weekend's work to make the script runner easier to use. check-in: 5d9fddd5a0 user: poetnerd tags: os8-v3f-extensions | |
00:44 | The script commands that require the OS/8 context now all check to see we have booted, and if necessary call resume_command to resume OS/8. Use of the resume command in scripts is optional. It's commented out in the two scripts being checked in now. check-in: c0c452a0e6 user: poetnerd tags: os8-v3f-extensions | |
2018-04-08
| ||
18:56 | Validated bin and patch mkos8 files. Also found a couple places where line number reports were not being made. check-in: 1d249425e6 user: poetnerd tags: os8-v3f-extensions | |
18:41 | Apparently when I got os8v3d-bin.mkos8 working, I broke the tco8.mkos8 script. That script is for creating an os8-v3f dectape, so I renamed it and got it working again. TODO: Get os8v3d-bin.mkos8 validated. When I added resume, I turned off the simh command. So any scripts that used that construct are broken. check-in: a7c2b63adf user: poetnerd tags: os8-v3f-extensions | |
16:37 | Electric python mode in Emacs sometimes sucks. Checking in WORKING silence of options report. check-in: 29c0bdf35d user: poetnerd tags: os8-v3f-extensions | |
16:19 | Silence superfluous print of enabled/disabled options. check-in: 30fa646feb user: poetnerd tags: os8-v3f-extensions | |
16:12 | Functionally complete "Give script line number in verbose and error output." TODO: 1. Test include files to make sure stack works. 2. Add line number output to the patch runner routines. check-in: 3c8123c3df user: poetnerd tags: os8-v3f-extensions | |
06:59 | Snapshot: Added line number management so that all errors give the line number of the script file. (We keep a stack of line numbers corresponding to the nesting of included files.) Almost done, but it's hours past bed time! check-in: 9b8e035e77 user: poetnerd tags: os8-v3f-extensions | |
05:44 | Previous commit was an error. I thought I'd completed the commit and then I addeed a bunch of code on an unrelated issue. THIS commit adds the boot checking AND NOTHING ELSE. check-in: 4c351aa5b2 user: poetnerd tags: os8-v3f-extensions | |
05:28 | boot command checks to see if the device to be booted has something attached. If not, the script dies. Commands that run in an OS/8 context check the state of "booted" and if we have not been booted, the script dies. check-in: e9baca9803 user: poetnerd tags: os8-v3f-extensions | |
01:59 | Added return status of "success", "fail", or "die" to all script commands. fail doesn't do much now. This is really about the die status. Also return values from routines called in simh.py are inconsistently set (rarely at all). And the return values are currently never tested. check-in: ccf3cc63e3 user: poetnerd tags: os8-v3f-extensions | |
01:41 | Use :os8_send_ctrl to send ^C. Slightly cleaner. check-in: 5d248e2f70 user: poetnerd tags: os8-v3f-extensions | |
2018-04-07
| ||
23:41 | I thought I tested this way of implementing resume, but apparently not. This fixes the new resume to work the way the previous check-in should have worked. check-in: 24125be341 user: poetnerd tags: os8-v3f-extensions | |
22:51 | Further exploration of what it means to resume OS/8. Comments in simh.py explain the problem: We need to provoke a prompt to re-synchronize with python expect after resuming the stuff that was running under SIMH. There is now a resume command that does the minimum, but it's not as minimal as I would like: It sends ^C, which forces a return to the keyboard monitor if you happen to use it in the following situation: Start an OS/8 program. Escape to SIMH Resume. The ^C will kill the OS/8 program and send you back to the keyboard monitor. This is less disruptive than go 7600, but still not ideal. Just sending newline, or multiple newlines, or erase character or kill line to the OS/8 keyboard monitor after issuing the continue command in SIMH does not work to give you a command prompt. The next revision, I think will touch many routines to do the following: Create a sense of when to abort the whole script. Allow the script runner to keep track of OS/8 context and either blow out when you try to issue an OS/8 command before having booted an image, or to resume OS/8 for you when you use simh commands. check-in: b1e7201347 user: poetnerd tags: os8-v3f-extensions | |
2018-04-06
| ||
17:27 | Merged SIMH updates in, primarily to get a fix to serial console handling, fixing upstream issue #545. check-in: ff2a299614 user: tangent tags: trunk | |
2018-04-05
| ||
05:43 | Snapshot. More text added. check-in: f632a07d03 user: poetnerd tags: os8-v3f-extensions | |
04:52 | More attempts to improve formatting. check-in: 635b4d4896 user: poetnerd tags: os8-v3f-extensions | |
04:37 | Attempt to fix table formatting. check-in: 77d79a6b13 user: poetnerd tags: os8-v3f-extensions | |
03:26 | Update with more text. check-in: 60d99f2f04 user: poetnerd tags: os8-v3f-extensions | |
2018-04-02
| ||
04:52 | Fix a few eggergious typos. check-in: 96a25e81a3 user: poetnerd tags: os8-v3f-extensions | |
04:44 | Fuller first draft. Snapshot. Still more prose to add, but it's bed time. check-in: 083fcc5efe user: poetnerd tags: os8-v3f-extensions | |
00:34 | Markdown tweaks check-in: 9501dab8d9 user: tangent tags: os8-v3f-extensions | |
00:27 | dont/wont/cant fixes in comments. NFC. check-in: ca02351d1a user: tangent tags: os8-v3f-extensions | |
00:25 | URL fixes check-in: 01adc7e518 user: tangent tags: os8-v3f-extensions | |
2018-04-01
| ||
23:22 | Tweaks to the Autosetup discussion in HACKERS.md check-in: f83a90486c user: tangent tags: trunk | |
23:18 | Attempt to fix formatting problems. check-in: 64143f0747 user: poetnerd tags: os8-v3f-extensions | |
23:15 | Added more info about branching and special branches to the HACKERS.md file. check-in: 78b5fdda99 user: tangent tags: trunk | |
23:12 | Document os8-run command and its scripting language. check-in: 76627f0f9b user: poetnerd tags: os8-v3f-extensions | |
22:49 | More HACKERS.md tweaks check-in: 98a2522ffd user: tangent tags: trunk | |
22:33 | Refine two different options parsing strategies: In current strategy, be clearer on the effect of --enable and --disable args. In an alternate strategy, --enable-foo and --disable-foo become two word arguments. This can be done without changing the actions of auto.def, but DOES require changes to how configure would parse command line arguments. check-in: 1dc45457c5 user: poetnerd tags: os8-v3f-extensions | |
22:32 | Several minor improvements to HACKERS.md check-in: 3c19d18b26 user: tangent tags: trunk | |
03:58 | Fixed argument parsing in mkos8 that I broke when I was experimenting with and evolving the ideas of how to pass in new options. Now instead of -o --option, mkos8 responds to --enable and --disable To set open ended enablement and disablement options that are not defined elsewhere. check-in: 025010d6f3 user: poetnerd tags: os8-v3f-extensions | |
00:01 | os8-run now does patching and with os8v3d-patch.mkos8 reproduces full functionality of mkos8 patch. Additional command, "copy" added to take the os8v3d-bin.rk05 image and copy it into a new file os8-v3d-patched.rk05. The latter file is then mounted and patched, just like mkos8 does it. check-in: 3f562abc9c user: poetnerd tags: os8-v3f-extensions | |
2018-03-31
| ||
23:43 | Changed action on verbose flag. Now simh output goes to the log file UNLESS verbose is set. The script file list and options don't show UNLESS verbose is set. However each script run is displayed even if verbose is not set. check-in: 3dc1945a77 user: poetnerd tags: os8-v3f-extensions | |
23:31 | Cosmetic: Clean up formatting of code in run_command. Add documentation of current commands. check-in: 2ae5294065 user: poetnerd tags: os8-v3f-extensions | |
23:26 | Bugfix: when error actually occurs we get a type clash. Need to convert the error object returned to a string. check-in: 3bfccb1c6e user: poetnerd tags: os8-v3f-extensions | |
23:23 | Bugfix: pal8 command was using "s" instead of "self". check-in: cdcf9f000c user: poetnerd tags: os8-v3f-extensions | |
2018-03-28
| ||
22:46 | Back out upstream SIMH change 3f7f926 in an attempt to fix a regression in "SET CONSOLE SERIAL". Closed-Leaf check-in: 667bc75355 user: tangent tags: simh-3f7f926-backout | |
2018-03-27
| ||
23:17 | Small clarity tweak to the HACKERS.md section "Submitting Patches." check-in: 615fcb1f25 user: tangent tags: trunk | |
2018-03-26
| ||
04:35 | New option to mount, "copy_scratch" that creates a writeable scratch copy of what is to be mounted, which gets deleted when done. This results in a version of os8v3d-bin.mkos8 that completely subsumes all the functionality of mkos8 bin. Next up: Patches, and Default directory path. check-in: 1ae5d8a262 user: poetnerd tags: os8-v3f-extensions | |
2018-03-24
| ||
03:55 | The script runner now has the "Set INIT message" functionality: 1. We don't create INIT.CM with the editor. Instead we copy it in just as we do with INIT.TX. 2. os8script.py now has script interfaces to the simh.py routines: copy_into -> os8_pip_into copy_from -> os8_pip_from 3. os8v3d-bin.mkos8 is updated. Booting the resulting rk05 image DOES run the INIT.CM script properly. TODO: 1. Figure out an interface in the script runner for the functionality of: "create a bootable dectape copy from the read-only distribution tape." 2. Implement the believed-to-be-straightforward exercise of enabling patches. 3. Figure out an interface/convention for the root of relative paths when the script runner runs. (dirs.os8mi equivalent) 4. Come to closure on the design for package management/options. check-in: cd285d1672 user: poetnerd tags: os8-v3f-extensions | |
03:39 | Bugfix: os8_pip_from was parsing the os8 name with "index" when it needed to be "find". (Index returns a value error, and find returns -1 if substring not found. I'd transposed them.) check-in: 0ebe98bd1c user: poetnerd tags: os8-v3f-extensions | |
03:08 | Bug fix: We never before tested calling os8_pip_from and os8_pip_into with a null option argument. The code didn't actually work because we were treating option later as a string. Now if the arg is not present, or None we set it to the empty string. check-in: 8bbca41e87 user: poetnerd tags: os8-v3f-extensions | |
2018-03-21
| ||
10:33 | Defining SIM_GIT_COMMIT_TIME when building the simulator to match a recent upstream SIMH change, which allows the "SHOW VERSION" command to include a commit timestamp. check-in: 901695a423 user: tangent tags: trunk | |
10:00 | Merged in upstream SIMH changes. No functional change noted for PDP-8, but Mark Pizzolato wants us to track a recent change to "SHOW VERSION", which we'll do in a subsequent commit. check-in: 5d0ee5fb5b user: tangent tags: trunk | |
2018-03-20
| ||
20:58 | Checkin [b3e6e42a77] caused the simulator to crash on exit on non-Pi platforms since no PiDP-8/I panel is present, causing the graceful shutdown to fail. This is harmless most of the time, since the simulator is dying anyway, but it was causing pexpect to choke during the mkos8 process when run on non-Pi platforms. check-in: 4891e80bbc user: tangent tags: trunk | |
04:05 | The reorganization of the src directory so that no *.c is at the top level of src broke "Incandescent Thought". We now look for deeper.c in src/misc, not src. check-in: c465ea6fbb user: tangent tags: trunk | |
2018-03-17
| ||
23:06 | Release process tweak for the Fossil binary step, now that we're no longer building Fossil from source in BOSI any more. check-in: 374be56f82 user: tangent tags: trunk | |
21:32 | The simulator now turns off all front panel LEDs before exiting so that a "pidp8i stop" or "Ctrl-E, q" doesn't leave the last CPU state burning brightly on the front panel. Closes [700328105]. check-in: b3e6e42a77 user: tangent tags: trunk | |
21:15 | Changed the signaling and timing of "pidp8i stop" to be more reliable about quickly stopping, so we don't need to escalate to a kill -9. The escalation still exists in case the simulator is recalcitrant, but an upcoming change will require a graceful shutdown. check-in: 084fafb781 user: tangent tags: trunk | |
2018-03-13
| ||
10:32 | Backed out Ian Schofield's attempt to fix the MB display, [5597b069b2]. Going on the principle of charity here, I assume that change isn't entirely wrong, but it has the side effect of breaking MB display while in "stopped" state, where people are expecting to see the result of EXAM switch presses here, a documented behavior of the PDP-8/I. See p.93 in the 1967 edition of the Small Computer Handbook and page RIM-3 (PDF page 35) in the PDP-8 System User's Guide from 1969. These two bracket the introduction of the PDP-8/I. check-in: 1fcd751a5f user: tangent tags: trunk | |
2018-03-12
| ||
02:28 | Script reproduces all but INIT.TX and INIT.CM from mkos8 bin. PONDERING: Currently doing "simh go 7600" and "simh det". Should I instead introduce "resume" for "go 7600" and re-introduce unmount? check-in: 2d3a227ab7 user: poetnerd tags: os8-v3f-extensions | |
2018-03-11
| ||
23:24 | Silence one bit of debug noise no longer needed. check-in: 040fff8714 user: poetnerd tags: os8-v3f-extensions | |
12:27 | Merged trunk changes in Closed-Leaf check-in: bc32a70eed user: tangent tags: ac-mb-fixes | |
02:53 | Snapshot: Nearly complete script to reproduce mkos8 bin in a script. Untested. TODO: 1. Test 2. Add INIT.CM stuff. 3. Add SQISH commands. check-in: 692d7edef3 user: poetnerd tags: os8-v3f-extensions | |
02:51 | Changes to build_subcomm: Detects all errors (but may not do anything about them just yet.) Now handles "WRITE ZERO DIRECT?" dialog. Builds a basic bootable tc08 dectape. Adds err_test.mkos8 to step through error handling. Found LOTS of places where handling would hang the script. I fixed those. TODO: Reproduce mkos8 bin in a script. check-in: 6abb3c86c2 user: poetnerd tags: os8-v3f-extensions | |
2018-03-10
| ||
06:04 | Recast the script command set to more closely align with how options were set in mkos8: Instead of "option" we have "enabled" and "not-disabled". Instead of "configure option" we have "enable". Instead of "unset_option" we have "disable". The command line "-o" and "--option" are now "--enable" and "--disable". os8-run makes a stab at using lib/mkos8/opt.py. I'm still not sure how this really should be done. check-in: a02f051f37 user: poetnerd tags: os8-v3f-extensions | |
2018-03-09
| ||
05:00 | SNAPSHOT: Beginnings of a script to build os8v3d-bin.rk05 Discovered that more work is needed in os8script.py to handle the dialog with the BUILD BOOT command: "WRITE ZERO DIRECT." Also the architecture for re-imagining copyins needs to be conceived. check-in: bec1348033 user: poetnerd tags: os8-v3f-extensions | |
04:40 | Script that duplicates the work done by "mkos8 src": bin/os8-run os8-v3d-src.mkos8 check-in: 150bd42598 user: poetnerd tags: os8-v3f-extensions | |
04:04 | Pulled the run script functionality into its own separate command called os8-run. Tested with the latest tc08.mkos8 check-in: 5094f41fa8 user: poetnerd tags: os8-v3f-extensions | |
04:03 | Apparently I never actually tested unset_option. Now It's working. tc08.mkos8 sets tc08 by default and unsets it if you specify td12k or tdrom on the command line. check-in: 02b01c97eb user: poetnerd tags: os8-v3f-extensions | |
2018-03-08
| ||
04:42 | Since we want to turn off options, we need to guarantee that options appear in the options_set only once. This required flattening the options list that comes from argparse. How to do that? stackoverflow is your friend... check-in: 55dc609201 user: poetnerd tags: os8-v3f-extensions | |
2018-03-07
| ||
04:36 | tc08.mkos8 now understand td8e as a common option to td12k and tdrom. Since we don't have a ROM config, we can't test tdrom, but the build of td12k with the common td8e stuff works. Still TODO: Further re-arrangement of mkos8 functionality. check-in: 50d5c66e31 user: poetnerd tags: os8-v3f-extensions | |
04:26 | Configure command tested in the tc08.mkos8 script. New set_foo_config interface replaces old change_from_to interfaces in simh. os8script and testing in mkos8 use them. check-in: c14d2e72ee user: poetnerd tags: os8-v3f-extensions | |
03:50 | Successful run of mkos8 head -o tc08 and mkos8 head -o td12k with the code for OS/8 scripting pulled out of mkos8 and put into lib/os8script.py Also a style pass was run on the names of things. Additional os8script methods have been added: configure_command which is an interface to the simh change commands and which allows on-the-fly setting of options. unset_option_command that allows unsetting of an option. I want the configure command so I can get rid of the "simh" command. I don't want to allow full scripting of simh. But I might be wrong here. I want to ability to set options inside scripts because the tdrom config is a variation on td12k, and I can set a common sub-option for the common bits now. TODO: test mkos8 system with the new library. TODO: Change the "change_" interface because we are repeating the describe code. We should "set" options rather than "change from x to y". The change interface requires fetching status twice, first to figure out what to do, and second, when calling the do_routines, to recheck inputs. TODO: Rename some "do_" methods in simh.py not to have the "do_" check-in: 0d3e4cce6c user: poetnerd tags: os8-v3f-extensions | |
2018-03-06
| ||
06:09 | Beginnings of spinning out the script runner stuff into its own class: os8script which contains a simh and the global state like the options list for running the os8 scripts. SNAPSHOT! DO NOT USE! check-in: 3e7d1ab258 user: poetnerd tags: os8-v3f-extensions | |
2018-03-04
| ||
03:14 | Added some comments to bin/teco-pi-demo explaining why we cannot make better use of class simh's new context switching abilities. check-in: f56e9b2e7d user: tangent tags: os8-v3f-extensions | |
03:13 | Added a few more SIMH context switching cases in class simh check-in: 952d7b233e user: tangent tags: os8-v3f-extensions | |
03:11 | Cleaner interface to show command: Do the split into a line array centrally. Make the show tape parsing orthogonal to rx and tti. check-in: 4b84f2a2ac user: poetnerd tags: os8-v3f-extensions | |
02:35 | If you call simh.os8_send_ctrl('e'), the object now marks itself as "in SIMH context". This supports legacy uses of the class where transitions had to be done manually. check-in: c507e7ba49 user: tangent tags: os8-v3f-extensions | |
02:30 | In two places, class simh was sending the same command to SIMH then calling parse_show_tti() on the result. Moved the command call into that function and renamed it get_tti(). check-in: fb6100a681 user: tangent tags: os8-v3f-extensions | |
02:11 | Comment and whitespace improvements to lib/simh.py check-in: 712ce17691 user: tangent tags: os8-v3f-extensions | |
01:40 | Simplified the check for SIMH commands that transition from SIMH context back to simulation context: it was listing all of the possibilities exhaustively, except only in lowercase. Neither is required: we can list only the first letter in uppercase, then slice the first letter off of the command and uppercase it before searching this list. This is both faster and more reliable. Also moved the related constants from per-instance to per-class. check-in: b54ebf922c user: tangent tags: os8-v3f-extensions | |
2018-03-03
| ||
23:33 | Added a describe_dev_config routine, and tried out cleaner approach to parsing _child.after. TODO: Update the existing code to use the cleaner approach. The testing routine tests everything now. check-in: 79b7a7bd9d user: poetnerd tags: os8-v3f-extensions | |
20:43 | Change between KSR and 7b implemented and tested. check-in: b6403b276e user: poetnerd tags: os8-v3f-extensions | |
20:12 | Corrected comment on parse_show_rx_dev check-in: b9e53704f7 user: poetnerd tags: os8-v3f-extensions | |
20:00 | Silence one bit of verbosity -- the rx detaches. check-in: 8f8cb98765 user: poetnerd tags: os8-v3f-extensions | |
19:59 | Change for rx01/rx02 is done. TODO: ksr/7bit change. Also: Ponder if this stuff is being too verbose. check-in: 0e4f9c3777 user: poetnerd tags: os8-v3f-extensions | |
18:42 | do_tape_change is fully fleshed out. mkos8 testing is the driver to test it. TODO: Repeat for RX01/RX02 and ksr/7bit check-in: 692b0368ee user: poetnerd tags: os8-v3f-extensions | |
06:22 | Snapshot: Beginnings of routines to change configs in simh Swapping td/dt DECtape devices; rx01/rx02 devices; ksr/7bit console. Currently just inventories what's attached to dt/td devices. TODO: Finish the swapping code: Detach what's attached and send the config change. Then fill in the stubs for RX and console device work. check-in: d2167af791 user: poetnerd tags: os8-v3f-extensions | |
04:27 | Cleaned up external use of simh_context. The housekeeping boiled down to three locations: 1. Initialize to simh. 2. back_to_cmd sets simh. 3. The clever part: in send_cmd, look to see if the command being executed enters the OS, and if so set context "os8". TODO: RE-test os8-cp and all legacy mkos8 commands to make sure I didn't break anything. Then remove the context commands. The rule now is: Returning to simh leaves you in the simh context until you issue a boot, continue, or go command. check-in: 7b0047d2cc user: poetnerd tags: os8-v3f-extensions | |
2018-03-02
| ||
05:22 | Ok, this is a bit gross. tc08.mkos8 now understands the td12k option, but it was a pain to get there. I had to create a simh command because we needed to disable dt and enable td. This also runs BUILD on os8v3d-patched.rk05 to switch from TC08 to TD8E drivers. It is very gross, but it does clean up after itself. (If it makes it all the way through.) This exploration has let me to believe that we might very well want to craft this as python code to, "Switch SIMH from DT to TD" and "Switch SIMH from RX01 to RX02". It is a mess of abstraction barrier violations to try and do it cleanly. So what we have now is a proof of concept. An icky one. check-in: 966fb1026b user: poetnerd tags: os8-v3f-extensions | |
02:53 | Yup I had broken absldr. (Forgot to delete legacy code.) Fixed now and tested. check-in: 5998f944de user: poetnerd tags: os8-v3f-extensions | |
2018-03-01
| ||
19:36 | Improved approach to option handling. No longer requires custom logic in every sub-command. Also consolidates parsing of comments into a common module. TODO: Test creating a TD12K system with TC08 turned off. TODO: Re-test v3f to make sure I didn't break the absldr sub-command. check-in: e67f63046a user: poetnerd tags: os8-v3f-extensions | |
06:30 | Taught mkos8 a new run command: Options. Now, before the mkos8 command arg, you can have options, for example "tc08". In the script file you enclose options in begin option foo end foo If the command line argument specifies -o foo, the lines are used. If not, they are ignored. Optional blocks can appear in commands with their own command processors, and can be nested. In this way a single command file can be used with variations on the same theme depending on which option is enabled. check-in: 10848363e5 user: poetnerd tags: os8-v3f-extensions | |
2018-02-27
| ||
04:35 | Deleting the last of the OS/8 v3f files from their old home. check-in: cf3f0afe80 user: poetnerd tags: os8-v3f-extensions | |
04:33 | Bringing the updated versions in to their new home: Amendments to os8-v3f sources to get them to build properly, and to clean up newlines as documented in README.md. check-in: e7f3f5c8a9 user: poetnerd tags: os8-v3f-extensions | |
04:27 | Re-checking in original versions in new home. check-in: 70422a41be user: poetnerd tags: os8-v3f-extensions | |
04:21 | This file should never have been checked in. It was a built artifact, not baseline truth source. check-in: ed42b06197 user: poetnerd tags: os8-v3f-extensions | |
04:20 | First step of moving os8-v3f to a os8/v3f. Move everything with no history. check-in: 3295f96998 user: poetnerd tags: os8-v3f-extensions | |
2018-02-26
| ||
04:28 | Added include functionality and split out the FOTP copy into a separate file so that it can be common to multiple system head creations scripts. check-in: f6c639f923 user: poetnerd tags: os8-v3f-extensions | |
04:22 | Updated in anticipation of support for TD12K and TDROM DECtape configurations. check-in: 8a4f9efde2 user: poetnerd tags: os8-v3f-extensions | |
04:19 | mkos8 head command now uses the tc08.mkos8 command instead of the in-line code. mkos8 system now uses the v3f-control.mkos8 file to redo the work of the v3f command. Added pal8 and absldr command parsing to script parser. TODO: add file inclusion to script parser. add patching to script parser. try out other system bulld scripts. check-in: aa81f5802a user: poetnerd tags: os8-v3f-extensions | |
2018-02-25
| ||
01:48 | Ditto in tools/bosi check-in: 44e7fdb32b user: tangent tags: trunk | |
01:47 | Switched another systemctl command in the pidp8i-test manual. check-in: a125ef3ebc user: tangent tags: trunk | |
01:45 | The top-level README.md file now gives "systemctl --user" commands only in one place, purely for documentation value. In all other places, we now use the new "pidp8i $verb" commands. check-in: 4692d6051c user: tangent tags: trunk | |
2018-02-24
| ||
23:48 | Clarity fixes to the new "doc" discussion in the HACKERS.md file's directory structure section. check-in: 5a93928903 user: tangent tags: trunk | |
23:45 | Documented an exception to the "etc" rule in the HACKERS.md directory layout section. check-in: 76739686ac user: tangent tags: trunk | |
23:21 | Fixed a logic bug in the "make mediainstall" skip test, and added a message when we skip the step to make it clear which path was taken. check-in: 36b7e06e65 user: tangent tags: trunk | |
22:41 | The test intended to skip re-installation of all the SIMH binary media and the SIMH boot scripts on a system where that has already been installed was checking for the existence of os8.rk05, which will only exist on a system that had 2017.04.04 or earlier installed on it. A system that was fresh-installed from 2017.12.22 wouldn't have this file, so the *next* installation (say, to check out the trunk version) was overwriting local media and script files. This is not going to affect people who used only release versions unless they manually did "make install" again for some strange reason. The more likely way this hits is for someone who first installed 2017.12.22 and then later checked out an unreleased version and installed it over the top of their release version. check-in: 43161ac30b user: tangent tags: trunk | |
22:33 | Clarifications to the directory scheme section of HACKERS.md. check-in: 088bcc323f user: tangent tags: trunk | |
04:50 | Finally bit the bullet and added a _context to simh object so we now EXPLICITLY keep track of what command context we are in, and we can now explicitly know, "You have to do s.back_to_cmd so you're back in the simh context and can issue those commands." This is needed to get the rewritten mkos8 working. This version of the rewritten mkos8 uses tc08.mkos8 to successfully redo all the things that were in the "head" command to create a bootable tc08 DECtape. TODO: 1. Change head to do run_system on that file. 2. Add code to enable v3f-control.mkos8 to reproduce what the "v3f" command does. 3. Do the same thing with bin, patch, src. Open issue: How do we want to re-express all the optional build stuff? I think the cleanest way is to have os8-v3d-patched.mkos8.in check-in: e0b7feccad user: poetnerd tags: os8-v3f-extensions | |
2018-02-23
| ||
06:17 | SNAPSHOT: Beginnings of yet another mkos8 rewrite. This one creates a "system" command that reads in a control file and parses it into call outs to OS/8 in simh. It is half done. When there is a complete first draft, then we go back and see what can be pruned. Still being considered: How much parsing and filtering should we do for lines being passed into OS/8? check-in: c3d90b5b86 user: poetnerd tags: os8-v3f-extensions | |
2018-02-22
| ||
17:31 | Clarified in README.md that the goo.gl link points to a release tarball URL. Pointed the user to the "bleeding edge" links on the home page if they want the tip of trunk instead. check-in: 363c3a4164 user: tangent tags: trunk | |
15:30 | Added the --disable-usb-automount option to the configure script. check-in: 519af7fb16 user: tangent tags: trunk | |
13:58 | Changed the way the systemd user unit file is installed so that it starts on boot. (It was referencing a target that doesn't exist in the user unit namespace, only in the system-level namespace.) check-in: 9df981f85d user: tangent tags: trunk | |
13:57 | The change to bin/pidp8i to make it a systemctl command shortener broke the install verb. check-in: 210dd32e7f user: tangent tags: trunk | |
13:34 | Moved most of the material on the systemd service from the "Major Differences" wiki document into the top-level README.md file's section on the same topic. check-in: 7bdf00a1e0 user: tangent tags: trunk | |
13:19 | Documented the new "pidp8i $VERB" interactive command shortener. check-in: 5f3a0f3399 user: tangent tags: trunk | |
13:16 | The pidp8i command now recognizes when it's being run interactively with arguments and passes them on to systemctl, acting as a command shortener. check-in: 62d01a3ac6 user: tangent tags: trunk | |
12:38 | Clarity pass on the new systemd section at the end of README.md. check-in: e505816ebe user: tangent tags: trunk | |
12:24 | Changed several documentation references to "sudo systemctl VERB pip8pi" commands to work with the new user-level service. check-in: f64def86c2 user: tangent tags: trunk | |
12:19 | Swapped etc/pidp8i-init.in (a SysV init script) out for etc/pidp8i.service.in (a systemd user unit), moving much of what was in the init script into bin/pidp8i.in. Implements [fc237d3f08]; see that ticket for the rationale. check-in: 4a5ef7682b user: tangent tags: trunk | |
2018-02-21
| ||
03:31 | Additional all-important comment: In SIMH, make sure you do, "set rx rx28" if you are going to use rx02 and "set rx rx8e" if you are going to use rx01. rx8e is currently the default. check-in: 77f7c141e7 user: poetnerd tags: os8-v3f-extensions | |
03:16 | mkos8 v3f now builds the device drivers. mkos8 head now fleshes out the build with the all-important RX02 driver from v3f. The code has extensive comments on how we would build different configurations including 12K and ROM TD8E systems. TODO: Design an architecture for picking though these system creation options. check-in: a53265ed60 user: poetnerd tags: os8-v3f-extensions | |
2018-02-20
| ||
03:28 | New command in mkos8 is live and working: head -- takes what we've built in "v3f" and creates a bootable DECtape image. Utilizes the OS/8 v3d device driver dectape image, and runs os8v3d-patched.rk05 as the bootable system. check-in: 48f84ed990 user: poetnerd tags: os8-v3f-extensions | |
02:04 | Fixed problem with squish. os8_squish puts in the colon for us, so when I called it with "RKB1:" it called SQUISH on "RKB1::" check-in: 32c3b1e1ae user: poetnerd tags: os8-v3f-extensions | |
2018-02-19
| ||
18:07 | Another attempt at cleanup. check-in: 448527acfc user: poetnerd tags: os8-v3f-extensions | |
18:04 | Corrections to README.md: Fixed formatting of included file. Added license. check-in: 8a49cdd555 user: poetnerd tags: os8-v3f-extensions | |
17:56 | Amendments to os8-v3f sources to get them to build properly, and to clean up newlines as documented in README.md. TODO: Find out why mkos8 complains of bad device on the SQUISH. check-in: ab0e49c8c5 user: poetnerd tags: os8-v3f-extensions | |
17:47 | Re-creation of OS/8 Device Extensions work from a ground truth of sources discovered as "OS/8 V3F" Checking in the v3f baseline sources and an initial version of changes to mkos8 to perform the build and integrate. Ultimately, mkos8 will know how to build the sources and create a distribution DECtape based on them. check-in: 95f361a076 user: poetnerd tags: os8-v3f-extensions | |
16:34 | Create new branch named "os8-v3f-extensions" check-in: 24ef7c118d user: poetnerd tags: os8-v3f-extensions | |
04:02 | Improved defaults: Added a default system image if none is specified on the command line: The os8v3d-patch.rk05 file in bin booted on rk0. Tested binary transfers from OS/8. They work as expected: /B in PIP pads the ptp device with lots of null leader/trailer. Specifically, 192 bytes are added at the beginning; Any ^Z at the end of the original .BN format file is removed. Any NULL padding in the OS/8 filesystem after the end of file is removed. Leader-trailer of 0200 and the 000 is added at the end. It will be interesting to see what kind of transformations are done on transfers into OS/8. Will the ^Z be added to .BN format? Will a sacrificial character on paper tape input be needed? /I returns the binary bits verbatim. The default transfer mode has been changed from /B to /I. Closed-Leaf check-in: 347a9e009b user: poetnerd tags: os8-cp | |
2018-02-18
| ||
19:14 | Moved a single-use string member variable in class simh inline. It needn't be externally-visible. check-in: df07d34aed user: tangent tags: os8-cp | |
18:46 | Merged in trunk improvements check-in: 29dfc620d5 user: tangent tags: os8-cp | |
17:37 | Added more clarification of when ASCII transforms are lossless. (If newlines are well formed.) check-in: 1b6da290c4 user: poetnerd tags: os8-cp | |
03:10 | Typo, grammar, and clarity tweaks to previous check-in: 7689d22a2c user: tangent tags: trunk | |
03:08 | Assorted improvements to the "Single-Core Default" section of README-throttle.md. check-in: 938079c032 user: tangent tags: trunk | |
01:52 | The publish-fossil script now includes the Fossil version in the file name, and it strips the binary before adding it to the repository. check-in: a3ac8e8862 user: tangent tags: trunk | |
01:02 | Clarified the new terse usage message a bit check-in: 4ee6f0b097 user: tangent tags: os8-cp | |
00:56 | Fixed some whitespace problems in os8-cp check-in: 0ef3beebb6 user: tangent tags: os8-cp | |
2018-02-17
| ||
05:14 | Error reporting and recovery fixes: Eliminated some debugging print statements that should have been removed before. Cleaned up error mesages print from pip routines. Took care to delete the empty file created by SIMH ptp device when the OS/8 file is not found by os8_pip_from. check-in: 026f859acb user: poetnerd tags: os8-cp | |
04:52 | Rendered nomenclature consistent in documentation and implementation: copy is now: "within" for on OS/8, "into" for POSIX into OS/8, and and "from" for going from OS/8 to POSIX. Renamed the routines in simh and changed error strings to match the nomenclature. check-in: ecb8cee214 user: poetnerd tags: os8-cp | |
04:03 | Revised usage message. Improved accuracy. Split into TERSE and VERBOSE chunks. check-in: e02f74e842 user: poetnerd tags: os8-cp | |
2018-02-11
| ||
22:06 | Moved simh._os8_errors up within the file to be next to the other constants and member variables, and improved its associated comments. check-in: 70168fc002 user: tangent tags: os8-cp | |
21:45 | ptp2text needs to filter out rubouts that PIP /A adds after control chars such as tab. os8-cp bug fix: File parser for OS/8 wild card DIR output didn't quote the dot. os8-cp: Added VERBOSE option, and provision for a QUIET option. Some things that were always printed are only on VERBOSE and DEBUG options. QUIET mode doesn't have anything bound to it yet. simh.py: Error detection updated a bit, and adding tracking of which error messages have been verified. check-in: c162a5d01a user: poetnerd tags: os8-cp | |
21:37 | Whitespace and comment improvements to os8-cp. check-in: a87d0769aa user: tangent tags: os8-cp | |
21:23 | Refinement of previous DRY violation fix, reducing the key data structure to a single dict. Checked this in separately to make the sense of the transformation clear. check-in: 5be87b7a14 user: tangent tags: os8-cp | |
21:15 | Fixed a DRY violation in the PIP option constants defined at the top of os8-cp. Changes now need to involve just two parallel lists of strings, whereas before you had to change one string and three parallel dictionaries. check-in: 29525bae74 user: tangent tags: os8-cp | |
20:54 | Comment and whitespace improvements check-in: dd47da7502 user: tangent tags: os8-cp | |
20:27 | Reordered the "import" statements in os8-cp, dropping one duplicate and one no-longer-needed import. The first group of import statements should never be extended, per its comment. check-in: 5688a5d6c8 user: tangent tags: os8-cp | |
2018-02-10
| ||
18:21 | Framework for error recovery in place, and basic errors tested. Errors we would hit were inventoried. A table of error matches and a flag as to whether the error was fatal or not (if not we need to exit the program back to OS/8 monitor.) os8_fetch_pip and os8_send_pip have been updated to deal with fatal and not fatal errors. File not found (non-fatal) and Directory I/O error (fatal) have been tested. TODO: Investigate teaching os8-cp's use of DIR command about errors. Still not done: Testing of binary modes. check-in: d7a0d338b7 user: poetnerd tags: os8-cp | |
03:31 | Fixed minor bug that prevented --action-file from working. Enabled copy mode, but forgot to test it. :-) check-in: 6a49e73a85 user: poetnerd tags: os8-cp | |
01:38 | Copy from OS/8 basically works, both single file and wild card case. TODO: copy "on" OS/8 to OS/8. Testing testing testing! check-in: efd88b5a2e user: poetnerd tags: os8-cp | |
2018-02-09
| ||
14:20 | Updated SIMH. check-in: 0a9a46d2c3 user: tangent tags: trunk | |
05:31 | Snapshot. Basic copy to OS/8 working. TODO: Copy from OS/8. Wild carding of copy from. Implementing of copy on in FOTP. Testing. Sacrificial byte at end of binaries. check-in: cd0f6e7fdb user: poetnerd tags: os8-cp | |
02:23 | att and det commands tested and working with fixes in this checkin. Time to start working on the file transfer stuff. check-in: 4cc7df0ce3 user: poetnerd tags: os8-cp | |
2018-02-07
| ||
05:17 | Snapshot: NOT WORKING! Code drafted to do att and det commands in simh. copy actions designed but not implemented. NOTHING TESTED. (Also moved some constants to the globals section of the file.) check-in: 0522ee40e2 user: poetnerd tags: os8-cp | |
04:18 | Used python dict idiom to shorten parse of mode options code. check-in: 796dadce18 user: poetnerd tags: os8-cp | |
2018-02-06
| ||
07:01 | Had to turn parse_args back into a subroutine, because the new parse_action_file overrode the action_plan being created. Pulled back in some of the old main because I'll reuse that code when I implement the copying. Shifted some of the globals from the middle of the file to the section labeled for globals. BTW: The override by --action-file is because parse_args did two passes: 1. read names and glob them. 2. turn globbed names into actions. The action file is all actions. We override because that way I don't have to write code to figure out how to do a partial second pass of what's already been parsed from the command line when we hit the --action-file argument. Icky, but... check-in: f3702ec3c4 user: poetnerd tags: os8-cp | |
05:09 | Merged trunk improvements check-in: cfe9f76381 user: tangent tags: os8-cp | |
04:54 | Renamed os8-cp --tc to --dt, properly reflecting the SIMH device name. I see why it was called --tc, but it was incorrect to map it to SIMH device name "TC" (no such thing) and it's confusing to those of us who know the SIMH device names. Better to just remain consistent throughout. check-in: 7b2a875a1b user: tangent tags: os8-cp | |
04:52 | Many improvements to the os8-cp USAGE message, especially in the area of media image options. check-in: be30dc52a4 user: tangent tags: os8-cp | |
04:24 | Removed some functions now unused since the command line parser redesign. check-in: 0d55a92b7e user: tangent tags: os8-cp | |
04:23 | Moved most of the program comments explaining the behavior of os8-cp into the USAGE message. check-in: 4e116e66c2 user: tangent tags: os8-cp | |
03:17 | Replaced main() in os8-cp — which was almost completely commented-out from its prior form — with parse_args(), since all that was left of main() was a call to that function. check-in: 9cc31248aa user: tangent tags: os8-cp | |
02:58 | Minor tweaks to previous check-in: 174829cb05 user: tangent tags: trunk | |
02:56 | Better explanation of the reason for the change to SIMH throttle stabilization and a better link to the GitHub issue thread explaining the backstory. check-in: f32224cc98 user: tangent tags: trunk | |
02:40 | Added paragraph to the "Throttle Stabilization" section of README-throttle.md warning about upgrading an existing boot script setup. check-in: 73bb7661e3 user: tangent tags: trunk | |
02:35 | Switched tools/bosi from the macOS rmtrash command to trash, which behaves better on multi-volume systems. check-in: 93ad7eeaf5 user: tangent tags: trunk | |
02:34 | Added named anchors to README-throttle.md section heads check-in: e336b70fc4 user: tangent tags: trunk | |
2018-02-04
| ||
05:02 | Renamed os8-pipio to be os8-cp Designed the new parser. Snapshot with Complete first draft of new parser. It only took 300 lines of code to do it. check-in: 96412d7943 user: poetnerd tags: os8-cp | |
2018-01-30
| ||
09:46 | Added examples/fpptst.ft to demonstrate the generation of FPP12 instructions in OS/8 FORTRAN IV assembly (RALF) output even though the FPP feature of SIMH's PDP-8 simulator is not enabled by default in the PiDP-8/I stock simulator init scripts. check-in: bc13bb069b user: tangent tags: trunk | |
2018-01-29
| ||
09:36 | Merged SIMH upstream again, this time finally fixing upstream issue #508, which I'm now going to close. check-in: 3278b60481 user: tangent tags: trunk | |
03:43 | General command line utility to read from and write to OS/8 media using PIP. Currently supports .tu56 and .rk05. TODO: 1. Investigate adding a sacrificial extra character for file send to OS/8 in binary modes. 2. Detection of OS/8 Device full. 3. Support for copyin and copyout of the system area with PIP /Y check-in: 5d7366cdd5 user: poetnerd tags: os8-cp | |
03:37 | Adds two functions: os8_send_pip and os8_fetch_pip More general interface for both storage into and retrieval from OS/8 media. Used by a new program bin/os8-pipio check-in: 7285ef619d user: poetnerd tags: os8-cp | |
2018-01-28
| ||
06:40 | Added a "make run-tss8" variant of boot/2.script, a TSS/8 parallel for "make run". check-in: 745033b32e user: tangent tags: trunk | |
2018-01-26
| ||
09:14 | Clarified the MACREL v2 patches situation in doc/os8-patching.md: it was written pre-v2017.12.22 release in future tense. check-in: 5a179291c7 user: tangent tags: trunk | |
09:13 | More of the same check-in: c7e13b21cc user: tangent tags: trunk | |
09:12 | Whitespace fixes check-in: 7b35928a10 user: tangent tags: trunk | |
00:57 | Assorted minor tweaks to doc/os8-patching.md check-in: c55128b3e1 user: tangent tags: trunk | |
00:52 | Minor tweaks to doc/class-simh.md check-in: 1068ad74ea user: tangent tags: trunk | |
2018-01-25
| ||
21:03 | Merged in an upstream SIMH improvement to the throttle stabilization code which avoids recalibrating the throttle timers on re-entering the simulation either due to Ctrl-E/cont at the terminal keyboard or CONT/START on the PiDP-8/I front panel. It simply continues using the values it determined before the simulation was stopped; it will still recalibrate itself periodically, it just doesn't start over from zero. check-in: cac1e79178 user: tangent tags: trunk | |
20:59 | Clarifications to the new section on throttle stabilization in README-throttle.md. check-in: 22398c8ac6 user: tangent tags: trunk | |
2018-01-22
| ||
12:58 | Overriding the default SIMH throttle settle time in the boot/*.script files, and documented what we know about all this in README-throttle.md. check-in: d08dd32180 user: tangent tags: trunk | |
11:40 | Merged SIMH updates into trunk check-in: 2281fbe3f1 user: tangent tags: trunk | |
11:39 | Updated SIMH to upstream checkin ID 52aebb23. No PDP-8 specific changes, but it appears to have fixed the keyboard delay problem. Closed-Leaf check-in: 1cd9da6804 user: tangent tags: simh-update | |
11:27 | Restored upstream SIMH commit ID b2b18de in preparation for doing a simh-update run. Mark Pizzolato claims that the upstream master branch has this bug fixed, and we don't want this backout appearing in our diffs relative to upstream. check-in: ad6e607aa0 user: tangent tags: simh-update | |
11:13 | Declaring the argument types of ire0() in examples/pep001-ire0.c to fix complaints from the new CC8. check-in: c70e7a7cb4 user: tangent tags: trunk | |
11:10 | Updated fib.c with a version from Ian that runs until overflow, which builds under both versions of CC8. check-in: ff9311ab5f user: tangent tags: trunk | |
11:01 | Documented a few more CC8 restrictions in its README.md. (Previously checked in accidentally on the ac-mb-fixes branch.) check-in: 8f3a66e383 user: tangent tags: trunk | |
2018-01-20
| ||
17:27 | Added "int" return type declarations for all CC8 example programs, and removed the int type insertion in bin/cc8-to-os8. check-in: 44fac25071 user: tangent tags: trunk | |
17:27 | Applied patch sent by Ian Schofield via private email to fix the "int foo()" difference between the CC8 cross- and OS/8 compilers. check-in: 8a25ff0dad user: tangent tags: trunk | |
2018-01-12
| ||
10:52 | Assorted improvements to examples/README.md check-in: 8ff7ff0955 user: tangent tags: trunk | |
10:27 | Grammar tweak check-in: 1ce056054e user: tangent tags: trunk | |
10:26 | The BASIC section of examples/README.md now refers the user to the new "Getting Text In" wiki article, both simply and by hinting at some of the methods it documents. check-in: c0463566f9 user: tangent tags: trunk | |
10:12 | Linked to the newer PEP001.* wiki articles from the examples' README.md. check-in: a9069d1472 user: tangent tags: trunk | |
00:54 | Backed out checkin [5597b069b2] for testing purposes, and for building a better version of that checkin. check-in: 38c1b17bab user: tangent tags: ac-mb-fixes | |
2018-01-08
| ||
08:19 | The "pidp8i stop" change now fails on multi-core Pis. Trying a combined version. check-in: 27f585bd1b user: tangent tags: trunk | |
2018-01-05
| ||
03:51 | Better output from "systemctl status pidp8i". check-in: bcc06879ec user: tangent tags: trunk | |
03:50 | Changed the "screenu -S pidp8i -X quit" command in the do_stop() action for the pidp8i init script to "pkill -f pidp8i-sim". Quitting the screen(1) session does that and *only* that, leaving pidp8i-sim still running, at least on Raspbian Stretch; whereas killing off the simulator *does* abandon the screen(1) session. check-in: 474594821b user: tangent tags: trunk | |
03:04 | Fixed a problem in "make install" which caused libexec/scanswitch to be installed in $prefix/bin. check-in: 8ae952de3d user: tangent tags: trunk | |
2017-12-29
| ||
16:43 | Clarified ticket level meanings. check-in: 1796d00a9b user: tangent tags: trunk | |
2017-12-27
| ||
03:52 | Passing -std=c99 when building src/misc/*.c to avoid a complaint from some compilers about our use of variable declaration in the for loop initializer section. Then fixed the resulting compiler complaints when building on Raspbian Stretch. check-in: 6963b686c5 user: tangent tags: trunk | |
2017-12-24
| ||
19:54 | Fixed a #include problem related to the new src subdirectory layout. It wasn't caught until now because it only affects ILS builds, and I've been testing off-Pi until now. check-in: 9a33c3f4b9 user: tangent tags: trunk | |
19:52 | Updated SIMH to upstream commit 8494112ee4. Nothing of consequence has changed upstream as far as we are concerned, but I needed to test that tools/simh-update continues to function with the new src subdirectory layout. check-in: 0bd7f65cb0 user: tangent tags: trunk | |
19:49 | Added src/SIMH/Makefile.in, which should have been included with the prior checkin. check-in: 62f98ec9c2 user: tangent tags: trunk | |
19:48 | Moved SIMH source files into src/SIMH, leaving no actual source files in the top level of `src`. Saying `ls src` therefore now gets you a listing of the programs built from source code, with the exception of src/misc and src/asm, which contain single-module programs, which therefore do not deserve their own subdirectories yet. check-in: 44f74bca46 user: tangent tags: trunk | |
19:16 | Moved all remaining non-SIMH *.c files from src into src/misc. check-in: a6c903715f user: tangent tags: trunk | |
19:10 | Moved the PiDP-8/I specific C files that get built into pidp8i-sim into src/pidp8i. (This is the first in a series of src subdirectory cleanups.) check-in: 0fd5a04dc0 user: tangent tags: trunk | |
2017-12-23
| ||
22:00 | Removed several references to usbmount, which we no longer use. They were all basically harmless, just causing extra pointless work for both the human and the computer. check-in: af6ea767d7 user: tangent tags: trunk | |
21:53 | Updated a "v201712xx" reference to the actual release version, v20171222. check-in: a83b8a64f4 user: tangent tags: trunk | |
03:55 | Merged doc fix in check-in: 3e64e6c138 user: tangent tags: release, v20171222 | |
03:55 | Prior update to doc/OS-images.md made for confusing grammar in the paragraph following the removed paragraph. Fixed. Retagged release v20171222. check-in: 4c2353525a user: tangent tags: trunk | |
03:29 | Merged dependency fix in from trunk check-in: 32e794a04b user: tangent tags: release | |
03:29 | Removed lib/pidp8i/__init__.py and ips.py as dependencies of the RK05 disk images so that they don't rebuild just because you ran teco-pi-demo -b. That doesn't affect *how* the RK05s are built, just *how fast* they are built, which is already a fait accompli by the time this question comes up. check-in: 6c77f5fa80 user: tangent tags: trunk | |
02:41 | Merged in trunk doc fixes check-in: 2f43ced016 user: tangent tags: release | |
02:37 | Added rootfs auto-expand item to ChangeLog. Retagged release v20171222. check-in: 882e7a13fb user: tangent tags: trunk | |
02:18 | Updated doc/OS-images.md for new Stretch based binary OS images. check-in: c2affd79bb user: tangent tags: trunk | |
02:15 | jessie -> stretch in zipfile naming check-in: 963fe39482 user: tangent tags: trunk | |
02:03 | Relaxed a check in "bosi image" which was causing it to fail to find the Linux / (root) partition on the Raspbian SD card. Added better error checking in case something like this happens in the future. check-in: 8ecb5aec91 user: tangent tags: trunk | |
01:32 | The sshd service was renamed to ssh in Stretch. Updated tools/bosi to cope. check-in: 3c4bea5aea user: tangent tags: trunk | |
01:29 | Added a delay before the reboot and poweroff steps in bosi so user can read and evaluate the final messages. check-in: 3de5856fc4 user: tangent tags: trunk | |
01:26 | Running "teco-pi-demo -b" in the "bosi build" step, partly so we test out the simulator before rebooting and partly so we update the benchmark value for that type of system. check-in: fd6977825c user: tangent tags: trunk | |
01:22 | Merged trunk fixes in. Still release v2017.12.22. check-in: ca472c3816 user: tangent tags: release | |
01:22 | The change made long ago to allow scanswitch to control the /etc/init.d/pidp8i script causes it to fail if the PiDP-8/I panel isn't actually present. Checking for the exit code 127 case explicitly now and falling back to 0.script in that case. check-in: 2c7e1c265d user: tangent tags: trunk | |
00:45 | Small fixes to ChangeLog check-in: acfb6e1a87 user: tangent tags: trunk | |
00:27 | Merged trunk changes for v20171222 into release branch check-in: 7f42574bca user: tangent tags: release | |
00:25 | Tagged release v20171222 check-in: 8ba49fee33 user: tangent tags: trunk | |
2017-12-22
| ||
22:09 | Modified the newly-created simh.os8_zero_core method to skip the top page of field 2, since it is reported that the OS/8 TD8E driver lives here. We don't use that driver in our current OS/8 disk distribution, but someone may later add that driver to their local clone of our software distribution then try running cc8-tu56-update (or some future script which also calls this new method) and be annoyed when their disk driver is MIA upon re-entering OS/8. check-in: 4b7c450799 user: tangent tags: trunk | |
22:08 | Extracted the core zeroing code chunks from cc8-tu56-update into methods of class simh. They may prove broadly useful. check-in: f79b1587bc user: tangent tags: trunk | |
2017-12-21
| ||
12:29 | Updated ChangeLog check-in: 99c1dcabef user: tangent tags: trunk | |
11:38 | Replaced our reliance on the usbmount package — which only works out of the box on Raspbian Jessie and older — with a shell script based on https://serverfault.com/a/767079 which incidentally gives us the freedome to improve on it. check-in: d136804bf1 user: tangent tags: trunk | |
10:08 | Whitespace improvements to bldcc8.bi. It changes the order of files on the output tape for some reason, so cc8.tu56 is updated yet again. check-in: 2036c8a7b0 user: tangent tags: trunk | |
09:55 | Assorted improvements to the main CC8 manual. check-in: 5545137c62 user: tangent tags: trunk | |
09:49 | Renamed CC.BI to CCR.BI. OS/8 isn't terribly smart about figuring out which "CC.*" you meant when you say "EXE CC", so we need a prefix that doesn't conflict with CC8 output files. The new name means "Compile C and Run." It is definitely not a classic rock pun. Definitely. check-in: 20d1ed131d user: tangent tags: trunk | |
09:14 | Assorted improvements in src/cc8/examples/README.md to track recent developments in CC8 land. check-in: c598b55169 user: tangent tags: trunk | |
08:42 | Added bldcc8.bi and cc.c to the list of files we delete from the working RK05 disk from cc8-tu56-update, since they're also temporaries. Also reworked the way we're handling the Python lists to avoid problems with OS/8 command line length limits. check-in: 5d10912237 user: tangent tags: trunk | |
07:56 | Reworked the newly-deterministic cc8.tu56 creation in terms of Python lists so the code is easier to expand and the file lists are easier to read. Also improved the comments. Removed a pointless and possibly dangerous "DEL *.C" command which we no longer need now that we've given up on using wildcards in the COPY commands. There still remains some source of mischief because cc8.tu56 changed again purely by building it on a different platform. check-in: 32e4c2a446 user: tangent tags: trunk | |
06:59 | Comment improvements check-in: e8175ab22c user: tangent tags: trunk | |
03:00 | Fix for [ab0e67]: In addition to unmounting the dt image explicitly, one needs to clean out any files from previous runs of the script. The OS/8 copy actions send output in the order found on the input disk. The Linker resolves library items in the order the input files are found on disk. So we must remove anything from a previous run of the program, and SQUISH SYS: and DSK: so that successive runs of the script will cause input and output files to ALWAYS show up in the same order on the disk. When this is done cc8.tu56 DOES come up bit identical. This checkin is for the good script and the resulting good (canonical) cc8.tu56. check-in: 6f59c23708 user: poetnerd tags: trunk | |
2017-12-20
| ||
20:20 | Removed redundant line from the old ASCII to modern ASCII translation table in the U/W FOCAL manual supplement. check-in: 0c908434d4 user: tangent tags: trunk | |
20:13 | Removed the warning about LF-only example/*.fc inputs to "make" in the U/W FOCAL manual supplement: txt2ptp now fixes this. check-in: f53b42b748 user: tangent tags: trunk | |
04:56 | I am concerned that one needs to explicitly detatch dectapes before quitting the simulator. I have added that to cc8-tu56-update. I am pushing out the cc8.tu56 I built with this version. It corrects a corrupt LIBC.RL that was in the previous version. Alas, this version of cc8-tu56-update STILL does not create bit-identical tape images on successive runs. check-in: 599e310e0e user: poetnerd tags: trunk | |
2017-12-19
| ||
14:43 | Merged in trunk improvements. Closing leaf: found a better way. Closed-Leaf check-in: 315af225b0 user: tangent tags: udevd-systemd-fix | |
14:34 | bosi init now kills off all processes for user 'pi' before usermodding it. Jessie didn't need this, but under Stretch, you have the "systemd --user" process and one other even after exec'ing yourself a pure root shell. check-in: 5b53879bca user: tangent tags: trunk | |
13:28 | Replaced "build Fossil from source" stuff in bosi init with a wget call for the unversioned binary build previously published to the project site by tools/publish-fossil. check-in: 53f593579b user: tangent tags: trunk | |
09:38 | Rebuilt cc8.tu56. Prior one caused ERROR 0004. check-in: 2e5d30a5b3 user: tangent tags: trunk | |
09:19 | Merged the branch backing out a change made upstream to SIMH back in August which screws up the fixed-rate simulator throttling. Hopefully we'll get a better fix later, but we've given upstream 3 days to fix this and we haven't even gotten a reply yet. check-in: 44bacd76c8 user: tangent tags: trunk | |
09:16 | Jonathan Trites found a use of '\*' in a call to simh.os8_send_cmd() which we missed when fixing these escaping issues a while back. It's probably insignificant since it follows a short command, but it is at least sloppy, so it's worth fixing. check-in: f9cc818c8c user: tangent tags: trunk | |
2017-12-18
| ||
07:07 | Applied a fix to the systemd udevd unit which is supposed to allow usbmount to work under Raspbian Stretch according to usbmount GitHub issue #2. It's not working here on my PiDP-8/I, but it's a mongrel upgraded from Jessie. Checking it in on this branch so I can try it on a fresh Stretch install. check-in: e4e5ef7f65 user: tangent tags: udevd-systemd-fix | |
2017-12-16
| ||
18:09 | Merged Steve Bennett's improved unified mkos8 + configure OS/8 option handling code, plus some assorted other improvements along for the ride. check-in: a4e1ad749f user: tangent tags: trunk | |
18:06 | Fixed several misunderstandings in this new option handling scheme, and tweaked a bit of it besides. Closed-Leaf check-in: d5e40c708f user: tangent tags: os8-option-share-msteveb | |
17:17 | Simplified some of the string building code in the auto.def OS/8 option handling. check-in: 1c7cd74c22 user: tangent tags: os8-option-share-msteveb | |
16:59 | steveb supplied the final key to allow this to work on "real" Tcl, as opposed to Jim Tcl. check-in: 76f7967fb2 user: tangent tags: os8-option-share-msteveb | |
10:51 | Steve Bennett's improved method for setting OS/8 options for both the configure script and mkos8 from a single definition. This version doesn't work on "real" tclsh, only jimsh0. check-in: d37216a49f user: tangent tags: os8-option-share-msteveb | |
10:40 | Removed unnecessary executable bits on autosetup/* check-in: 07aba8a68f user: tangent tags: os8-option-share-msteveb | |
09:59 | Workaround for a bug in Fossil's Markdown processor check-in: 01676fb3eb user: tangent tags: trunk | |
09:58 | Quoting fix to previous check-in: cf3537aa4c user: tangent tags: trunk | |
09:56 | Merged the new paragraph on prompt character escaping with a similar one previously existing. check-in: b10e9fbb40 user: tangent tags: trunk | |
09:51 | Clarified the '\\.' explanation in class-simh.md check-in: 97c5799ff3 user: tangent tags: trunk | |
09:50 | Completed a missing thought in the recent checkin to class-simh.md. check-in: c44f5488e0 user: tangent tags: trunk | |
09:48 | Small fix to previous check-in: c1f7f705ae user: tangent tags: trunk | |
09:46 | Several improvements to doc/class-simh.md check-in: 599ba5fcab user: tangent tags: trunk | |
09:35 | More tweaks to README-throttle.md check-in: 9535f9c26d user: tangent tags: trunk | |
09:23 | Assorted tweaks to the single-core section of README-throttle.md. check-in: d6fcae8f40 user: tangent tags: trunk | |
08:58 | Backed out upstream commit b2b18de0ec, which breaks fixed-rate throttling. Whether we merge this into trunk or close the branch depends on how upstream reacts to our report, issue #508: https://github.com/simh/simh/issues/508 Closed-Leaf check-in: 701ebdc2f1 user: tangent tags: simh-timer-fix | |
08:52 | Grammar fix check-in: 18f7db0050 user: tangent tags: trunk | |
08:47 | Assorted improvements to the OS/8 *.rk05 disk image description in the top-level README.md file. check-in: bf7cc454a2 user: tangent tags: trunk | |
07:36 | Changed how the configure script sets the default value for --prefix to avoid a complaint from autosetup about use of an obsolete interface. check-in: a7ef26e838 user: tangent tags: trunk | |
07:08 | Rebuilt cc8.tu56 with all the recent changes in place. check-in: 2c8a3dec51 user: tangent tags: trunk | |
06:56 | cc8-tu56-update now zeroes most of core before running the compile-and-SAVE BATCH file. It was hoped that this would fix the nondeterminism of the script, but that doesn't seem to be the case. check-in: d73c5b76db user: tangent tags: trunk | |
06:41 | Another *.s -> *.sb change in cc8-tu56-update. check-in: 27b3a7392f user: tangent tags: trunk | |
06:38 | Better description of the CC8 example programs in the CC8 docs. check-in: 442d9cff50 user: tangent tags: trunk | |
06:26 | cc8-tu56-update no longer copies basic.c to the tape image: the OS/8 compiler isn't currently able to compile it. check-in: 20a61bf4e6 user: tangent tags: trunk | |
06:25 | The CC8 cross-compiler now writes out *.sb instead of *.s to match the OS/8 file naming convention for SABR output, and to avoid the confusing use of *.s for some POSIX assembly languages. It was using *.s simply because it could replace *.c on the input file name with a single character replacement. If the input file name is exactly at the file name buffer's limit (20 bytes, including the trailing null), we still write out *.s rather that mess with resizing buffers or reserving one byte, complicating all the other uses of that buffer size. check-in: 857b3fafc0 user: tangent tags: trunk | |
2017-12-13
| ||
03:50 | . check-in: e7e3ff56fd user: tangent tags: trunk | |
03:32 | Updated autosetup to upstream Git commit b5a0e85d8 check-in: 7a12e8386e user: tangent tags: trunk | |
03:21 | Steve Bennett's idea for redesigning our mkos8/auto.def option sharing mechanism so that it doesn't require modifications to autosetup. Checkin it in on a branch because although it works, it's more complex and has other nonideal properties as compared to our previous solution. check-in: 4239a89d8a user: tangent tags: os8-option-share-msteveb | |
02:28 | Updated SIMH to current upstream version. The only substantial change from our perpsective is working around a change they made to scp.h which redefines all of ctype.h, then changes their names, forcing any program that indirectly included scp.h to also link to scp.o! Broke that tie by carefully reworking our #includes to avoid bringing scp.h into programs like pidp8i-test which do not link to the rest of SIMH. check-in: 0b8fb3f7d8 user: tangent tags: trunk | |
02:08 | Updated SIMH to upstream commit 27f9fc3c3e7. Closed-Leaf check-in: 324c415192 user: tangent tags: simh-update | |
01:33 | Portability fix to previous check-in: fbc93a455d user: tangent tags: simh-update | |
01:32 | Bash syntax for testing PDF file size difference in SIMH documentation *.doc -> *.pdf process wasn't working as expected. Rewrote it in terms of stat(1). check-in: 749cce9c50 user: tangent tags: simh-update | |
01:05 | The simh-update script was assuming that you had a local copy of all the unversioned SIMH documentation PDFs, or at least that it could "touch" those file names to force a delta. Now it exports a copy out of "fossil uv" instead. check-in: d37019060a user: tangent tags: simh-update | |
2017-12-12
| ||
03:25 | Utility to create a .tu56 or a .rk05 image from a bunch of ASCII files (as in creating a source disk or tape.) Command line options select --tu56, --rk05a or --rk05b. The last argument is used to name a .list file that inventories input, and the image file. Example: txt2os8 --tu56 mytape creates mytape.tu56 with files found in manifest mytape.list check-in: 854a2cd68a user: poetnerd tags: trunk | |
2017-12-11
| ||
20:42 | Clarified doc/ vs wiki in HACKERS.md#dirs check-in: 01e314c884 user: tangent tags: trunk | |
20:33 | Documented the new docs/graphics directory check-in: 1a5196b4db user: tangent tags: trunk | |
20:30 | Moved the content of `pics` to `doc/graphics`. check-in: ab96eeead6 user: tangent tags: trunk | |
20:27 | Clarified boot and media in HACKERS.md#dirs. check-in: 38f059ed8a user: tangent tags: trunk | |
20:17 | Clarified the purpose of src in HACKERS.md. check-in: 6569a6d42b user: tangent tags: trunk | |
20:10 | . check-in: 4a1b3915a8 user: tangent tags: trunk | |
20:08 | Moved asm subdir under src check-in: e2d139c73d user: tangent tags: trunk | |
20:01 | More HACKERS.md tweaks. check-in: e1d09a8bb8 user: tangent tags: trunk | |
19:58 | More directory structure tweaks in HACKERS.md check-in: 2037cfde2b user: tangent tags: trunk | |
19:52 | Workaround to previous for a weakness in the Fossil Markdown formatter check-in: 3f4dffd255 user: tangent tags: trunk | |
19:50 | Added "Directory Structure" section to HACKERS.md. check-in: 0339f85860 user: tangent tags: trunk | |
19:23 | Moved RELEASE-PROCESS.md into doc subdir check-in: d9038ed803 user: tangent tags: trunk | |
2017-12-10
| ||
22:35 | Assorted improvements to tools/cc8-tu56-update and consequently to cc8.tu56. check-in: 48456100ae user: tangent tags: trunk | |
22:00 | Missed copying CC.BI to cc8.tu56. check-in: 371ee6c828 user: tangent tags: trunk | |
21:56 | Added cc.bi batch file to simplify building programs. check-in: b3b308339b user: tangent tags: trunk | |
21:45 | Assorted improvements and clarifications to the bugs, limitations, and features sections of the CC8 README. check-in: 8357aedccb user: tangent tags: trunk | |
21:29 | Clarified the lack of preprocessor in the CC8 README.md check-in: 92aeacf0b1 user: tangent tags: trunk | |
21:21 | Renamed CC0.SV to CC.SV and replaced references to it being a stub for the preprocessor, now calling it the compiler driver. If a preprocessor is ever written, the driver will call it before calling CC1. check-in: 38f376dfad user: tangent tags: trunk | |
21:07 | Updated cc8.tu56 yet again. Something about [fad54ed921] fixed the problems I've been having with CC0 since int [2f2103d555]. check-in: 539ff193cb user: tangent tags: trunk | |
20:50 | Suppressed blank lines at the top of the output file in bin/cc8-to-os8. check-in: fad54ed921 user: tangent tags: trunk | |
18:23 | Updated cc8.tu56 with new cc8-tu56-update output. (Removed *.h, filtered *.c.) check-in: 96873c9024 user: tangent tags: trunk | |
18:20 | Updated tools/cc8-tu56-update to use bin/cc8-to-os8 and remove the unused include/*.h. check-in: baf4c330df user: tangent tags: trunk | |
17:49 | Reworked most of the *.c examples to be in the style required by the CC8 cross-compiler, then added the bin/cc8-to-os8 filter which converts them to the format expected by the OS/8 version of CC8. check-in: 2f2103d555 user: tangent tags: trunk | |
16:45 | Added named anchors to the CC8 README check-in: a8b06325a0 user: tangent tags: trunk | |
16:23 | Comment improvement check-in: 4006b82589 user: tangent tags: trunk | |
12:44 | Comment tweak check-in: e0e43e1d89 user: tangent tags: trunk | |
10:45 | Rebuilt cc8.tu56 with INIT.PA -> INIT.H check-in: 5bf8e22e0c user: tangent tags: trunk | |
10:44 | Renamed init.pa to init.h. I just realized that this is a C header file dominated by a single block of inline assembly, which makes it irrelevant to the file naming whether it contains PAL8 compatible assembly language source code or SABR-only code. It's a header file, thus *.h. check-in: 5879d6f72b user: tangent tags: trunk | |
2017-12-09
| ||
14:44 | Swapped FORTRAN IV and II links in the ChangeLog so they match the order of the sections in the article. check-in: 87c02d6089 user: tangent tags: trunk | |
14:43 | Added links to sub-sections of PEP001.FT article from the FORTRAN II and FORTRAN IV links in the ChangeLog check-in: 8fa9956c93 user: tangent tags: trunk | |
14:40 | URL fixes in recent ChangeLog.md checkin check-in: 54997226dc user: tangent tags: trunk | |
14:37 | Grammar tweak check-in: 390640a233 user: tangent tags: trunk | |
14:36 | More improvements to the RK05 bits of the top-level README check-in: b39ff2fbcb user: tangent tags: trunk | |
14:28 | Rearrangements and tweaks in the top-level README check-in: d03ed87391 user: tangent tags: trunk | |
14:21 | Reworked the HACKERS.md instructions for getting Fossil 2.x for a Pi to use our new unversioned binary. check-in: 2da3b6888b user: tangent tags: trunk | |
14:18 | Added tools/publish-fossil so we can distribute a pre-built version of Fossil 2.x for the Pi. check-in: 460e5f5f8e user: tangent tags: trunk | |
13:44 | Removed "sudo apt install fossil" instruction from HACKERS.md. That conflicts with the current requirment to install from source. It'll come back when Debian finally starts shipping Fossil 2.x. check-in: 28b35afe29 user: tangent tags: trunk | |
13:13 | Updated the ChangeLog check-in: c96cc580b3 user: tangent tags: trunk | |
12:15 | Added pep001-ire0.c, the "First Try" program in the PEP001.C wiki article. check-in: 16eb83a9e8 user: tangent tags: trunk | |
12:14 | Added "int" return type to main() in pep001.c: the compiler currently requires it, but it won't warn or error if it isn't present, it'll just fail to do the right thing. Also renamed it to pep001-mod.c after the modulus operator it uses, since we're going to save the other version here next under a different pep001*.c name. check-in: f4a633c567 user: tangent tags: trunk | |
12:12 | Assorted improvements to the CC8 README check-in: 0760dcee6b user: tangent tags: trunk | |
01:25 | Rebuilt cc8.tu56 in case the buffer overrun in txt2ptp affected its content. check-in: 2a11db3ffe user: tangent tags: trunk | |
2017-12-08
| ||
23:38 | Double size of obuf. Worst case of "need one more output buffer character space to accomodate adding \r before \n" check-in: 18fb7d3bb4 user: poetnerd tags: trunk | |
20:21 | . check-in: 20e18746ab user: tangent tags: trunk | |
18:18 | Updated cc8.tu56 to contain latest n8.c changes. check-in: bbd9fc92a6 user: tangent tags: trunk | |
17:26 | Updated src/cc8/os8/n8.c with Ian's latest fixes. check-in: 0e01e6b563 user: tangent tags: trunk | |
2017-12-07
| ||
20:32 | . check-in: c901777e25 user: tangent tags: trunk | |
20:24 | . check-in: 1b3ae6c27b user: tangent tags: trunk | |
18:15 | Added FORTRAN II and FORTRAN IV versions of PEP001, correpsonding to the versions described in the current version of the PEP001.FT wiki article. check-in: 1dde81a5e4 user: tangent tags: trunk | |
18:14 | Updated pep001.c to the current version given in the wiki article check-in: 28e2ce8371 user: tangent tags: trunk | |
2017-12-06
| ||
19:01 | Assorted improvements to the description for the "./configure --prefix" option. check-in: 71f21fddc8 user: tangent tags: trunk | |
18:52 | Added a brief "Running the Software" section to the top-level README to cover the PATH modification issue. check-in: e8e6290de2 user: tangent tags: trunk | |
18:46 | Clarified the bits about "make reconfig" in the top-level README check-in: 9769d8929d user: tangent tags: trunk | |
15:27 | Initial implementation of pep001.fc check-in: 804af8e141 user: tangent tags: trunk | |
13:41 | Improved description of the DECUS submission in the U/W FOCAL manual supplement's References section. check-in: ac7600237c user: tangent tags: trunk | |
13:37 | Raised a few heading levels in the supplement check-in: 1b63be1563 user: tangent tags: trunk | |
13:37 | Reworked the U/W FOCAL manual supplement's rationale section somewhat. check-in: c41bab7c4a user: tangent tags: trunk | |
13:17 | Fixed a few more OCR errors in uwfocal-manual.md check-in: 182ac763c4 user: tangent tags: trunk | |
00:20 | Merged usb-scan-depth-increase experimental feature branch into trunk. check-in: ea7ee05b55 user: tangent tags: trunk | |
2017-12-05
| ||
22:55 | Imerged in trunk fix to avoid needless RK05 rebuilds Closed-Leaf check-in: fa23d2380e user: tangent tags: usb-scan-depth-increase | |
22:54 | No longer rebuilding bin/*.rk05 just because the simulator got rebuilt. (Moved $(SIM) to the other side of the | in the rule to make it an exists-only dependency.) check-in: fd495f8920 user: tangent tags: trunk | |
18:17 | Broadened the /media/usb[0-7]/FILE.EXT scheme used by the SING_STEP + DF feature so that it works for /media/DIR/FILE.EXT, where DIR is any directory under /media. The intent is that this work for systems that use something other than usbmount but which also automount USB at the top level of /media, the standard location on Linux. This is untested, but it should work where Raspbian Desktop's USB automounting scheme overrides usbmount and other similar schemes. check-in: 82abd3a7bc user: tangent tags: usb-scan-depth-increase | |
13:53 | . check-in: 79f607a22e user: tangent tags: trunk | |
13:07 | Reworked pep001.c in terms of the new modulus operator support. (The only reason I checked in the previous ire0() based versions is because they're used to tell the story in the PEP001.C wiki article I'm composing, and I'd like to be able to pull those versions back out of source control again later.) check-in: 199a0dff7e user: tangent tags: trunk | |
12:53 | Simplified pep001.c a bit more. check-in: daf2ff9090 user: tangent tags: trunk | |
12:32 | More whitespace fixes to CC8 check-in: 04712bea7d user: tangent tags: trunk | |
12:30 | Whitespace fix check-in: 31fc8dd267 user: tangent tags: trunk | |
12:10 | Reworked examples/pep001.c in terms of a new subroutine, ire0(). check-in: 3458e3e939 user: tangent tags: trunk | |
11:48 | Removed an unnecessary #include from pep001.c check-in: b218a6484c user: tangent tags: trunk | |
11:47 | Small fixes to examples/pep001.c check-in: 70613e5eeb user: tangent tags: trunk | |
10:32 | Extracted the manual COMP and LOADER steps in tools/cc8-tu56-update out as an OS/8 batch script (bldcc8.bi) which we send along with all the other static text files. This eliminates the possibility of any differences in the back-and-forth between cc8-tu56-update, pexpect, and SIMH from causing differences in the resulting cc8.tu56 file, which we're also checkin in at this time. check-in: ab58d17e25 user: tangent tags: trunk | |
09:17 | Typo fix check-in: 42bc4c6bd5 user: tangent tags: trunk | |
09:15 | Applied GPLv3 license to CC8, per private email from Ian Schofield on 2017.07.15 and 16. check-in: f4827a481f user: tangent tags: trunk | |
09:12 | Assorted improvements to the ChangeLog check-in: 19b733c33d user: tangent tags: trunk | |
08:53 | Removed src/cc8/os8/os8.sb: apparently unused. check-in: 0f784fb71d user: tangent tags: trunk | |
08:52 | Removed another reference to the now-removed boot/cc8.script file. check-in: 6e0be06dc9 user: tangent tags: trunk | |
08:20 | Added a hyphen in "Small-C" to one of the uses in the CC8 README check-in: 59741762d2 user: tangent tags: trunk | |
2017-12-04
| ||
13:09 | Reworked the "build PS.CC" example in src/cc8/README.md to use CC0 instead of CC1. I find it considerably easier. check-in: 1d737f0325 user: tangent tags: trunk | |
13:06 | Removed cc8.rk05 and its boot script now that os8v3d-*.rk05 is a functional superset of it. check-in: 882b8a05b7 user: tangent tags: trunk | |
12:52 | bosi prepare now sets up auto-expanding root filesystem check-in: 666c3dbe59 user: tangent tags: trunk | |
11:43 | Moved the "zero core memory" step up a bit within cc8-tu56-update: it was between the mag tape and disk pack attachment commands to SIMH, and there's no good reason to split those two. Since it's easier to do it before attaching media than to slide it in between the attachments and the boot command, I've done it that way. check-in: 0a87f19eed user: tangent tags: trunk | |
11:34 | Updated cc8.tu56 after the zero-core fix. check-in: bd1d639081 user: tangent tags: trunk | |
11:32 | cc8-tu56-update now zeroes core before beginning work. Since it uses the OS/8 SAVE command, it really needs known prior core contents before we do the SAVE, else the output is nondeterministic. check-in: 5b75dd49a0 user: tangent tags: trunk | |
08:52 | Re-generated cc8.tu56 after previous updates check-in: 1fe3644a71 user: tangent tags: trunk | |
08:51 | Fixed escaping of a * prompt in a regex string sent to os8_send_cmd(). check-in: 9c59dd5a2d user: tangent tags: trunk | |
08:36 | Quadrupled the size of the files that test-os8-send-file transfers to try and tickle bugs. No dice, at least on my iMac. check-in: 2cb6f721a5 user: tangent tags: trunk | |
08:31 | Merged comment fix in check-in: 3ae5eaf9e7 user: tangent tags: trunk | |
08:30 | Removed a few stray lines accidentally checked in with previous Closed-Leaf check-in: d7ef389fa9 user: tangent tags: comment-fix | |
08:30 | Comment improvement check-in: 76e4d3a852 user: tangent tags: comment-fix | |
08:18 | Now that test-os8-send-file is transferring a single file reliably, reworked its main() to try a loop of 1000 send/get cycles. check-in: d192d2bcc0 user: tangent tags: trunk | |
08:01 | Removed ASCII 127 from the set of characters we send via tools/test-os8-send-file: it's clearly being interpreted, causing needless differences in the test output. check-in: 94811a17f0 user: tangent tags: trunk | |
07:54 | Removed double quotes from "attach ptp FILENAME" command sent by simh.os8_send_file(). SIMH doesn't let you quote a file name; implicit in that is that we're dependent on Python's temp file naming scheme not to give us a string with spaces or other problematic characters. check-in: a78fadf377 user: tangent tags: trunk | |
07:09 | Jim Tcl compatibility fix in recent auto.def changes. check-in: 7ad143c18b user: tangent tags: trunk | |
2017-11-30
| ||
16:16 | Merged "make clean" improvements in from trunk Closed-Leaf check-in: 93a3d15c0a user: tangent tags: cc8-64-bit | |
16:16 | Added several things to "make clean". check-in: cc50ffe3d1 user: tangent tags: trunk | |
16:01 | First steps toward making the cc8 cross-compiler run correctly on 64-bit systems where sizeof(int) != sizeof(char*). See ticket [a3f875cd] for details. check-in: d75851a10e user: tangent tags: cc8-64-bit | |
15:23 | Assorted fixes to allow the cc8 cross-compiler to build in Xcode: added "return 0" to functions without an explicit return value which don't end in a return statement in all code paths; renamed kill() to kill_line() to avoid conflicting with the POSIX syscall; and removed link(), which also conflicts with POSIX syscall set, but isn't actually used here. Also fixed line ending styles and re-removed the getchar() at the end of main(). check-in: 27e81d863c user: tangent tags: trunk | |
2017-11-28
| ||
14:16 | Added simh.os8_get_file() and tools/test-os8-send-file to test it and its inverse, simh.os8_send_file(). It isn't working yet, but it won't interfere with anything, and someone else may be able to finish it. check-in: 71ddf33004 user: tangent tags: trunk | |
2017-11-27
| ||
19:41 | A few typo fixes in previous check-in: c9b341cd23 user: tangent tags: trunk | |
19:36 | Reworked the "Government Health Warning" section of the CC8 README to split the limitations apart from the list of known-working features. Also spread the recently added "Nov 2018" (sic) stuff through the document rather than just have it tacked onto the end. check-in: be43971b09 user: tangent tags: trunk | |
17:07 | Healed Ian Schofield's inadvertent trunk fork. check-in: 41b8fa50af user: tangent tags: trunk | |
17:06 | Added "fossil sync" fix for anonymous clones in the "Fossil Developer Access" section of HACKERS.md. Also promoted some inline URLs from http to https. check-in: 42548b4bd2 user: tangent tags: trunk | |
16:51 | Extended the "skips" mechanism used in the "mkos8 patch" facility so that we can skip the FUTIL V7 patches when MACREL is being installed, since we know they will fail. Technically speaking, this change is not absolutely necessary since mkos8 was already smart enough to cope with the failure of the patch to apply, but we don't want end users complaining about "failed patches", not realizing that they are not expected to apply correctly when you do not give --disable-os8-macrel. check-in: faec308ed2 user: tangent tags: trunk | |
16:38 | Update of include file names. check-in: f12365e05c user: isysxp tags: trunk | |
16:04 | This update contains a correction for the expression parser and the addition of 2 operators ...% and ~. In addition, the spacing issue has been resolved to a degree. This is very difficult to test. Overall, the native compiler is for a bit of fun. If you want to run a serious c programme, try the hosted compiler (cc8) as this will compile the (native) compiler and library. check-in: 05b40e1d4c user: isysxp tags: trunk | |
13:33 | Updated ChangeLog.md. check-in: a87371e238 user: tangent tags: trunk | |
13:15 | Merged in trunk changes; closing branch as it has been superceded by Ian checking the fixes (plus more) in later down the trunk. Closed-Leaf check-in: 17057db60f user: tangent tags: cc8-fixes | |
12:52 | We were not resetting the simulator's Pause state at the end of every IOT state, so that the ILS sampling scheme would tend to over-count the number of instructions that had the Pause LED lit. Problem noticed by Ian Schofield, fix by me. check-in: adf01e8579 user: tangent tags: trunk | |
12:46 | No longer passing the PDP-8 simulator's MB register to set_pidp8i_leds() from within the CPU instruction dispatch loop. According to Ian Schofield, the simulator's IR register actually contains what should display in the MB lights at these call points. Since we were already passing that register, we just dropped the parameter we no longer use, and use IR instead. Closes [973271ae36]. check-in: 5597b069b2 user: tangent tags: trunk | |
12:36 | . check-in: 7e616f5dd5 user: tangent tags: trunk | |
12:24 | Noted that we're distributing MACREL v2 now in a few of the docs. check-in: 0ce8bda688 user: tangent tags: trunk | |
12:18 | Folded the non-duplicate parts of the "OS8 System Packs" wiki article into the top-level README.md file so we can remove the unversioned wiki article in favor of this versioned file. check-in: 5361575d8e user: tangent tags: trunk | |
11:27 | Merged configure/mkos8 argument parsing DRY fixes. Closes [f5d5cf50c4] and [68dae7cc88]. check-in: ed0480e0be user: tangent tags: trunk | |
11:13 | Makefile.in fixes for out-of-tree build-and-install. Some of it is for the new lib/mkos8/opts.py but it also affects the rest of lib/mkos8. Closed-Leaf check-in: b497ea1d85 user: tangent tags: mkos8-option-dry-fix | |
09:29 | The configure script now makes the lib/mkos8 directory before writing opts.py there in case we're building out-of-tree, in which case the directory won't already exist. ($srcdir/lib/mkos8 does exist.) check-in: 40b486cd05 user: tangent tags: mkos8-option-dry-fix | |
09:16 | Rather than duplicate all of the option definitions and help texts between auto.def and lib/mkos8/argparser.py, we now generate lib/mkos8/opts.py from auto.def based on the options() values at the top of auto.def which mkos8's argument parser reads and uses to define most of its command line options, making a near-parallel of most of the configure script's --*-os8-*. This is on a branch because there are quite a few subtleties in all of this which means this feature needs more testing to be sure it is complete and doesn't break anything. So far, this change is a delta loss of 132 lines, a good sign that it's worth the complexity of doing things this way. Provisionally closes [f5d5cf50c4] and [68dae7cc88]. check-in: 9dcaed3c64 user: tangent tags: mkos8-option-dry-fix | |
07:21 | "make clean" no longer removes Makefiles generated from Makefile.ins. You now have to say "make distclean" to nuke those, along with all the other files that bring us back closer to a "fossil clean" state. check-in: 70dcfbc33d user: tangent tags: trunk | |
07:12 | Replaced hard-coded -DHAVE_DLOPEN=so CFLAGS option with one based on SH_SOEXT variable exported by autosetup, which allows SIMH to dynamically link to optional libraries such as libreadline on platforms that use a different dlopen(2) file name extension. Tested as not changing anything on Raspbian and as allowing command completion in SCP on macOS. Theoretically, it should allow use of DLLs on Windows, but this has not been tested; it probably only does so under Cygwin. check-in: 161b1c1b6b user: tangent tags: trunk | |
05:43 | Minor corrections of typos and formatting problems to docs amended in previous update. check-in: bc636c64e7 user: poetnerd tags: trunk | |
05:18 | After much testing I provide this new integration of MACREL: v2. Additionally I have updated os-patching.md to reflect current reality, and spun two sections from that doc into their own docs that cover macrel and the OS/8 V3D Device Extensions kit. MACREL v2 contains an update version of FUTIL that matches MACREL. That drove hand-integration of FUTIL patch 32.13.1M to get it working again under batch. The test program, RESORC, from the OS/8 V3D Device Extensions kit runs just fine when installed on SYS: but not anywhere else. I wailed on this problem for a while but could not find root cause. That version if RESORC is NOT installed. I'm just trying to understand what it is about that epoch of building that behaves in that unexpected way. check-in: c0e2d1ce56 user: poetnerd tags: trunk | |
04:46 | Regularized os8-* option help texts in auto.def and fixed tenses in verbs so they match the sense of the option's *inverse*, since that is how the help text is used in ./configure --help output. check-in: 09f9503302 user: tangent tags: trunk | |
04:39 | Hand integrated patch 41.5.1 M which is a source change to OVRDRV.MA. check-in: a0c3e3490f user: poetnerd tags: trunk | |
2017-11-25
| ||
20:22 | Implementing rename. check-in: 6f9077faef user: poetnerd tags: trunk | |
20:20 | FUTIL V8A hangs under batch, and so it breaks our auto-build process as soon as we copy it in. I have hand-applied patch 35.13.1M which fixes the problem and upgrades FUTIL to v8B. I have documented work in README.TX, and I'm going to rename this image al-5642c-ba, a version never shipped, but embodying a critical fix. check-in: 86934ed2b1 user: poetnerd tags: trunk | |
17:20 | Adding a hand-tooled MACREL v2 DECtape image. Contains FUTIL.SV version 8a that should replace v7D to match new Core Control Block format used by the new MACREL. When FUTIL is replaced, we need to re-test and probably disable patch FUTIL-31.21.2M. check-in: 1d6f691bbc user: poetnerd tags: trunk | |
2017-11-23
| ||
00:16 | Reworked simh.os8_send_file() so that it gets EOF from txt2ptp rather than inserting it into the simulator's stdin itself. check-in: 816c827edb user: tangent tags: trunk | |
00:15 | Another "PIP input from paper tape" documentation fix tracking the addition of Ctrl-Z at EOF in txt2ptp. check-in: 0c2b3b2035 user: tangent tags: trunk | |
00:02 | Added a missing "hit Escape" in another PIP example check-in: e3054b879f user: tangent tags: trunk | |
00:01 | Changed a recommendation of Ctrl-C to leave PIP to Escape. check-in: 4cd111528d user: tangent tags: trunk | |
2017-11-21
| ||
04:41 | Further documentation around the patch FRTS-51.3.3-O. It might be OK. Or it might be yet another "only works with the Devices Extension Kit" patch. check-in: c68ec2b288 user: poetnerd tags: trunk | |
03:30 | When making an ASCII paper tape, if the input file does not already end with ^Z, add it before emitting the leader/trailer. check-in: 6c4272cbbc user: poetnerd tags: trunk | |
02:02 | Pushed mkos8 componentization to next release; didn't get to it this weekened, and won't have time this next weekend. check-in: 6f4c6ebd39 user: tangent tags: trunk | |
2017-11-18
| ||
15:01 | Assorted improvements to src/cc8/examples/README.md check-in: 644ac70416 user: tangent tags: trunk | |
14:30 | cc8.tu56 properly updated; last one was with a stale n8.s. check-in: 2dc1d0c256 user: tangent tags: cc8-fixes | |
13:53 | Rebuilt cc8.tu56 using new n8.c. check-in: 9130135a29 user: tangent tags: cc8-fixes | |
12:11 | Another fix to n8.c from Ian Schofield, received via email on November 16. check-in: fa81a46c5c user: tangent tags: cc8-fixes | |
2017-11-16
| ||
20:16 | Thought up a workaround for the lack of toupper() and || in CC8 in the calc.c example. Also added a bunch of comments explaining why it is written the way it is. check-in: 784f8842cd user: tangent tags: trunk | |
20:01 | Removed the test for lowercase 'y' in the reworked CC8 example calc.c: CC8 doesn't yet understand the C || operator. None of my other attempts to work around this work, either. (cupper, restructuring as nested if/elseif/else tests, etc.) check-in: 156b2b69e9 user: tangent tags: trunk | |
19:51 | Removed a pointless "return 0" in pep001.c check-in: 1657a72a20 user: tangent tags: trunk | |
19:06 | Merged in trunk fix for SAVE SYS BUILD check-in: e29f5b239d user: tangent tags: cc8-fixes | |
17:38 | The "SAVE SYS BUILD" did the wrong thing. It carefully saved the updated setup on SYS which had been changed to the RK05, and then, moments later, overwrote it with the original from the DECTAPE. So we do "SAVE DTA0 BUILD" to put our revised setup where it will then be copied along with everything else to the RK05 SYS. check-in: 40a3f17c58 user: poetnerd tags: trunk | |
07:59 | First attempt at pep001.c. It builds and runs correctly under Clang, but it fails under CC8. check-in: 176f2cabcd user: tangent tags: trunk | |
07:32 | Merged trunk improvements in check-in: 663aa632ee user: tangent tags: cc8-fixes | |
07:31 | Reordered the commands in cc8-tu56-update to collect all of the "send file" calls together. There is some kind of timing sensitivity in all of this which caused the previous method to truncate some of the files or even leave them empty. check-in: 308b654b57 user: tangent tags: trunk | |
06:42 | All of the users of class simh which were using "expect" regexes like '\.' to wait for an OS/8 prompt had to be changed to '\\.' because the string is double-interpreted, first by Python in a string formatting construct (printf(), kinda) and then again in a regex construct, so that without the doubled backslash it was just looking for ., meaning any character in RE-speak. Did the same for '\*' because that was reducing to *, meaning "zero or more of the previous", and without a "previous", it matched anything. This doesn't seem to fix anything; I found it trying to fix something else, which I hope to check in soon. check-in: f8d7dc89bf user: tangent tags: trunk | |
04:58 | Updated cc8.tu56 for new n8.c check-in: ddcbe1b779 user: tangent tags: cc8-fixes | |
04:34 | New n8.c from Ian Schofield, received via private email. We're stashing it here, expecting him to check in the same thing on the trunk later, at which point this branch will either merge or be closed. check-in: 48c808fd86 user: tangent tags: cc8-fixes | |
04:31 | Backed out Ian Schofield's improvements to src/cc8/os8/n8.c accidentally checked in as part of [d2f66e76b9]. Will check it back in on a branch, since we're waiting for Ian to check it in himself, both to ensure credit is given where due and so that he can describe what the change actually does in his own words. check-in: 51ecbfa05d user: tangent tags: trunk | |
03:25 | Documented the LF -> CR+LF handling in the header comment of ptp2txt.c and made other minor improvements to it. check-in: 0487e8ce1e user: tangent tags: trunk | |
2017-11-15
| ||
17:29 | Added Fetch LED item to the ChangeLog check-in: 69ae00927e user: tangent tags: trunk | |
17:25 | Turning off Fetch LED when in STOP or single-step state as we had been doing with Execute prior to this. Investigation of the PDP-8/I maintenance manual by Bill Cattey shows this to be correct. Closes [347ae454039]. check-in: 9ff851e459 user: tangent tags: trunk | |
16:41 | Clarified comment about the meaning of the optional "set remote telnet 3141" SIMH setup command in teco-pi-demo. check-in: 4ab764f2cf user: tangent tags: trunk | |
16:35 | Gave up on trying to fix the %lld/%zu issue in d8tape/main.c portably. Just going with the one that builds without warnings on the supported version of Raspbian, then turning off the warning so it doesn't appear on platforms that really want the other form. We're not seriously going to be stressing the local integer size anyway; the compiler is just being pedantic here. check-in: cd094984d4 user: tangent tags: trunk | |
04:00 | Subtle nomenclature changes to comments. Totally cosmetic, but slightly more accurate. check-in: ecb612b614 user: poetnerd tags: trunk | |
2017-11-14
| ||
18:24 | More ChangeLog.md updates check-in: f14a91f551 user: tangent tags: trunk | |
18:13 | Assorted improvements to the new lowercase I/O section of the ChangeLog check-in: b46a2c515c user: tangent tags: trunk | |
17:52 | Another attempt at fixing the printf() complaint in d8tape/main.c. This one should be more portable than the last. check-in: 750c63b0a1 user: tangent tags: trunk | |
09:34 | cc8-tu56-update tells class simh it's okay to run without front panel control. check-in: 9b34e6443c user: tangent tags: trunk | |
09:13 | Fixed a crash in one of mkos8's exception handlers. check-in: b6acd6291c user: tangent tags: trunk | |
09:12 | "mkos8 patch" no longer tries to apply patches to FORTRAN II and FORTRAN IV files if the corresponding --disable-os8-fortran-* options were given to the configure script. check-in: f4d3cf118a user: tangent tags: trunk | |
08:54 | Reworked the CC[0-2].SV copy command in cc8-tu56-update so that it skips CCL.SV, thus avoiding the hole in the resulting DECtape image. check-in: d2f66e76b9 user: tangent tags: trunk | |
08:36 | Rewrote the code in mkos8 emitting DEL foo.SV commands as part of --disable-fortran-ii processing so that only one command goes to the simulator, which runs faster and logs nicer. check-in: ff1e1c0545 user: tangent tags: trunk | |
08:27 | Small Python style tweak check-in: 0db3c5fc38 user: tangent tags: trunk | |
08:13 | Giving --disable-os8-fortran-ii now leaves out LOADER, LIBSET, and SABR. Because the OS/8 version of CC8 depends on LOADER and SABR, it also implicitly sets --disable-os8-cc8. check-in: 648ea9921c user: tangent tags: trunk | |
07:11 | Running cc8-tu56-update on a Pi 3 gives a different result than running it on a macOS box using the *.s files produced on the Pi 3. Not sure why, but of the two, the result on the Pi 3 is more trustworthy, so using that one. check-in: 7d73c6e8e5 user: tangent tags: trunk | |
06:54 | Removed the getchar() call near the end of main() in the cc8 cross-compiler. It blocks cc8-tu56-update, and we don't want to add a "send CR" bit to the script just to placate it. check-in: 96b6cef0c3 user: tangent tags: trunk | |
06:50 | Fixed COPY commands near the end of cc8-tu56-update: they weren't grabbing everything we thought they should. Also removed CCL.SV, inadvertently copied to the tape by the CC?.SV pattern. check-in: 0eaba4e478 user: tangent tags: trunk | |
06:33 | Initial version of tools/cc8-tu56-update complete, which updates media/os8/subsys/cc8.tu56 from the contents of src/cc8. The latter is now much smaller than before, since we no longer include the intermediate files: all *.SB and most *.RL. The only exception is LIBC.RL, which the linking step needs when building end-user programs. check-in: 4e67bbdfaf user: tangent tags: trunk | |
06:30 | Rewrote src/cc8/examples/calc.c for clarity. It could be better, but it doesn't build and run properly as-is, so I've stopped here, waiting for improvements to the C compiler. check-in: 832db28e22 user: tangent tags: trunk | |
06:29 | Fixed a bug in src/cc8/examples/fib.c which caused junk output check-in: 18ebdc34e4 user: tangent tags: trunk | |
06:28 | Several small tweaks to src/cc8/examples/README.md check-in: c6ea800ac1 user: tangent tags: trunk | |
06:26 | URL fix in previous check-in: 0981e043d7 user: tangent tags: trunk | |
06:25 | Many improvements to the new src/cc8/examples/README.md file. check-in: d454056d80 user: tangent tags: trunk | |
06:24 | Reverted the LF -> CRLF change in media/os8/init.tx.in, since autosetup just reverts it when creating init.tx. Instead, modified txt2ptp to turn LF input into CRLF output. I chose this instead of running a "dos2unix" type program on the files from simh.os8_send_file() because there is no standard for the name of such a program. Since our txt2ptp filter has to be involved anyway, we might as well give it the job. check-in: 6653eac20e user: tangent tags: trunk | |
06:06 | Reworked the stock init.tx.in file to use lowercase, now that it's allowed, and to have DOS line endings now that it's being copied in as-is, rather than filtered through mkos8, which implicitly converts the line ending style. check-in: 93f3beed61 user: tangent tags: trunk | |
06:01 | Rewrote simh.os8_send_file in terms of txt2ptp and SIMH paper tape attachment and read-in. It's faster, it works with much larger files, and it doesn't fold lowercase input. check-in: 69766295e7 user: tangent tags: trunk | |
04:35 | The top-level "run" target no longer depends on the build RK05 media because we need to be able to use it to run whatever's built, even if it's technically out of date. The thing we're working on now modifies the RK05 disk images, and we need to then be able to say "make run" to examine what it did without having the work overwritten. check-in: b4e684c40a user: tangent tags: trunk | |
03:49 | Moved another part of the "send file to OS/8" process from mkos8 to simh.os8_send_file(). check-in: 12dd946f7a user: tangent tags: trunk | |
02:14 | Collected the CC8 example and test programs into src/cc8/examples and wrote a more extensive README.md for them based on the old src/cc8/examples/README.md file. check-in: 9cf664a25e user: tangent tags: trunk | |
01:44 | Added another libc.h symlink check-in: c787c0ca0a user: tangent tags: trunk | |
00:17 | Factored the "send INIT.TX" step of mkos8 out as simh.os8_send_file() so we can reuse it in another script. check-in: b14acea3cd user: tangent tags: trunk | |
2017-11-13
| ||
23:28 | Fixed some code in the #include handling of CC8 which relied on undefined behavior. The replacement is actually simpler than the original, because the function using UB reduces to a no-op except on CP/M, which of course we don't care about. check-in: c548671ea0 user: tangent tags: trunk | |
23:18 | Added a redirect-to-top[ Makefile.in to src/cc8/os8, since you have to be cd'd into that directory to build the OS/8 compiler, so you want to be able to say "make" from there. check-in: a388b49124 user: tangent tags: trunk | |
23:12 | Added libc.h symlink to src/cc8/os8 directory pointing at ../include/libc.h since CC8 assumes a flat filesystem. check-in: 5fe720a649 user: tangent tags: trunk | |
2017-11-12
| ||
07:40 | Small refinements to test-mkos8 check-in: ce3acfd9bd user: tangent tags: trunk | |
07:22 | Added output reporting to test-mkos8. check-in: 3243380301 user: tangent tags: trunk | |
06:18 | Briefer output from test-mkos8. check-in: 97d4065304 user: tangent tags: trunk | |
04:43 | The method we were using for comparing lz4-compressed RK05 disk images in test-mkos8 only works if lz4 on the generating system and the test system give the same output for the same input, but this appears not to be the case between macOS 10.12 and Raspbian Stretch, likely due to improvements in the compression algorithm or compression defaults between the two versions in use. Therefore, instead of doing a binary comparison of the rklz files, we now decompress the rklz files and compare those outputs using a new tools/cmplz script which test-mkos8 calls. check-in: 8d51be13c7 user: tangent tags: trunk | |
04:13 | Still more test-mkos8 sanitize_log() RE fixes check-in: 5b9d507ff0 user: tangent tags: trunk | |
04:06 | More tweaks to regexes in test-mkos8 check-in: 33a1b89e49 user: tangent tags: trunk | |
03:34 | Fixed regexes in sanitize_log() in test-mkos8 and rewrote them as commented Extended REs. check-in: 42c31eadd0 user: tangent tags: trunk | |
01:41 | Improvements to sanitize_log() in test-mkos8. check-in: aa6e92da63 user: tangent tags: trunk | |
01:22 | Small adjustments to new test-mkos8 color output. check-in: f2bd9d0a7a user: tangent tags: trunk | |
01:14 | Colorized the test-mkos8 pass/fail result line so it's easier to see. check-in: 0ab8609fa6 user: tangent tags: trunk | |
00:35 | Merged trecent changes from test-mkos8-pinned into trunk. check-in: 5160d2a336 user: tangent tags: trunk | |
00:26 | mkos8 was reading init.tx from dirs.os8mi, which is in the source tree, not the build tree, so the recent change to test-mkos8 to write a neutral init.tx file was not doing anything useful. This removes the reason for this branch, so I'm closing it now. Closed-Leaf check-in: 5111887856 user: tangent tags: test-mkos8-pinned | |
00:20 | Assorted minor fixes to test-mkos8 check-in: 6377e01ab5 user: tangent tags: test-mkos8-pinned | |
2017-11-11
| ||
23:59 | test-mkos8 now overwrites init.tx with a neutral replacement so that tests made on one machine can be compared to those performed on another. check-in: 68de63f2c8 user: tangent tags: test-mkos8-pinned | |
06:21 | Merged in trunk changes. The original reason for this branch just disappeared, to be replaced by a new one: the test results can only be compared between two identical checkins because of the INIT.TX file, but that just means we now need to use this branch to pin a particular version in place. Thus, we might as well bring the recent trunk changes in and start again. With test-mkos8 -es, we don't need to regenerate the entire test corpus to learn useful things. check-in: 111c244601 user: tangent tags: test-mkos8-pinned | |
05:55 | test-mkos8 saves the mismatched rklz file if the test doesn't pass check-in: 2147ab88c0 user: tangent tags: test-mkos8-pinned | |
05:07 | Renamed test-mkos8 -s option to -1 and implemented -e and -s, which together allow Monte Carlo testing on a subset of the test corpus. This is on a branch because the current test corpus was generated before the change to 3-column DIRECT output in generated OS/8 disk images, which changes the disk contents and log contents. Thus, we need to do this development on a branch stemming from the last checkin before that change and any possible later ones, until we're ready to regenerate the test corpus. check-in: 47217f7552 user: tangent tags: test-mkos8-pinned | |
04:20 | Fixed a bug in the way teco-pi-demo was starting the simulator introduced along with the recent "ignore GPIO lock failure" stuff for mkos8. check-in: c0788fcd5c user: tangent tags: trunk | |
04:05 | Made second parameter to class simh's ctor optional, as the comments claim, so that teco-pi-demo will run again. check-in: 846340d3d1 user: tangent tags: trunk | |
02:30 | The new "throw exception on GPIO failure" feature added to prevent teco-pi-demo from colliding with other simulator users broke mkos8 under the collision case. (Not otherwise.) It is now possible to tell class simh whether this condition is considered fatal or not. check-in: 7e16fe3b23 user: tangent tags: trunk | |
02:17 | Added a #include to src/d8tape/d8tape.h to placate the GCC on Raspbian Stretch. check-in: 17be5b5dd8 user: tangent tags: trunk | |
02:16 | Integrated Robert Krten's d8tape host-side disassembler. It is the version distributed [here][1] with the following changes: 1. A trivial warning-squishing change 2. Using our own build system instead of the given `Makefile`. This also means no automatic version number bumping. 3. The `LICENSE` file is replaced with `src/d8tape/LICENSE.md`, containing the salient content of a private email message from Robert Krten granting more liberal use of the program than in the original license. [1]: http://dustyoldcomputers.com/pdp-common/reference/host/ check-in: 24d387ee4e user: tangent tags: trunk | |
01:25 | Added "SET TTY COL 3" to mkos8 to give 3-column DIRECT listings, like the old os8.rk05 did. This checkin will cause a binary change to all RK05 bin disks created by mkos8; thus the new tag on checkin [fe441b85b]. check-in: 676330e2d9 user: tangent tags: trunk | |
00:58 | The icky "sleep" call in teco-pi-demo wasn't long enough to always fix the SIMH "cont" problem. Doubled it; we'll see if that fixes it in all cases. check-in: 95df7e245b user: tangent tags: trunk | |
00:44 | Class simh now throws an exception when the GPIO is locked at simulator start time. If this happens, teco-pi-demo exits with an error and mkos8 just grouses a bit; the difference being, teco-pi-demo really needs the display and mkos8 really doesn't. Applying tag "test-mkos8-mark" to this release because a change a bit down the timeline breaks all of the test-mkos8 outputs so far, so we need to be able to return to this checkin symbolically until we're done using that test corpus. check-in: fe441b85b4 user: tangent tags: trunk | |
2017-11-01
| ||
06:46 | Including a comparison to our guess at the average IPS rate for a PDP-8/I in the teco-pi-demo -b output. check-in: 4c68402d93 user: tangent tags: trunk | |
05:58 | Updated hardcoded RPi B+ constant in the pidp8i.ips module based on actual test results. check-in: ab68fa4e64 user: tangent tags: trunk | |
05:04 | ChangeLog updates check-in: 9ec0b6f43f user: tangent tags: trunk | |
04:53 | Replaced the broken calculation for simh._kbd_delay with a new one based on the new pidp8i.ips module, potentially modified by teco-pi-demo -b. The previous version had a Python bug in it that caused no delay at all to be applied between OS/8 keystrokes, which probably means it would only work reliably on sufficiently fast host machines. This one doesn't change the per-test build time all that much, but it will add increasing amounts of keyboard delays on slow hosts, as is appropriate. check-in: 2211503b72 user: tangent tags: trunk | |
04:51 | More refinement to the INFILES and OUTFILES stuff in Makefile.in check-in: fe265b4e07 user: tangent tags: trunk | |
03:50 | Better solution to the problem of parallel make after touching *.in causing parallel reconfigures, one copy for each file in INFILES. check-in: 27766013ab user: tangent tags: trunk | |
03:04 | Added error diagnostics around making the rk05 copy to be patched. check-in: 2f669b050f user: poetnerd tags: trunk | |
02:48 | Fixed an error in Python namespacing introduced in [b80f275e25] check-in: 73fd0da382 user: tangent tags: trunk | |
02:45 | Python's File.write() apparently doesn't include a newline, though print() does. Grrrr. check-in: 40f1d966f5 user: tangent tags: trunk | |
02:43 | Comment improvement check-in: e2ece94c5d user: tangent tags: trunk | |
02:41 | Improved clarity of benchmarking results from teco-pi-demo -b and that of the underlying constants in the new pidp8i.ips module. check-in: 8b7f53c352 user: tangent tags: trunk | |
02:37 | Add error detection around the creation of the bootable OS/8 DECtape image. Sometimes the creation fails and blows something else out unexpectedly. check-in: 892c109447 user: poetnerd tags: trunk | |
02:26 | Added teco-pi-demo -b mode, which runs the demo for 10 seconds, then gets the IPS value from SIMH and appends it to a new Python module — pidp8i.ips — which initally gives a hardcoded value for a Pi 1, with the update giving the speed of the current hardware. check-in: 7a35b0cb16 user: tangent tags: trunk | |
02:14 | A short document providing help with our FORTRAN IV stuff. check-in: a4a06ba896 user: poetnerd tags: trunk | |
02:00 | Subsetted the INFILES list in Makefile.in to segregate the set that requires a mkos8 re-call from those that merely cause a reconfigure and build. As the INFILES list grew, more and more files irrelevant to mkos8 were included, increasing the chances of a pointless mkos8 build. check-in: c0987c9ee3 user: tangent tags: trunk | |
2017-10-31
| ||
15:23 | Updated TODO section in ChangeLog.md check-in: 1e64c48994 user: tangent tags: trunk | |
14:20 | test-mkos8 now builds and keeps os8v3d-patched.rk05 when not configuring with --disable-os8-patches. Previously, it was building and keeping the -bin disk regardless of this configuration option. check-in: e1a78b7930 user: tangent tags: trunk | |
04:22 | mkos8 contains in-line code to replace FORLIB.RL with the patched one on local.tu56. os8-patching.md documents this new state of affairs. check-in: 1fbbf7a508 user: poetnerd tags: trunk | |
03:19 | Added the 3 FORTRAN IV Source DECtapes. They came from Dave Gesswein's Archive, pdp8.net under misc_dectapes. The sources I've built seem reasonable. The DECtape part numbers match those for OS/8 V3D FORTRAN IV from the DEC Software Catalog. TODO: Write up what we have for FORTRAN IV in a doc file. check-in: a8ba68ef88 user: poetnerd tags: trunk | |
03:14 | Updated Fortran IV install: Move the tapes to the subsys directory. Tape #2 is not needed. It contains the source files for the FORLIB.RL run time library. TODO: Add in the source DECtape images to the repository. check-in: 16d14955b5 user: poetnerd tags: trunk | |
03:12 | Added files necessary for mkos8 to integrate patch FORLIB-51.10.1M.patch8. As per instructions in that patch, a new DLOG.RA has been made with one source line change. DLOG.RA was assembled with RALF into DLOG.RL. LIBRA was used to make an updated FORLIB.RL DLOG.RA and FORLIB.RL are on local.tu56. DLOG.RA in the patch directory is a redundant copy of that file. TODO: Add logic in mkos8 under patches to replace FORLIB.RL with the updated one if BOTH with-os8-fortran-iv AND with-os8-patches are set. check-in: 87aa1be986 user: poetnerd tags: trunk | |
02:34 | Discovered a typo in the patch, AND that some OCR mistakes had been missed. Both are fixed now. TODO: Codify this patch into something mkos8 can work with. check-in: 69ce06acaf user: poetnerd tags: trunk | |
2017-10-28
| ||
21:52 | Uncommented the OS/8 SQUISH commands at the end of the make_patch function in mkos8. check-in: 887632c998 user: tangent tags: trunk | |
13:57 | Added "*Can* You Release Yet?" section to the release process doc check-in: b7b312b222 user: tangent tags: trunk | |
2017-10-27
| ||
09:17 | With the final (?) bugs squished in the parallel version of test-mkos8, merging it into trunk. check-in: 4fc0e64aff user: tangent tags: trunk | |
09:16 | Fixed a path bug that caused test-mkos8 to write finished test results to the wrong directory. That in turn caused subsequent runs to re-do tests already completed because the results weren't where it expected to find them. Closed-Leaf check-in: b513069b4c user: tangent tags: parallel-test-mkos8 | |
09:15 | Added test-mkos8 -v flag, enabling several new messages that explain what it's about to do. check-in: dad526a6ff user: tangent tags: parallel-test-mkos8 | |
08:54 | Fixed the last few problems preventing test-mkos8 from running multiple builds in parallel. check-in: db37af582e user: tangent tags: parallel-test-mkos8 | |
08:47 | Though we hacked tools/version to make it print a dummy version string when running under tools/test-mkos8, it didn't exit afterward, so it continued to run the code that was causing the problem we added the workaround to avoid! check-in: 3213505810 user: tangent tags: parallel-test-mkos8 | |
08:41 | The bootable-*.tu56 copy of the OS/8 boot tape created by mkos8 to avoid modifying input media is now being created in dirs.os8mo instead of os8mi, since the latter is shared among the children of test-mkos8, which means that when one of them deletes their temporary copy of this file, the copy used by all of them gets deleted. The file, being volatile, must go into each child's build directory. check-in: 0e8e159cf5 user: tangent tags: parallel-test-mkos8 | |
08:08 | Merged in trunk changes check-in: ded363caa7 user: tangent tags: parallel-test-mkos8 | |
07:52 | Added doc/class-simh.md. check-in: 69ad1727f5 user: tangent tags: trunk | |
06:31 | Updated TODO list in ChangeLog.md check-in: ccc510261c user: tangent tags: trunk | |
06:28 | Added tools/diffstat-since-release, a wrapper around "fossil diff" and "diffstat" which presents a bar graph displaying how the current version differs from the tip of the release branch. It doesn't show stats for files that don't exist on the release branch, only for files in common between the two, due to the limitations of the diff format. check-in: f4025603f4 user: tangent tags: trunk | |
06:26 | A few *.pa files under cc8 were left behind when we moved that directory under src. Reunited them with their worried siblings. check-in: 397defb48b user: tangent tags: trunk | |
06:17 | Merged two near-duplicate ChangeLog.md entries check-in: 538f5c1453 user: tangent tags: trunk | |
06:12 | More ChangeLog.md tweaks check-in: 372b920c51 user: tangent tags: trunk | |
06:07 | Updated ChangeLog.md check-in: 5315b0d947 user: tangent tags: trunk | |
05:46 | The generated 0.script and run.script files now reference the -bin or -patched disk depending on whether --disable-os8-patches was given to the configure script. check-in: 8e59a04d7c user: tangent tags: trunk | |
05:20 | Merged in trunk changes check-in: 16f6e36f5c user: tangent tags: parallel-test-mkos8 | |
05:16 | Extended module search path for teco-pi-demo the same way we did some time back for mkos8 so that when building out-of-tree, it doesn't go looking for autosetup-written files like lib/pipd8i/dirs.py under @srcdir@. check-in: fdc0fa387c user: tangent tags: trunk | |
05:14 | Reworked the dirs.py module so that dirs.media now points to the "media" directory only, not to "media/os8". Then added dirs.os8mi and dirs.os8mo for the mkos8 input and output directories, respectively, and adjusted mkos8 and teco-pi-demo accordingly. check-in: 6e102afa3a user: tangent tags: trunk | |
04:54 | Using dirs.os8 instead of dirs.media in teco-pi-demo, and fixed the "make install" step that adjusts libs/pidp8i/dirs.py in the installation tree to allow this to work. check-in: aa66ed7ae9 user: tangent tags: trunk | |
04:41 | teco-pi-demo now seeks out the os8v3d-bin.rk05 disk intelligently, using the one in bin when run from a development tree, else using the one in dirs.media if run from the install tree. check-in: 2f68149c21 user: tangent tags: trunk | |
04:33 | Replaced most of the command output from "make install" with echo calls explaining what each step does. check-in: 37cd3f3b62 user: tangent tags: trunk | |
04:26 | More adjustments to "make install", primarily getting teco-pi-demo installed by generalizing the steps we were previously taking for the bin/pidp8i script. check-in: c24e154589 user: tangent tags: trunk | |
04:16 | Assorted fixes to "make install" for the out-of-tree build case. check-in: 2204c9f1d5 user: tangent tags: trunk | |
03:36 | One of the steps in "make install" didn't get updated when moving the cc8 tree under src. check-in: 4b75bd0c36 user: tangent tags: trunk | |
03:15 | One of the changes in [2d6184c3c9] moves "src" to the end of the directories processed by mkadrules at configure time, but mkadrules itself was writing another version of the "src" rule set to the beginning of adrules.mk for the out-of-tree case, which also needs to move to the end of the file for the same reason. check-in: a658bdb074 user: tangent tags: trunk | |
03:06 | Removed -w flag for src/PDP8/*.c: turns out to be unnecessary on Clang 9.0.0 (macOS 10.12) and GCC 6.3.0 (Raspbian Stretch). If later testing shows a need for something like this, we should probably put back -Wno-foo flags instead on a case-by-case basis. Turning off all warnings was an overreach. check-in: b54c70e41b user: tangent tags: trunk | |
03:01 | palbart now builds with -g or -O2, depending on the --debug configure script flag. check-in: 2bee0290e3 user: tangent tags: trunk | |
02:58 | Reworked the CFLAGS option handling so that we don't use the CFLAGS made for pidp8i-sim, which are entirely inappropriate for the cc8 cross-compiler. check-in: 3731a81320 user: tangent tags: trunk | |
02:44 | Moved cc8/* under src, as we recently did for palbart. check-in: 2d6184c3c9 user: tangent tags: trunk | |
02:18 | Another tweak to the table of input and output files in examples/README.md check-in: d922cf60d8 user: tangent tags: trunk | |
02:16 | Added *.script to the table of outputs from the palbart + mkbootscript process. check-in: 9c32f877ae user: tangent tags: trunk | |
02:07 | Added Option 4 section to examples/README.md check-in: 0a5f2b6a45 user: tangent tags: trunk | |
02:01 | Removed a stray sentence fragment from examples/README.md. check-in: bc5ccc898f user: tangent tags: trunk | |
02:00 | Added "Because" column to the table in the "Option 2" section of examples/README.md, explaining why each SR setting is correct. check-in: be4bd24fa0 user: tangent tags: trunk | |
01:52 | Minor fixes to the BASIC section of examples/README.md check-in: dd1af61f28 user: tangent tags: trunk | |
01:49 | Merged in trunk changes check-in: 1d21cdd108 user: tangent tags: parallel-test-mkos8 | |
01:35 | Fixed a dangling link check-in: 0a62c635b9 user: tangent tags: trunk | |
01:07 | Comment improvements check-in: fc5952a615 user: tangent tags: trunk | |
01:03 | Moved palbart subdir under src and rewrote its Makefile.in rules to use the new mkadrules mechanism. check-in: 47600227b0 user: tangent tags: trunk | |
00:33 | 0.script now runs against the "-patched" disk image, not the "-bin" disk. check-in: 199f3e32cb user: tangent tags: trunk | |
00:26 | Added simh-update and publish-os8 steps to the release process document. check-in: 89f6513e25 user: tangent tags: trunk | |
00:12 | Changed all "<a name" tags to "<a id" in README.md: strictly speaking, the "name" attribute isn't legal any more in HTML5, though all browsers still understand it. We've taken to using "name" only for fragment aliases, with "id" being the primary identifier. check-in: 6571cc1290 user: tangent tags: trunk | |
00:02 | Added tools/publish-os8, which publishes bin/os8v3d-*.rk05 as unversioned files, so that people not running the current PiDP-8/I software can download the RK05s generated by mkos8. check-in: 3542ea0c36 user: tangent tags: trunk | |
2017-10-26
| ||
23:53 | mkos8 now writes *.rk05.save to bin, not to media/os8. check-in: d61163b731 user: tangent tags: trunk | |
2017-10-25
| ||
23:18 | Merged in trunk changes check-in: 78467c8474 user: tangent tags: parallel-test-mkos8 | |
20:03 | A few more fixes to os8-patching.md check-in: f446947b4b user: tangent tags: trunk | |
20:00 | Polishing pass on doc/os8-patching.md check-in: 0aeaa09d3b user: tangent tags: trunk | |
19:37 | Re-running "mkos8 bin patch" on "make" when the patch_list.txt file changes. (And only when "patch" is given to mkos8!) check-in: f7344dc4f1 user: tangent tags: trunk | |
18:53 | URL fix check-in: ca07fe47e7 user: tangent tags: trunk | |
18:53 | More README.md improvements check-in: 44a8cafb81 user: tangent tags: trunk | |
2017-10-24
| ||
13:55 | Still more README.md tweaks check-in: 720dd754b7 user: tangent tags: trunk | |
13:50 | More README.md clarifications. check-in: c74aab947b user: tangent tags: trunk | |
13:46 | Clarity tweak to previous check-in: e8544cca8f user: tangent tags: trunk | |
13:43 | More work to the Prerequisites check-in: b81857e17a user: tangent tags: trunk | |
13:40 | Assorted improvements to the Prerequisites section of the top-level README.md file. check-in: aeab136fea user: tangent tags: trunk | |
13:09 | Added .agignore (for ag v1) and symlinks to .ignore (for ag v2) to make ag skip large binary files that cannot possibly contain greppable information. check-in: 18a9cc5a8b user: tangent tags: trunk | |
12:30 | Fixed "Squeeze" -> "Stretch". Debian Squeeze was 6.0, from 2011. :) check-in: 5dadc45e3a user: tangent tags: trunk | |
2017-10-23
| ||
15:46 | Reworked the --enable-os8-vtedit description in the top-level README.md file. check-in: b0a6241a36 user: tangent tags: trunk | |
15:20 | A bit more detail in the new "Unpacking" section of README.md. check-in: a14b453c03 user: tangent tags: trunk | |
15:16 | Fixed an ambiguous Markdown named link in README.md. check-in: 1dddd5a673 user: tangent tags: trunk | |
15:15 | Added two more options to the new "Transferring" section of README.md. check-in: a3d60d598e user: tangent tags: trunk | |
15:10 | Added "Getting the Software onto Your Pi" and "If You Need More Help" sections to the top of the top-level README.md file. check-in: 79f7b127a9 user: tangent tags: trunk | |
14:35 | Recharacterized the "upstream release" as the "old stable distribution" in the top-level README file. check-in: de86c711db user: tangent tags: trunk | |
04:37 | I thought I checked these changes in already. Sigh. This puts all the patches, even the ones not to apply in the list with appropriate summary annotations. check-in: 8d5c4ee2e2 user: poetnerd tags: trunk | |
03:52 | Added a commented-out "set remote telnet=3141" SIMH command to teco-pi-demo so that those wanting to fiddle with the simulator while the demo runs can do so without reading the SIMH manual. Whether they'll read the code and avoid bugging me about it is an open question. check-in: 86214e8626 user: tangent tags: trunk | |
03:50 | Increased the number of digits to calculate in teco-pi-demo to the maximum value that doesn't crash TECO8, determined by experiment. This ensures that the demo runs as long as possible, so users don't have to keep restarting it. With the prior value, that would have happened after about 2-3/4 years, not unreasonable for a PiDP-8/I running purely as an objet d'art. check-in: 2d4085c0b4 user: tangent tags: trunk | |
01:05 | Put args.debug stuff back into mkos8, reverting part of [9663cf4b750]. Not sure why it was failing on Bill's machine, but it works here. check-in: 81f6f42e86 user: tangent tags: trunk | |
00:51 | Checkin [96fb10bbd3] was supposed to fix an accidental lowercasing... which actually happened in that checkin! Apparently it happened during the editing session, since the checkin did not completely revert the problem. check-in: b5ab11471d user: tangent tags: trunk | |
2017-10-22
| ||
23:08 | Adding OVDRV patch for completeness. Updating patching.md with a few tweaks. mkos8: Make OS/8 command parse error a fatal error. Temporary change: The args.debug stuff didn't work for me. Kluding it out. check-in: 9663cf4b75 user: poetnerd tags: trunk | |
20:49 | Discovered that PAL8-21.22.4M analogously to ABSLDR-21.29.1M, is actually against the OS/8 V3D Extensions version, and BREAKS PAL8's ability to generate listing output. That problem is now documented and the patch is disabled. check-in: 3e3e10993f user: poetnerd tags: trunk | |
14:31 | Niggly typos and cleanups. check-in: 7a86dc37fb user: poetnerd tags: trunk | |
04:35 | Complete first draft with formatting. check-in: a6abb8204e user: poetnerd tags: trunk | |
03:22 | Snapshot. More formatting improvements. (Halfway done, I think.) check-in: 8e7cc0f0ab user: poetnerd tags: trunk | |
03:02 | Added the new pidp8i-test keyboard controls to doc/pidp8i-test.md. check-in: 44794b7b5f user: tangent tags: trunk | |
03:00 | The code in pidp8i-test which was supposed to allow for uppercase R or X keystrokes to behave the same as r or x didn't work. Apparently this section of code got lowercased somehow. check-in: 96fb10bbd3 user: tangent tags: trunk | |
2017-10-21
| ||
23:20 | improved formatting. check-in: 042195c724 user: poetnerd tags: trunk | |
22:42 | First draft of documentation on OS/8 Patching. check-in: ac1f73e6cc user: poetnerd tags: trunk | |
2017-10-20
| ||
18:53 | There was a typo: ".GET SYS TECO" was ". GET SYS TECO" The patch failed to load TECO into core, but happend to have TECO in core from the previous patch run. I guess I should make "failed OS/8 command parse" a fatal error. check-in: f410b7a38a user: poetnerd tags: trunk | |
16:54 | Added "patches" item to the ChangeLog. check-in: d26180a507 user: tangent tags: trunk | |
16:51 | Documented --disable-os8-patches. check-in: b3af2847e7 user: tangent tags: trunk | |
16:23 | Removed an unused function from mkos8, and did some whitespace and comment tweaks. check-in: 4a64ffe7ce user: tangent tags: trunk | |
16:01 | Suppressed most of the ODT/FUTIL patch application debugging messages in mkos8 by default. Added a --debug flag to re-enable them. This is distinct from --verbose in that the latter swaps the SIMH logging from sending to a log file to sending to stdout, which in turn suppresses most other output from mkos8. We might want to rethink these two options, combining them somehow to avoid the new confusion. check-in: 66b56643e4 user: tangent tags: trunk | |
15:36 | Added configure --os8-patches flag, default on. When set, calls "mkos8 bin patch" instead of just "bin". check-in: adaef3c96e user: tangent tags: trunk | |
15:06 | Merged mkadrules branch into trunk: all the .c.o and .c.d rules are generated at configure time instead of being hand-maintained in Makefile.in. This also moves the CC8 *.[od] files to obj/cc8/cross, mirroring the source tree structure. This simply removes an idiosyncratic difference between the previously hand-maintiained rule sets, a natural outcome of generating them from a single template rule set. check-in: cdd09a6093 user: tangent tags: trunk | |
14:57 | Reverted delegation of creation of the obj subtree dirs to mkadrules: better done by extending BUILDDIRS in Makefile.in. Closed-Leaf check-in: c2bc715e2c user: tangent tags: mkadrules | |
14:40 | Deferred relacement of "SRCDIR" in mkadrules until the last moment in case we're building out-of-tree and $srcdir contains "src/" to avoid unintended string replacements. check-in: d74f2616c5 user: tangent tags: mkadrules | |
14:26 | Fixed a command line sanity check in mkadrules for the out-of-tree build case. check-in: 72986ccf05 user: tangent tags: mkadrules | |
14:21 | Minor improvements to the .o and .d generation and cleanup bits in Makefile.in. Not really related to the mkadrules mechanism, but I noticed the weaknesses while working with it. check-in: 4768cc8794 user: tangent tags: mkadrules | |
14:10 | Reworked CC8_OBJS to work with new mkadrules obj subdirectory scheme. check-in: 1ba04c2424 user: tangent tags: mkadrules | |
14:08 | Switched from mkdir() to make_path() in previous to allow obj/cc8/cross to be created. Like mkdir(1), Perl's mkdir() won't recurse. check-in: 18d508e685 user: tangent tags: mkadrules | |
13:57 | Moved generation of obj/* subdirs to mkadrules from auto.def. check-in: 5325bc575b user: tangent tags: mkadrules | |
13:49 | The repeated autodependency .c.o and .c.d Makefile rule sets are now generated as adrules.mk by tools/mkadrules, which will avoid the sort of regression fixed in [83b73930ec]. check-in: a818a27648 user: tangent tags: mkadrules | |
12:11 | The changes in [a6c3123bff] to the obj/PDP8/*.o Makefile rules to allow out-of-tree builds caused dependency ordering problems on the Pi, though not on macOS for some reason. The prior fix did not change all obj/*.d type paths to obj/PDP8/*.d, which confused the autodep mechanism. Problem noticed by Phillip Porch on the mailing list, with a provisional patch, extended by me. check-in: 83b73930ec user: tangent tags: trunk | |
03:58 | mkos8: Close patch files when done with them. (minor housekeeping oops) Rudimentary FUTIL support now supports the 4th PAL8 patch. Discovered the ABSLDR patch supplied is just wrong. It's for a version of ABSLDR we don't have and which exists on the OS/8 V3D Device Extensions kit, which is rare, and not yet visible in the archives I've scoured. TODO: 1. MACREL and LINK patches. 2. Decice what to do about the patches that require very different application: FORLIB 51-1-01M is a source patch that would require a batch script. Same with OVDRV 40.6.1M. LQP 21.49.1 runs BUILD in a batch script which is actually not possible unless you have the version of BUILD unique to the OS/8 V3D Device Extensions kit. check-in: 241d6b4a25 user: poetnerd tags: trunk | |
00:09 | Clarified example commentary in the U/W FOCAL supplement check-in: 066aaa6b7c user: tangent tags: trunk | |
2017-10-19
| ||
21:25 | 44 Patches, all but one verified against source. The one un-verified one is for FRTS.SV, which is recommended. I just cant figure out how to build FRTS from source to verify it. mkos8 successfully applies them all. patch_list.txt names all patches, comments out non-recommended ones and says why. check-in: 1bec0d528f user: poetnerd tags: trunk | |
2017-10-18
| ||
20:41 | Reverted Unix -> DOS line ending change for src/*.in: autosetup blindly assumes Unix line endings and emits mixed line endings when *.in has DOS line endings as it passes input CRs through on lines it doesn't touch and fails to include a CR on the lines it rewrites. The symptom is that you get a confusing compiler error in gpio-common.c. check-in: 860fd189d5 user: tangent tags: trunk | |
2017-10-15
| ||
23:46 | Refined patcher. Successfully applies about 40 of the 56 patches. TODO: Verify the successful patches at source code level. Get the rest of the patches to apply. check-in: 7278e6aceb user: poetnerd tags: trunk | |
22:30 | Backed out [1e62781bcd0]: it added a guard for a condition that apparently cannot fail, so it's useless at best and may be masking the real problem now at worst. check-in: f396fbb736 user: tangent tags: trunk | |
22:18 | Whitespace tweaks in Makefile.in check-in: 26f03607d2 user: tangent tags: trunk | |
22:11 | The dependency of bin/*-focal.pt on txt2ptp wasn't expressed clearly enough, so whether they got built or not depended purely on whether make(1) decided to build ptp2txt and hard link it to txt2ptp before attempting it. check-in: 7f25f66583 user: tangent tags: trunk | |
22:06 | Suppressed the harmless warning about missing setcap on non-Linux hosts during "make install". check-in: b0790a69cb user: tangent tags: trunk | |
17:22 | ODT Patches now check old value and abort the patch if the actual contents do not match the expected contents. There is detection of "dont care" old contents as well. Added ability to comment out lines in patch_list.txt manifest file. TODO: 1. Add in a bunch of patches and try them out. 2. Add in support for other patches than ODT. 3. Make patching conditional in auto.defs. check-in: a5d1d41858 user: poetnerd tags: trunk | |
16:53 | Assorted fixes to parallel test-mkos8 check-in: 5797acc1f3 user: tangent tags: parallel-test-mkos8 | |
16:32 | Made the "get version string" mechanisms more durable in the face of multiple parallel instances, as now happens with parallel test-mkos8. check-in: c34a426eed user: tangent tags: parallel-test-mkos8 | |
15:49 | First pass at reworking mkos8-test to run $cores tests in parallel unless -s is given. Each test is built out-of-tree in test/tmp/$PID, so they don't interfere with each other. check-in: f5cad8d9f6 user: tangent tags: parallel-test-mkos8 | |
15:24 | Switched compression in test-mkos8 from lzma to lz4. check-in: 6addfa56e1 user: tangent tags: trunk | |
15:02 | Got out-of-tree building again with mkos8. check-in: a6c3123bff user: tangent tags: trunk | |
14:49 | Reworked the *.c -> *.obj Makefile rules a bit check-in: c7b2eced8d user: tangent tags: trunk | |
13:56 | Variable name tweaks in tools/test-mkos8 check-in: 3d31039cbd user: tangent tags: trunk | |
13:41 | Added -g and -n options to test-mkos8: generate test/* only and dry run, respectively. check-in: 303ad06d12 user: tangent tags: trunk | |
2017-10-14
| ||
11:18 | Squished perlcritic --harsh complaints check-in: 6d893bfd57 user: tangent tags: trunk | |
11:17 | Fixed or suppressed perlcritic --stern complaints about tools/test-mkos8. check-in: 4b0b26389b user: tangent tags: trunk | |
11:02 | Added license comment to test-mkos8 check-in: ec02b84400 user: tangent tags: trunk | |
10:32 | Forgot to check tools/test-mkos8 in. check-in: bf1158e040 user: tangent tags: trunk | |
10:29 | First version of the combinatoric tester. Implements [87abba4c08]. check-in: def9c30e0f user: tangent tags: trunk | |
07:57 | Applied the reverse fix to the previous checkin: when built for ILS and previously running with ILS suppressed, then switching from "ratio" throttle mode to an "IPS" throttle mode, re-enabling ILS. check-in: 141f201e85 user: tangent tags: trunk | |
07:48 | Merged NLS forcing in SET THROTTLE M/N mode (ratio mode). Closes [7d7eadd391] check-in: 3f1588e495 user: tangent tags: trunk | |
07:47 | The mechanism we were reusing to revert to NLS mode while built for ILS wasn't doing full-rate display updates. It didn't need to before because it was only used for STOP and single step/instruction mode. Now that we're also using it for SET THROTTLE=M/N (ratio mode) it differed substantially from "real" NLS mode prior to this fix. Closed-Leaf check-in: 1d600ecbe7 user: tangent tags: ratio-throttle-ils-disable | |
06:51 | Accidentally made a fix in the *.in output file, checking in the buggy version. check-in: f219177758 user: tangent tags: ratio-throttle-ils-disable | |
06:48 | First step toward disabling ILS when SET THROTTLE M/N is set. check-in: 70f50d2061 user: tangent tags: ratio-throttle-ils-disable | |
06:38 | The line to remove a prior sullied bootable OS/8 TU56 tape image in make_bin() within mkos8 wasn't checking whether it exists first. Calling os.remove() on a file that doesn't exist throws an exception, killing the program. (Clearly we two haven't been running without this file always existing from a prior run for quite some time, or have been missing this failure!) check-in: 1e62781bcd user: tangent tags: trunk | |
05:47 | Finished pass through UWFD. The supplement is therefore "done" for now. check-in: fcbd2f669a user: tangent tags: trunk | |
05:44 | Added "FOCAL Statement Functions" section to the supplement. check-in: 2348b30f17 user: tangent tags: trunk | |
03:14 | Basic patching with ODT works. First two Patches to EDIT.SV as requested in patches/patch_list.txt are applied correctly. TODO: Try more ODT patches. Implement support for "R EPIC" and "R FUTIL" check-in: f382a12204 user: poetnerd tags: trunk | |
02:39 | The bin/*.pt generation build rule added for examples/*.fc conflicted with the preexisting ones for asm/*.pal and examples/*.pal, which also produce bin/*.pt. (Conflicted twice in fact: once at the make(1) level and again in the output when the basename is the same. Consider examples/pep001.{fc,pal}.) Addded -focal and -pal tags to the output *.pt file names to break the conflict. check-in: e9954d80c5 user: tangent tags: trunk | |
02:26 | Added recently-created lib/{mkos8,pidp8i} dirs to INSTDIRS check-in: 3be8c3161e user: tangent tags: trunk | |
2017-10-13
| ||
20:21 | Added TODO section to ChangeLog, lining out what remains to be done before release. check-in: 2ce4e9cac6 user: tangent tags: trunk | |
20:07 | Assorted cleanups to the new "mkos8 patch" feature check-in: e8a468e8d6 user: tangent tags: trunk | |
19:51 | More ChangeLog entry reorganization so it flows from point to point better. check-in: 6f501ff071 user: tangent tags: trunk | |
19:49 | Moved the teco-pi-demo item down within the ChangeLog to be after the items describing the new OS/8 disk images. check-in: e2c09099b3 user: tangent tags: trunk | |
19:44 | Updated ChangeLog.md again check-in: f017f24272 user: tangent tags: trunk | |
02:59 | Four simple patch files for EDIT.SV, and a trial Manifest that names 2 of them. TODO: Verify these patches are sane. Verify that the patching will work safely. check-in: c4cb3a99bc user: poetnerd tags: trunk | |
02:58 | Fix bug in handling of "all": The "all" action should not be one of the things acted upon. Now we have "allowed acts" and "do_all_acts" that just has src and bin. Begin work on the patch maker: A manifest file will list the patch files. For each patch file, parse it and act on it. Parsing the patch file is fun! Create a degenerate state machine to control what we do when we're in a command. ODT is currently parsed. TODO: Connect the parsed stuff to calls out into OS/8. check-in: 1798cb2765 user: poetnerd tags: trunk | |
2017-10-12
| ||
14:08 | Worked around a Fossil Markdown processing limitation in the supplement. check-in: 4cc31ac3df user: tangent tags: trunk | |
14:04 | Moved the ZVR discussion up within the supplement to the newer "Command Overloading" section. check-in: 83e59af3a1 user: tangent tags: trunk | |
13:45 | Discovered a new Autosetup feature, write-if-changed. Rewrote the mkos8.opts mechanism for suppressing RK05 rebuild if the mkos8 options haven't changed in terms of it. Much shorter and clearer now. check-in: 26e5f1c5ee user: tangent tags: trunk | |
12:47 | Minor style tweaks to new teco-pi-demo check-in: 892f0be86b user: tangent tags: trunk | |
12:38 | Fixed a bug in mkos8 introduced by the "class simh" refactoring. check-in: cff76df975 user: tangent tags: trunk | |
12:34 | Added bin/teco-pi-demo check-in: a31a4428ee user: tangent tags: trunk | |
12:21 | Added lib to ctags list check-in: f5eed8086b user: tangent tags: trunk | |
12:12 | Renamed a few variables check-in: c9a3ed7fcf user: tangent tags: trunk | |
12:11 | Renamed sim.send() to simh.send_cmd() to be clearer about what it does and to bring it in line with send_os8_cmd(). check-in: 97f4e96d90 user: tangent tags: trunk | |
11:33 | Raised new simh class to a single-module library as well. check-in: 6837a49441 user: tangent tags: trunk | |
11:26 | Moved lib/mkos8/argparser/__init__.py to lib/mkos8/argparser.py. We don't need the extra directory layer: argparser isn't going to turn into a multi-module sub-library. check-in: 58babeb8b1 user: tangent tags: trunk | |
11:22 | Moved the dirs.py module out of lib/mkos8 into a new lib/pidp8i directory, since it really isn't mkos8 specific. (A later checkin will include another program that also uses it.) check-in: d66f92ce95 user: tangent tags: trunk | |
11:09 | Extracted class "simh" from mkos8 to collect all of the functions that call pexpect either to command SIMH or OS/8 *via* SIMH. Also threads that object instance through the mkos8 call chain instead of having everyone refer to a global, and cleans up the function naming to be a bit more self-consistent. check-in: 2af351187f user: tangent tags: trunk | |
10:06 | Found documentation for FRA() check-in: ffeac8fad3 user: tangent tags: trunk | |
09:45 | Added the "Command Overloading" section to the U/W FOCAL supplement. Added a top-level LIBRARY command section, as well as LIST and LOGICAL sections. Also moved the ZVR and FRA sections up to be just after these, as the group amounts to documentation of commands and functions not covered in The Manual. check-in: ad0e316bcd user: tangent tags: trunk | |
2017-10-11
| ||
21:11 | Clarified the line ending issue in the new "The Paper Tape Reader" section of the supplement. check-in: 4d893bc859 user: tangent tags: trunk | |
01:06 | Adjusted the header spacing on the new tratbl.fc example to line them up with the U/W FOCAL number formatting. check-in: 2fa0a6fae9 user: tangent tags: trunk | |
00:36 | Fixed the needless rebuild of the bin media on init.tx update due to reconfigure, and reworked the dependencies to prevent dual RK05 bin disk rebuilds when you run make with -j. check-in: 5c69c4a384 user: tangent tags: trunk | |
00:14 | Moved rationale from start of the supplement to the end, added an Introduction to the start, and added a References section. check-in: f24611b921 user: tangent tags: trunk | |
2017-10-10
| ||
23:36 | Small tweaks to previous check-in: 0ed7d97637 user: tangent tags: trunk | |
23:28 | Added a new section to the supplement, "The Paper Tape Reader", showing how to pull FOCAL programs in from simulated paper tape. Also created a mechanism similar to the examples/*.pal -> bin/*.pt, only for examples/*.fc by way of Bill's txt2ptp program. The new supplement section is written in terms of this mechanism, using a new example program, tratbl.fc. check-in: 964c647879 user: tangent tags: trunk | |
22:11 | Better PS/8 FOCAL, 1971 doc link check-in: ccb8d4b1b2 user: tangent tags: trunk | |
13:59 | Added links to other useful docs from the top of the U/W FOCAL manual supplement. check-in: 4b7ac1b089 user: tangent tags: trunk | |
13:45 | Decided to just remove "The Hard Way" from the U/W FOCAL manual supplement. Should a good idea for using a text editor on a FOCAL ASCII text file come up, we can pull the text back from Fossil and work it back into the doc. check-in: 4842ad6f5a user: tangent tags: trunk | |
13:40 | Small tweaks to the supplement check-in: def8113396 user: tangent tags: trunk | |
13:36 | Deferred discussion of why PLOT doesn't work from the PUNCH section of the supplement to the Missing Hardware section. check-in: 5f1883fd59 user: tangent tags: trunk | |
13:29 | Assorted improvements to the Rationale intro to the U/W FOCAL supplement. check-in: 9c4f011c44 user: tangent tags: trunk | |
13:22 | Linking from U/W FOCAL supplement to the "Submitting Patches" sub-section of HACKERS.md rather than to the top of the document. check-in: 85c587d7e4 user: tangent tags: trunk | |
13:15 | Factored "instdirs" target out of "install" so mediainstall can depend on it. Without this, you could type "make mediainstall install" and it would fail because the instdirs hadn't been built yet. This removes the need to care about the order of targets given. check-in: a631363b48 user: tangent tags: trunk | |
13:07 | Corrected new ChangeLog item about the -src RK05: it's built from 10 tapes, not 7. check-in: cc1d46e7c3 user: tangent tags: trunk | |
03:34 | Tiny nomenclature change: "DEC source tapes" would imply building from source. So the binary RK05 image was, in meticulous nomenclature built from, "DEC binary distribution DECtapes." Similarly "distribution DECtape(s)" was added further down the doc as appropriate. check-in: b2707f406f user: poetnerd tags: trunk | |
03:23 | Updates to the in-progress current ChangeLog.md entry check-in: 426d031a83 user: tangent tags: trunk | |
03:10 | Assorted tweaks to HACKERS.md check-in: fcf8e53b62 user: tangent tags: trunk | |
02:29 | Small fix to --disable-os8-fortran-ii. (Was attempting to delete FORT.SV from DSK:, not SYS:.) check-in: 28c643da36 user: tangent tags: trunk | |
02:24 | Calling SQUISH on SYS: and DSK: at the tail end of make_bin() in mkos8. check-in: b5ea0bca7f user: tangent tags: trunk | |
02:24 | Added --disable-os8-fortran-ii configure option check-in: 1370066ffe user: tangent tags: trunk | |
02:04 | Added --disable-os8-macrel configure option check-in: aaadf0d75c user: tangent tags: trunk | |
01:57 | Added --disable-os8-fortran-iv configure option check-in: 9b93db676b user: tangent tags: trunk | |
01:55 | Clarified documentation of --disable-os8-focal check-in: 6cbb6e2ede user: tangent tags: trunk | |
01:52 | Fixed a dependency cycle that could cause "make" to loop indefinitely via the autoreconfigure mechanism: it would touch some dependency of Makefile which would reconfigure, which would touch the dependency, which... check-in: b42be341cc user: tangent tags: trunk | |
01:13 | Reworked "make run" so that it runs OS/8 from bin, not the installation directory, so you don't have to "make install mediainstall run". check-in: 6d1cdc8426 user: tangent tags: trunk | |
01:03 | Added --disable-os8-src configure script option. check-in: 94b7dcf49e user: tangent tags: trunk | |
00:36 | Applied patch to autosetup from upstream issue #30 to prevent overwriting *.in outputs when the result wouldn't be different, thus forcing unnecessary rebuilds of the dependencies. Closes [9d55730778]. check-in: b218efa8cc user: tangent tags: trunk | |
00:27 | Permission fix on CC8 stuff installed to $prefix/share/include check-in: 400025e312 user: tangent tags: trunk | |
00:19 | Removed commented-out ADVENT initialization in mkos8 check-in: 0ef81bc574 user: tangent tags: trunk | |
2017-10-09
| ||
22:49 | Forgot to install the adventure setup file, ADVENT.IN on advent.tu56. So it kept thinking it was uninitialized. With that file in place, the code to run the dialog is no longer needed. I commented it out of mkos8. TODO: Delete the dialog code. check-in: cb498b03ba user: poetnerd tags: trunk | |
22:34 | Fixed teeny bug in cc8 cross compile install: Needed to add share/include to INSTDIRS in Makefile.in check-in: ac7cc70d71 user: poetnerd tags: trunk | |
18:40 | Added --os8-minimal configure option check-in: 839aa48f08 user: tangent tags: trunk | |
17:47 | Added --disable-cc8-cross configure option check-in: c33d5ece27 user: tangent tags: trunk | |
17:35 | Merged cc8-merge branch into trunk. This is happening after the merge of clean-os8-packs since the latter resolves the question of how we're going to merge Ian Schofield's nice and clean OS/8 installation + C with our previous os8.rk05. This merge therefore just gets us an alternate OS/8 bootscript and disk image plus the host-side compiler. check-in: 4fa2e4fdc0 user: tangent tags: trunk | |
17:24 | Fixed violations of the "DOS line endings" rule in src/*.in check-in: 20a02472af user: tangent tags: trunk | |
17:14 | Documented --disable-os8-init and editing init.tx.in. check-in: ceb4d912a2 user: tangent tags: trunk | |
05:55 | The two "Pasting Text in from a Terminal Emulator" sections of the supplement are now sub-sections of a single level 3 section. check-in: e3e1f90bfe user: tangent tags: trunk | |
05:48 | Added fourth reason we need the U/W FOCAL Manual supplement: the version we ship isn't identical to the version described in *any* of the primary source documents! check-in: 186f1c5d44 user: tangent tags: trunk | |
05:39 | Titled the upcoming release check-in: 39e66a40d7 user: tangent tags: trunk | |
05:36 | Another ChangeLog tweak check-in: 74537be12b user: tangent tags: trunk | |
05:30 | Minor tweaks to new v2017.10.xx ChangeLog check-in: 1530f3760f user: tangent tags: trunk | |
05:18 | Updated some doc URLs to point to the trunk branch now that clean-os8-packs has been merged in. check-in: 01dff30411 user: tangent tags: trunk | |
05:17 | Updated the ChangeLog to distill what's happened since v2017.04.04. We're not all that near a release point, but with the merging of clean-os8-packs into the trunk, it felt like a good time to summarize what's been happening these past few months. check-in: 854f35ecb6 user: tangent tags: trunk | |
03:19 | mkos8 now runs Adventure after installing it to answer the configuration questions it asks on first run, since we know the answers and the user is more likely to be fine with our answers than they are able to answer differently *and* correctly on their own. check-in: 880632ab80 user: tangent tags: trunk | |
02:33 | Improved the comment on the "SET SYS NO INIT" command sent during OS/8 BUILD in mkos8. check-in: d2c10add20 user: tangent tags: trunk | |
2017-10-08
| ||
19:00 | Small tweaks to the new INIT.TX mechanism check-in: 0a2ab49554 user: tangent tags: trunk | |
18:53 | Worked around a Jim Tcl limitation in init.tx build. check-in: 86710df348 user: tangent tags: trunk | |
18:46 | Merged clean-os8-packs into trunk. check-in: faee651fc4 user: tangent tags: trunk | |
18:44 | Replaced the "Hello, world!" init message with one based loosely on the "FIELD SERVICE PDP-8 DIAGNOSTIC SYSTEM" message, but showing information more likely to be useful to our end users. Closed-Leaf check-in: e95de3f1a6 user: tangent tags: clean-os8-packs | |
18:16 | Sketched in the initial implementation of the --enable-os8-init feature, which creates INIT.TX and INIT.CM on the OS/8 bin disk just before finishing up. If the option is set, it calls SET SYS INIT to make it run on boot, but it always does get created, so the user can turn it on later without rebuilding their bin disk. This version just says "HELLO, WORLD!" We'll be doing something more substantial next. check-in: 3f8551641f user: tangent tags: clean-os8-packs | |
17:52 | Added mkos8 to the set of files ctags -R looks at, since it won't normally find it, lacking known file extension. check-in: e165816404 user: tangent tags: clean-os8-packs | |
17:34 | Whitespace and comment tweaks check-in: f3dceaeb79 user: tangent tags: clean-os8-packs | |
16:31 | The creation of obj/mkos8.opts during the configure script run to force a rebuild of the OS/8 media *only* when those options have changed was failing in clean build trees because obj doesn't exist yet. For the most part, $(BUILDDIRS) in the Makefile handles this, but that hasn't run by this point, so we need to do this one early. check-in: 5dfc456436 user: tangent tags: clean-os8-packs | |
05:30 | The "?01.00" error code in the reformatted refcard is just "?" on the original, so there is not in fact a discrepancy between the two error tables for this one. Fixed the refcard and removed the note about the discrepancy from the supplement. check-in: 3b74ad629d user: tangent tags: clean-os8-packs | |
2017-10-07
| ||
22:01 | Small fix to transcript at the end of "The Hard Way" check-in: 1814197ca3 user: tangent tags: clean-os8-packs | |
21:40 | Updated the discussion of the missing VIEW command in U/W FOCAL: we *could* support it, but it's apparently missing from the PAL source we built U/W FOCAL from. Feature request filed as [b8f5d84fc]. check-in: 534640eea8 user: tangent tags: clean-os8-packs | |
21:17 | Added ZVR section to the supplement check-in: 9ec533f16d user: tangent tags: clean-os8-packs | |
21:11 | Another *.FD fix to "The Hard Way" check-in: 75048a2bf8 user: tangent tags: clean-os8-packs | |
21:03 | Added a new "The WRITE Command" method for saving program text out of U/W FOCAL as a plain ASCII text file, and relabeled the old way as "The Hard Way", now used only as a warning. :) check-in: 5e23affd4b user: tangent tags: clean-os8-packs | |
20:43 | Assorted tweaks to Loading and Saving in the supplement check-in: a8a72951d0 user: tangent tags: clean-os8-packs | |
20:29 | Added "Converting Programs from Other Versions of FOCAL" section to the supplement. check-in: 007115ea46 user: tangent tags: clean-os8-packs | |
20:22 | Small tweaks to previous check-in: 7f60a6cd67 user: tangent tags: clean-os8-packs | |
20:17 | Added list of advantages of U/W FOCAL over other FOCALs from the DECUS submission document to our supplement, and linked to it from the README.md section explaining why U/W FOCAL is the default version. check-in: 0404a184e8 user: tangent tags: clean-os8-packs | |
20:10 | Added more info on what hardware support and corresponding software features are missing to the supplement. check-in: 51316b767f user: tangent tags: clean-os8-packs | |
19:16 | First complete "comprehension" pass through the U/W FOCAL manual completed, and final problems fixed. (Yeah, right, "final.") check-in: 24da60990b user: tangent tags: clean-os8-packs | |
18:58 | Added CARD?.DA references to the supplement check-in: 0ff6d3cd24 user: tangent tags: clean-os8-packs | |
18:48 | Consolidated and expanded the new sections at the end of the supplement about missing hardware into a single section. check-in: 6a9c4be91f user: tangent tags: clean-os8-packs | |
18:39 | Fixed another LOOK/LINK thing in the supplement check-in: 77065b8d02 user: tangent tags: clean-os8-packs | |
18:35 | Discovered that PUNCH doesn't exist in our version of U/W FOCAL at all, so rewrote that section of the supplement and the references to it. Also rewrote the sections referencing LOOK and LINK for the same reason. check-in: d99883639e user: tangent tags: clean-os8-packs | |
18:27 | Documented why we're giving *.FD in OPEN INPUT commands. check-in: 96c92dd0b3 user: tangent tags: clean-os8-packs | |
18:24 | Changed the *.FC and *.TX extensions in the supplement's newly reorganized "Loading and Saving Programs" section to *.FD. *.FC is a binary FOCAL core image format, not suited for plain text. That's what *.FD is for. *.TX is also fair, but FOCAL defaults to FD, so we might as well go along with it. check-in: ea76f85801 user: tangent tags: clean-os8-packs | |
18:18 | Reorganized all the program loading and saving material in the supplement as subsections of a top-level section, ordered them in increasing level of complexity (and probably decreasing usefulness!). Changed all the named anchors to an "ls-*" scheme: ls = loading and saving. check-in: cc21eef7b2 user: tangent tags: clean-os8-packs | |
17:50 | Header tweaks check-in: ed9694428b user: tangent tags: clean-os8-packs | |
17:49 | Added "Pasting Programs in from a Terminal Emulator, Part 2" section to the supplement. check-in: 78ea81fe65 user: tangent tags: clean-os8-packs | |
17:30 | Added LIBRARY LOAD based method for loading and saving FOCAL to the supplement above the WRITE/EDIT/OPEN version, and made the prior one the "Alternative Method". check-in: 345f76e497 user: tangent tags: clean-os8-packs | |
17:05 | Added a paragraph to the "Lowercase Input" section of the supplement noting that "o o" and similar commands do not work because U/W FOCAL is not case-insenstive in its command *arguments*. check-in: 0e41940834 user: tangent tags: clean-os8-packs | |
17:04 | Added the "FRA Built-In Function" section to the supplement. check-in: a4b65e95e6 user: tangent tags: clean-os8-packs | |
17:03 | Added the "PDP-12 Support" section to the supplement check-in: 3b2813f5c4 user: tangent tags: clean-os8-packs | |
17:03 | Added the "Video Output" section to the supplement check-in: e4d01d0f59 user: tangent tags: clean-os8-packs | |
17:03 | Added "Error Codes" section to the supplement, discussing the discrepancies between the error code tables in the manual and refcard. check-in: 57b2e6448a user: tangent tags: clean-os8-packs | |
16:20 | More fixes to the U/W FOCAL manual check-in: 560ecb23b3 user: tangent tags: clean-os8-packs | |
14:42 | Minor tweaks check-in: 86600fc404 user: tangent tags: clean-os8-packs | |
14:41 | Typo fix check-in: 57450bf7aa user: tangent tags: clean-os8-packs | |
14:37 | Reworked the new bit at the end of "Loading and Saving Programs" in the supplement to be even clearer. check-in: 5ba092d492 user: tangent tags: clean-os8-packs | |
14:14 | Noted the CSS print attempts in the refcards intro check-in: 75a007e5e0 user: tangent tags: clean-os8-packs | |
14:09 | The "copyright" paragraph in the refcards doc used to be at the end and thus said "above text", but that was not changed when moving it to the top of the document. Also, USA -> United States; it flows better. check-in: d20062edad user: tangent tags: clean-os8-packs | |
14:06 | Added U/W FOCAL refcards link from the supplement. check-in: 86760085fc user: tangent tags: clean-os8-packs | |
00:02 | Clarified and expanded upon the OPEN INPUT example. check-in: 020e3f3e77 user: poetnerd tags: clean-os8-packs | |
2017-10-06
| ||
12:51 | Fixed up a few remnants of the brief CARD*.DA presence in the supplement check-in: 220c9a54da user: tangent tags: clean-os8-packs | |
11:33 | Merged scanswitch serial mod fix in from trunk check-in: dce9086a45 user: tangent tags: clean-os8-packs | |
11:26 | Removed a bunch of the init code from scanswitch.c: calling the new gpio-common module init functions instead. If nothing else, this allows scanswitch to work correctly for the serial mod cases for the first time! check-in: c5a2a1eb11 user: tangent tags: trunk | |
11:25 | Moved more of the gpio-common module's internal init code out as public functions, and hid away some of those now only called from within the module. check-in: fc42d83843 user: tangent tags: trunk | |
11:01 | Extracted init_pidp8i_gpio() from gpio_thread() startup so we can call it from programs that don't use the GPIO thread. check-in: 2a8b622469 user: tangent tags: trunk | |
09:41 | A bit of messing with CSS and paragraph breaks in the new uwfocal-refcards.md file to get somewhat reasonable print output. Still not awesome, but better than it was. check-in: e365c158fb user: tangent tags: clean-os8-packs | |
09:13 | Moved the CARD[1-4].DA material from uwfocal-manual-supp.md to a new uwfocal-refcards.md file to keep the copyrights clear, and to make printing easier. check-in: ad35229d5c user: tangent tags: clean-os8-packs | |
08:42 | Fixed some grammar and Markdown errors in the CARD2.DA section. check-in: 4428cdf5d8 user: tangent tags: clean-os8-packs | |
08:38 | Moved the Variables and FOCAL Statement Functions sections within the supplement down to where they appear in CARD2.DA, and explained where this section comes from. check-in: 08c0cc4ca8 user: tangent tags: clean-os8-packs | |
08:30 | Clarified Bill's new "Loading and Saving Programs" WRITE-based ASCII file saving method in the U/W FOCAL supplement. Also moved some paragraphs that were up in this section down in the CARD2.DA section where they clearly belong, and explained the source of these CARD files in the License section. check-in: f315cb560c user: tangent tags: clean-os8-packs | |
05:30 | Added in instructions on save/cleanup/restore of ASCII file in FOCAL. check-in: e4ead2df48 user: poetnerd tags: clean-os8-packs | |
04:47 | Another snapshot. I added the character table, but perhaps did not need to. TODO: 1. Verify the formatting. 2. Paste in File save clues from OMSI Doc. check-in: 8cda328391 user: poetnerd tags: clean-os8-packs | |
03:07 | Snapshot Adding more reference cards. check-in: d108c40448 user: poetnerd tags: clean-os8-packs | |
02:11 | Snapshot. Better formatting. check-in: 9ecc8ccc67 user: poetnerd tags: clean-os8-packs | |
01:51 | Snapshot. Check on my formatting for Error table. check-in: 5c55c2eaff user: poetnerd tags: clean-os8-packs | |
2017-10-05
| ||
20:32 | Added DCP Disassembler to packs. Does this by default. I sort of don't like how you have to touch 3 files in 3 places to add stuff to the packs. check-in: a60baa0fb2 user: poetnerd tags: clean-os8-packs | |
20:05 | Realized that the "&/" variable name U/W FOCAL mangles "foo" into cannot be the secret & variable because that isn't allowed by default. On further investigation, it appears to be some kind of value mangling, so fixed that discussion in the U/W FOCAL supplement. check-in: d2947f1527 user: tangent tags: clean-os8-packs | |
20:03 | Converted install of Case conversion, chess and vtedit to file-based subset copyin from local.tu56. This structure is what would be used for the DCP16/DCP24 disassembler copyin. check-in: 7d045ed598 user: poetnerd tags: clean-os8-packs | |
19:55 | Explained why U/W FOCAL gives an answer of "0" instead of an error from fsin(pi/2), and explained why this is a sensible answer given the historical context. check-in: a057be2ab4 user: tangent tags: clean-os8-packs | |
19:31 | Typo fix check-in: 0fc6cbef6e user: tangent tags: clean-os8-packs | |
19:30 | Fixed the prompt character in the previous checkin check-in: 015c2f6cbc user: tangent tags: clean-os8-packs | |
19:29 | Added the Improvements sub-section to the "Default Output Format" section of the U/W FOCAL supplement. check-in: e12e3f1e57 user: tangent tags: clean-os8-packs | |
19:17 | Now that we have a fully-functional version of FOCAL, updated several of the commands and outputs in the F??? sections to be actual terminal transcripts. Also added point 7 to the Formatter's Note explaining why this Markdown version of the manual doesn't show the inputs and outputs exactly the same way the original did. check-in: 3bdcd2ac8f user: tangent tags: clean-os8-packs | |
19:03 | Added a "Default Output Format" section to the U/W FOCAL manual supplement to explain why some of the examples' outputs in the manual are not particularly nicely formatted. check-in: 00d620ff6c user: tangent tags: clean-os8-packs | |
18:09 | Grammar tweak check-in: 23fdc81ed1 user: tangent tags: clean-os8-packs | |
18:08 | Clarified the 3 points at the top of the U/W FOCAL manual supplement justifying its existence. The prior-numbered points 1 and 3 might have been read as the same point repeated, whereas now it's clear that we're making two distinct points. check-in: c823d49f60 user: tangent tags: clean-os8-packs | |
18:01 | Using Unicode arrows in the "violating rule 2" transcript to make it clear that we don't expect the user to the type comment text into the terminal. check-in: 059a06d4f5 user: tangent tags: clean-os8-packs | |
17:59 | Yet another tweak to the U/W FOCAL supplement's discussion of lowercase input. check-in: 20159fe6db user: tangent tags: clean-os8-packs | |
17:48 | Typo fix check-in: 55436f0fa4 user: tangent tags: clean-os8-packs | |
17:47 | Another tweak to the supplement's new lowercase input text check-in: 918c9c97a3 user: tangent tags: clean-os8-packs | |
17:46 | Small tweak to previous check-in: 165a9dff9d user: tangent tags: clean-os8-packs | |
17:46 | Reworked the lowercase input examples in the U/W FOCAL supplement to use the now-working PI constant. check-in: 15af913175 user: tangent tags: clean-os8-packs | |
17:41 | Added fragment identifiers and named anchors to all of the headers in the U/W FOCAL manual supplement. check-in: a72ceb276a user: tangent tags: clean-os8-packs | |
17:37 | Expanded the section on Lowercase Input in the U/W FOCAL manual supplement to cover some surpring new findings. Incidentally, it now serves as a "Hello, world!" tutorial. check-in: d241323118 user: tangent tags: clean-os8-packs | |
17:01 | Better explanation of what ./configure --enable-os8-focal69 does in README.md. check-in: b72cc917cf user: tangent tags: clean-os8-packs | |
16:48 | Reworked the configure script --*focal* options and their corresponding mkos8 options so that FOCAL 69 is disabled by default and U/W FOCAL remains enabled by default. Also added documentation for all of this to the main README.md file. check-in: 942424a30f user: tangent tags: clean-os8-packs | |
16:17 | Added "Pasting Text in from a Terminal Emulator" section to the U/W FOCAL manual supplement. I could have put this in the Known Bugs section I just removed, but it belongs above the preexisting "Loading and Saving Programs" section, and it isn't a "bug" per se: the problem comes from the fact that U/W FOCAL is operating within the design limitations imposed by its development environment, which modern environments invalidate. The solution — if we ever do that — is therefore an enhancement to U/W FOCAL, not a bug fix. check-in: 9b0a771d74 user: tangent tags: clean-os8-packs | |
16:11 | Removed Known Bugs section from the U/W FOCAL manual supplement: checin [d6a7c6fede] fixed the last known one. check-in: 2e8482e9fa user: tangent tags: clean-os8-packs | |
16:11 | Added invitation to send patches to the U/W FOCAL manual supplement. This is a sideways way of preserving a named URL that would otherwise be removed in the next checkin. check-in: dd068e0950 user: tangent tags: clean-os8-packs | |
05:25 | Removed an unreferenced named URL left by [ee437c54a9] in the U/W FOCAL manual supplement. check-in: 2dc8ce6aea user: poetnerd tags: clean-os8-packs | |
05:23 | Since I fixed the PI bug, I deleted it from the table of known bugs. check-in: ee437c54a9 user: poetnerd tags: clean-os8-packs | |
05:04 | Fixed FOCAL installs. They were installing way too much and overran the limits of the system directory. Only 1 file is installed for U/W FOCAL: SYS:UWF16K.SV. Only a few files are installed for FOCAL69 all into RKB0: FOCAL.BN,4WORD.BN,4KVT.BN,8KVT.BN,8KNOVT.BN Personally I favor telling people just fetch these from the focal69.tu56 DECtape image. Also tested new UWF16K.SV, and it properly initializes PI. check-in: 6456a6e06d user: poetnerd tags: clean-os8-packs | |
04:47 | Replaced broken UWF16K.SV with one that works better. Root cause: I mis-specified the starting address when I did the SAVE action, and so UWF16K.SV was not properly initializing itself when run. check-in: d6a7c6fede user: poetnerd tags: clean-os8-packs | |
2017-10-04
| ||
14:25 | Added Known Bugs section to the U/W FOCAL supplement. check-in: ca96147091 user: tangent tags: clean-os8-packs | |
09:08 | Added "Trigonometric Identities" header to the U/W FOCAL Manual to separate that section visually from the preceding FTAN/FATN section check-in: 8d23660bf7 user: tangent tags: clean-os8-packs | |
09:05 | More U/W FOCAL Manual improvements, mainly for style this time. check-in: 81dee12842 user: tangent tags: clean-os8-packs | |
09:02 | Added "Switch Ordering" section to the U/W FOCAL Manual Supplement. check-in: 3a12df8223 user: tangent tags: clean-os8-packs | |
08:45 | Added a section on lowercase input to the U/W FOCAL manual supplement. check-in: 51bf4b9a9d user: tangent tags: clean-os8-packs | |
08:09 | Small tweaks to the U/W FOCAL manual supplement check-in: 88940d8a2f user: tangent tags: clean-os8-packs | |
07:51 | Added "Starting U/W FOCAL" section to the U/W FOCAL manual supplement check-in: c0cd965249 user: tangent tags: clean-os8-packs | |
07:46 | Added --disable-os8-focal, --disable-os8-focal69 and --disable-os8-uwfocal configure script options and corresponding mkos8 options and their implementations. check-in: be5885a806 user: tangent tags: clean-os8-packs | |
07:41 | accidental checkin Closed-Leaf check-in: 69b3d8c9f2 user: tangent tags: bogus | |
07:14 | Fixed the --help line for the configure script's --disable-os8-chess option: sense was backwards check-in: d04034d4aa user: tangent tags: clean-os8-packs | |
07:11 | Renamed FOCAL TU56 images to conform to prevailing naming scheme check-in: aaf850b05d user: tangent tags: clean-os8-packs | |
2017-10-03
| ||
20:21 | Whitespace fixes in the examples' README check-in: 753b55fad8 user: tangent tags: clean-os8-packs | |
20:21 | More Markdown and grammar tweaks to the U/W FOCAL manual check-in: a3608589c5 user: tangent tags: clean-os8-packs | |
20:19 | First cut at the new "U/W FOCAL Manual Supplement for the PiDP-8/I" document. check-in: a8975496f3 user: tangent tags: clean-os8-packs | |
2017-10-02
| ||
06:27 | Removed media/os8/os8.rk05: obsolete for a month or so now on this branch. If it's still wanted for reference, it's still visible at the tip of trunk and on the release branch. After the eventual release, you can roll back to the v20170404 tag to get it. check-in: ce85b8f355 user: tangent tags: clean-os8-packs | |
06:11 | Removed one of the Easter eggs in the U/W FOCAL manual: Fossil's Markdown renderer doesn't hide this one as other Markdown processors do. Waah. check-in: d2998f8b65 user: tangent tags: clean-os8-packs | |
06:10 | More errors fixed in the U/W FOCAL manual check-in: 5d951709b2 user: tangent tags: clean-os8-packs | |
04:03 | Several more U/W FOCAL manual fixes check-in: dee688ea4f user: tangent tags: clean-os8-packs | |
03:12 | Markdown cleanup pass on doc/dcp_wu.md: hard tabs replaced with spaces, indent level fixes for numbered and bulleted lists, use of indents for literal code sections instead of <code> blocks, etc. Also did a few minor prose tweaks. check-in: 2be9e5a11b user: tangent tags: clean-os8-packs | |
02:18 | Three DECtape images added for FOCAL Support. TODO: Tease out what kind of documentation we want to give on utilization, and decide what's going onto the packs. Recommendation: UWF16K.SV onto the packs. Everything else in docs. check-in: 1662ab9450 user: poetnerd tags: clean-os8-packs | |
02:11 | Beginnings of adding DCP Disassembler to the packs. Put relevant files on local.tu56, and complete first draft of the DCP documentation. Similarly to the U/W FOCAL documentation, a markdown version of an existing document DCP.WU, has been created. check-in: 8acfc443ab user: poetnerd tags: clean-os8-packs | |
00:26 | Diagnosed the "SIMH cont problem" in mkos8 and came up with a less traumatic way to re-enter OS/8 than rebooting the whole simulator without complicating the send/expect sequencing. check-in: bd610a4a17 user: tangent tags: clean-os8-packs | |
2017-10-01
| ||
23:49 | Adds file_copyin data structure. All existing copyins get a new element that points to the file_copyin array or to None. cc8 install is now done using this method. This prepares for other copyins that are per file. Added extensive documentation of how copyins work. check-in: c14aa1561a user: poetnerd tags: clean-os8-packs | |
22:50 | Added missing header comment check-in: ea77d77d6e user: tangent tags: clean-os8-packs | |
22:34 | Technical merge with trunk. We already had this fix on this branch, but this checkin informs Fossil of that fact. check-in: 57e3187127 user: tangent tags: clean-os8-packs | |
22:31 | Worked around a Jim Tcl limitation in auto.def check-in: 405ea7357f user: tangent tags: trunk | |
04:18 | Fix a typo that caused only LCSYS.BI and LCBAS.BI to be installed. Now UCSYS.BI and UCBAS.BI will be installed. TODO: Change how this works so we can create a file-based copy-in data structure. check-in: 5f22db82fd user: poetnerd tags: clean-os8-packs | |
2017-09-30
| ||
21:42 | Moved a bunch of the path handling from libexec/mkos8 into dirs.py. Along the way, made it possible to run mkos8 within the installation tree and have it update the installed RK05 images, not the ones in the development tree. check-in: 407cdb4014 user: tangent tags: clean-os8-packs | |
20:55 | Added lib/mkos8/__init__.py to the "make install" file set. It should have been done when we did the dirs.py stuff. check-in: 15eb96d740 user: tangent tags: clean-os8-packs | |
20:48 | The AUTHORS.md file still referred to tools/mkos8.in. Changed it to libexec/mkos8. check-in: bd022432a3 user: tangent tags: clean-os8-packs | |
20:41 | Trunk changes merged in check-in: a38acc1f1f user: tangent tags: clean-os8-packs | |
20:34 | Added Bill Cattey's ptp2txt.c to the tree, and added it to the build and installation steps, along with hard links to its txt2ptp alias. check-in: af9c5d6025 user: tangent tags: trunk | |
20:05 | Minor cosmetic tweaks to the U/W FOCAL manual check-in: 3243002d8b user: tangent tags: clean-os8-packs | |
19:06 | The configure script now removes the bin/os8v3d-bin.rk05 file when the set of mkos8 options changes from one run to the next. This completes the evolution started in the prior few checkins, where only substantial changes to input files or build options causes a rebild of the OS/8 media. check-in: 2d871919e4 user: tangent tags: clean-os8-packs | |
19:03 | Put @ before new comments in Makefile.in to prevent them from echoing during the build. check-in: 7e263bdd1d user: tangent tags: clean-os8-packs | |
18:49 | Moved the @abs_top_srcdir@ and @builddir@ stuff out of libexec/mkos8.in into lib/mkos8/dirs.py.in, which exists only to hold those directory definitions. Then reworked the make dependencies so that simply regenerating the lib/mkos8/dirs.py file no longer causes a rebuild of the OS/8 media, since by far the most likely reason for this is that auto.def or some other *.in file changed. Also removed the simulator as a make dependency of the OS/8 RK05 media, since we just need it to *exist*, not to be older than the media. Instead, we check for it before rebuilding the media, and we only do that when one of the input files for building the media change, which explicitly does not include dirs.py. There's one missing step in all of this which can cause us to miss a needed rebuild, but that will be taken care of next. check-in: 9b76afeacb user: tangent tags: clean-os8-packs | |
17:59 | Comment fix check-in: ad33c84c4e user: tangent tags: clean-os8-packs | |
17:16 | Reorganized the mkos8/argparser component stuff into a subdirectory structure so that we can import the whole subtree with an "import *" call, so that the upcoming modules don't all need to be named explicitly. check-in: 73cf71943e user: tangent tags: clean-os8-packs | |
14:54 | Moved tools/mkos8.in to libexec and added it to "make install". It isn't easily usable from within the installation directory yet, but that is the plan. check-in: 47e196646c user: tangent tags: clean-os8-packs | |
14:20 | Extracted lib/mkos8/argparser.py from main() in mkos8, an ArgumentParser subclass that simplifies its interface for the main script's purposes, primarily by hiding away the process of setting up the parser. EDIT: This step also creates the mechanism for pulling other pieces of mkos8 out as separate modules. I just happened to choose to make this the first such external component. check-in: c14164b6fd user: tangent tags: clean-os8-packs | |
2017-09-29
| ||
12:05 | Added ASCII art "UWF" to top of U/W FOCAL manual. (Side-by-side instead of staggered vertically, since we don't need to fill the height of a letter sized page.) check-in: 2a46a2bc55 user: tangent tags: clean-os8-packs | |
11:23 | Hard-wrapped long lines in U/W FOCAL manual and made a few other tweaks. check-in: 6163589352 user: tangent tags: clean-os8-packs | |
11:04 | Moved formatter's note in U/W FOCAL manual from front to back, just before the copyright notices check-in: c6fb247e62 user: tangent tags: clean-os8-packs | |
06:51 | Restored ToC (actually an "index of major topics") to the U/W FOCAL manual. Also fixed several of the named anchors to allow this to work. check-in: 88648a141b user: tangent tags: clean-os8-packs | |
06:04 | Added ASCII table to Appendix I of the U/W FOCAL manual check-in: 9457eb33d4 user: tangent tags: clean-os8-packs | |
05:04 | Fixed a few errors in the "Error Codes" section of the U/W FOCAL manual check-in: e3100a9be0 user: tangent tags: clean-os8-packs | |
2017-09-28
| ||
13:49 | More U/W FOCAL manual tweaks check-in: fcfb537327 user: tangent tags: clean-os8-packs | |
13:48 | Initial version of U/W FOCAL manual didn't have FDIN section formatted. check-in: 90043f499b user: tangent tags: clean-os8-packs | |
13:46 | Fixed formatting problems highlit by seeing the U/W FOCAL manual in the Fossil Markdown viewer. check-in: fd3c285a3a user: tangent tags: clean-os8-packs | |
13:34 | Added Markdown version of "U/W FOCAL Manual V4E, October 1978", being the OCR'd text from archive.org for the scanned PDF also on archive.org with errors fixed, style improved, and assorted paper -> computer screen reading tweaks, but no new material. This is the baseline from which we will create a separate PiDP-8/I FOCAL manual matching what we actually ship. There are a few known missing items before we call this "finished": the ToC and charmap sections need to be recreated. This is also likely to still have errors that need to be fixed. check-in: 21260043fb user: tangent tags: clean-os8-packs | |
2017-09-18
| ||
05:50 | Expanded Tony Hill's AUTHORS.md entry check-in: 209e632cf9 user: tangent tags: trunk | |
05:41 | Expanded my own entry, primarily to make clear what I did write, so as not to overclaim my contributions. check-in: a80d518798 user: tangent tags: trunk | |
05:40 | Expanded Bill Cattey's AUTHORS.md entry to better reflect what he's been doing since he wrote that. check-in: b246817c77 user: tangent tags: trunk | |
05:28 | Grammar and "flow" tweaks to AUTHORS.md, primarily for the web rendering. check-in: ee2ead6920 user: tangent tags: trunk | |
05:22 | Converted the email addresses in AUTHORS.md to Markdown mailto links so the web-formatted version of this document formats nicely. Also updated Rick Murphy's entry. check-in: e3b19fd225 user: tangent tags: trunk | |
2017-09-16
| ||
04:43 | The separate "bin" and "src" steps of mkos8 as run by make were causing the lone "bin" step's log file to be clobbered by the src step. When mkos8 is not running in -v mode, its log file is now named after the first legal action name given on the command line, giving obj/mkos8-bin.log and such. check-in: 69b961a3aa user: tangent tags: clean-os8-packs | |
02:34 | When we changed DSK to RKB0, we broke cc8. To fix this while keeping mkos8.in as simple as possible we: 1. Change the destination of cc8.tu56 to RKB0. 2. Add commands to copy CC0.SV, CC1.SV, CC2.SV to SYS and delete them from RKB0. 3. Add a SQUISH of RKB0 to defragment the hole made by deleting the CC .SV files. Now the C Compiler works as documented in the Wiki. check-in: 2cc9ef9463 user: poetnerd tags: clean-os8-packs | |
2017-09-15
| ||
09:03 | Merged mkos8 option naming consistency fix with respect to the configure script. check-in: 72bf7bb39a user: tangent tags: clean-os8-packs | |
09:02 | The prior checkin missed the args.with_* and args.without_* tests. Fixed. Closed-Leaf check-in: d9be605fbb user: tangent tags: mkos8-en-dis-opt | |
08:59 | Renamed mkos8 --with-* and --without-* optinons to --enable-* and --disable-*, respectively, to match the new restrictions on the corresponding configure script option naming. check-in: 6f385a6100 user: tangent tags: mkos8-en-dis-opt | |
08:43 | Added apt suggestions to the help text emitted when the required Python modules are not found. check-in: 0f8bb89f56 user: tangent tags: clean-os8-packs | |
08:42 | Added a check for Python module pkg_resources in configure, now needed by tools/mkos8 check-in: 64c8aec7e6 user: tangent tags: clean-os8-packs | |
08:00 | Jim Tcl compatibility fix in auto.def check-in: 1472fa08b1 user: tangent tags: clean-os8-packs | |
07:39 | Fixed a pexpect 3.x API compatibility problem in tools/mkos8 by checking the distribution's version number and doing things the old way if necessary. Currently tested only on pexpect v4.x, checking it in so we can go test on a machine with v3. check-in: 03d5f08098 user: tangent tags: clean-os8-packs | |
07:18 | Fixed two problems with the bin/*.rk05 dependencies in the top level Makefile. First, *-src.rk05 wasn't dependent upon pidp8i-sim, so in a parallel make from a clean build tree, it could call "mkos8 src" before the simulator was built, causing a build error. Second, *-src.rk05 wasn't dependent upon *-bin.rk05, so if a parallel make chose to try and build the src RK05 first, mkos8 would internally attempt to build the bin RK05 ahead of that, during which time make could launch its own build of the bin RK05, causing a build failure as both instances of mkos8 fought over the bin RK05 image file. The strict dependency chain now defined in Makefile.in means the dependency rule between these two RK05s encoded in mkos8 is now only used when you call "mkos8 src" by hand while the bin RK05 is missing. check-in: 345cad495f user: tangent tags: clean-os8-packs | |
07:11 | "make clean" now removes obj/mkos8.log check-in: 1879a87ed5 user: tangent tags: clean-os8-packs | |
07:09 | "make clean" now removes bin/*rk05* check-in: b0d9bf39ba user: tangent tags: clean-os8-packs | |
07:07 | Moved media/subsys underneath media/os8, since everything in here currently requires OS/8 in one way or another. Doing so simplifies the path name building code in tools/mkos8 considerably. It also swaps out an explanation in media/subsys/README.md for why it is outside the os8 tree for an explanation of why it's in a subdirectory of that tree, a distinct improvement. check-in: 2a4f4cec29 user: tangent tags: clean-os8-packs | |
2017-09-14
| ||
13:41 | Comment typo fix check-in: a5ecc26447 user: tangent tags: clean-os8-packs | |
13:27 | Added named anchors to the top-level README.md file so one can link to sections of the document. It's getting big! check-in: 2922837909 user: tangent tags: clean-os8-packs | |
13:19 | Replaced the --disable-os8-lcmod configure script flag with --lowercase={auto,pass,upper} option which lets you control the OS/8 lowercase patches independently of the SIMH uppercase folding feature. Technically there are four possible alternatives, but two of them amount to the same thing (upper) so there are only three real choices. check-in: c941ce36b0 user: tangent tags: clean-os8-packs | |
12:21 | The top-level Makefile now builds bin/os8v3d-src.rk05 given the fix in the prior checkin. check-in: 91078c04cc user: tangent tags: clean-os8-packs | |
12:16 | make_src() in mkos8.in was not getting passed the parsed command line arguments, so that if it decided it needed to call make_bin(), the call would fail because it couldn't supply the needed args object. check-in: 82388c43de user: tangent tags: clean-os8-packs | |
2017-09-13
| ||
21:54 | The install(1) commands during mediainstall were using -g @INSTGRP@ only. Added -o @INSTUSR@ so the files are not owned by root due to sudo. check-in: 54bbf978f6 user: tangent tags: clean-os8-packs | |
20:13 | Includes batch job to patch OS/8 BASIC to cope with lower case. Two new files added to local.tu56: LCBAS.BI, UCBAS.BI they are similar to LCSYS.BI and UCSYS.BI but work on BASIC instead of the system area. mkos8.in now installs all 4 .BI batch scripts, and runs both LC batch scripts. check-in: d5c39d4421 user: poetnerd tags: clean-os8-packs | |
04:38 | Merged autosetup update in from trunk. This also removes the --with-* and --without-* aliases for --enable-* and --disable-* options due to a conflict with the way earlier autosetups handled this, so upstream backed that feature out. In turn, I've simplified our README.md. Also now using the new @abs_top_srcdir@ feature in place of our local @ABS_TOP_SRCDIR@ hack. check-in: 9142064d76 user: tangent tags: clean-os8-packs | |
04:33 | Added the tools/autosetup-update script for automatically updating our autosetup installation. check-in: 2d6dc7201d user: tangent tags: trunk | |
04:32 | Updated autosetup to v0.6.7 plus the few changes made in the past week since that release. We need a change just made upstream in one of the branches, but this update really needs to be on the trunk. check-in: cf74ea6c79 user: tangent tags: trunk | |
2017-09-12
| ||
16:35 | Removed unused function os8_send() from mkos8 script check-in: 7d497f001f user: tangent tags: clean-os8-packs | |
16:33 | Moved the os8_kbd_delay() call down within os8_pmt_send() in mkos8 so that it happens inter-character, not just once at the start of the line of text being sent. check-in: 72de1c5535 user: tangent tags: clean-os8-packs | |
14:39 | Merged greadlink replacement in from trunk, and doing the same for ABS_TOP_SRCDIR as we did on trunk for ABSPREFIX. check-in: a3b7b16ee5 user: tangent tags: clean-os8-packs | |
14:37 | Replaced the use of GNU readlink with Tcl's "file normalize" function. check-in: b41a0c2f02 user: tangent tags: trunk | |
13:57 | The "make mediainstall" target was implicitly picking up os8v3d-*.rk05 from the old output location, but now needs an explicit copy to install from bin/. check-in: 09f6d7db8d user: tangent tags: clean-os8-packs | |
13:51 | Renamed tools/mk-os8-rk05s.in to tools/mkos8.in. The new name is much easier to type, and we don't need the name to be descriptive: we have the file's header comments and docs to explain what it does. check-in: 2e6b7338de user: tangent tags: clean-os8-packs | |
13:43 | Added a call to "mk-os8-rk05s src" to the top-level Makefile from an "independency". There is a bug in the build script that prevents creation of bin/os8v3d-src.rk05, so it is temporarily disconnected from the dependency graph, but you can still say "make bin/os8v3d-src.rk05" to see the problem. (Some bug in the Expect sequence.) check-in: f435f0a472 user: tangent tags: clean-os8-packs | |
13:37 | The mk-os8-rk05s script now generates *.rk05 in the bin dir, not in the media/os8 dir, since the latter contains input files; we should not be mixing inputs and outputs in the same directory. Also reworked things to allow building out-of-tree, which not coincidentally shows the value of not mixing inputs and outputs. check-in: e0173f079b user: tangent tags: clean-os8-packs | |
12:25 | Merged in trunk changes check-in: f09a866510 user: tangent tags: clean-os8-packs | |
12:24 | Small fix to allow tools/version to be run by Makefile when building out of tree. Also cleaned up the code a bit. check-in: c94cb7be8f user: tangent tags: trunk | |
11:42 | Added "-os8" to all of the configure script option names that affect the flags sent to mk-os8-rk05s. This is not just bowing to Emerson's hobgoblin: it is a realization that some of these options were ambiguous in meaning outside the OS/8 RK05 build process. For example, did the old --without-cc8 option imply that the host-side CC8 compiler would also not be built? The "-os8" bit is stripped in the option names given to mk-os8-rk05s, since "OS/8" needn't be specified at that level. check-in: 8d104bd4c8 user: tangent tags: clean-os8-packs | |
11:15 | Renamed --without-cc8 option to --without-os8-cc8, since it only applies to the OS/8 native CC8 compiler. When we this line of development eventually merges with the cc8-merge branch, we may want a --without-host-cc8 option or similar to make it not build the host-side CC8 compiler. The point is, they're separate things, and we have at least one use case where one is not desired while the other is: LCSYS.BI is a hindrance to some on the OS/8 side because they may be running programs that can't fold lowercase to uppercase and won't work without that folding. check-in: d5bd6bf808 user: tangent tags: clean-os8-packs | |
2017-09-11
| ||
18:06 | Removed all send() delays in mk-os8-rk05s automatically inserted by pexpect. They aren't necessary. Only the OS/8 delays we've manually inserted are necessary. This takes OS/8 media build time down to about 9 seconds on my machine while still giving the same log transcript and binary media md5sum. check-in: 0453d18c2b user: tangent tags: clean-os8-packs | |
2017-09-10
| ||
12:09 | Added "pip install pexpect" stuff to the "bosi init" step, so the "make install" step following it does not fail due to lack of pexpect in the mk-os8-rk05s step. check-in: 37735a593a user: tangent tags: clean-os8-packs | |
12:00 | Increased the simulated terminal speed implied by the new os8_kbd_delay function in mk-os8-rk05s from the 110 bps of an ASR-33 to the 2400 bps of the more-nearly contemporaneous VT05. Since this does not actually save any build time on my machine — presumably because other I/O overheads swamp it, such as the simulated TU56 reading time — I also removed all the comments about the possibility of going even faster. We've squeezed all the juice out of this stone we can. check-in: 354fa7230b user: tangent tags: clean-os8-packs | |
11:42 | Decreased the "sleep(0.5)" stuff in mk-os8-rk05s to a smaller constant (0.0909...) based on the data rate of an ASR-33 teletype which must be the worst-case value for keyboard input to OS/8. Testing shows this gives identical binary media to what the old constant produced. This is backed up by diffing the mk-os8-rk05s.log file produced by the two versions of this script, which differ semi-randomly in the instruction being executed by SIMH whenever it gets one of the Ctrl-E commands. This change saves about 12 seconds from a 55 second build on my machine relative to the old 2 cps behavior! check-in: 6b8ea89df4 user: tangent tags: clean-os8-packs | |
11:12 | Captialization tweaks to mk-os8-rk05s script. check-in: b3dafeb3a1 user: tangent tags: clean-os8-packs | |
11:09 | Missed a renaming in [68c02444fd]. check-in: 913d6316b2 user: tangent tags: clean-os8-packs | |
10:44 | Updated the --with-* paragraph in media/subsys/README.md to reflect the prior checkin's file renamings. check-in: c60013759f user: tangent tags: clean-os8-packs | |
10:43 | Renamed media/subsys/*.tu56 so that the file name matches the corresponding --with-* or --without-* option to the configure script. check-in: 68c02444fd user: tangent tags: clean-os8-packs | |
10:35 | Fixed several logic inversions in the new --without-os8-lcmod option to the configure script and in the corresponding --without-lcmod option to the mk-os8-rk05s script. Also added a comment to the generated 0.script file explaining why the "set tti" option is set as it is, so the user doesn't have to RTFM to understand the option's obscure naming. check-in: c2a743654d user: tangent tags: clean-os8-packs | |
09:46 | Improved the explanation for the --without-ba option's name. check-in: 73f33337b9 user: tangent tags: clean-os8-packs | |
09:39 | Described all the new --with-* and --without-* options recently added to auto.def in the configure script option section of the top-level README.md file. check-in: fe765c0b5d user: tangent tags: clean-os8-packs | |
09:38 | Apparently I can't alphabetize today... check-in: 36101b88b1 user: tangent tags: clean-os8-packs | |
09:36 | Another alphabetization fix to auto.def check-in: 834534956a user: tangent tags: clean-os8-packs | |
09:16 | Alphabetized the list of options in auto.def and changed tabs to spaces check-in: 326ea984c8 user: tangent tags: clean-os8-packs | |
08:42 | Clarity pass on the media/subsys/README.md, and fixed one link check-in: 82e0f1059f user: tangent tags: clean-os8-packs | |
08:34 | Initial version of media/subsys/README.md check-in: b51c36304b user: tangent tags: clean-os8-packs | |
08:08 | Clarity pass on media/os8/README.md check-in: 288e5d2052 user: tangent tags: clean-os8-packs | |
07:51 | Added description of local.tu56 to media/os8/README.md, and collected it together with the description of LICENSE.md as the new "Others" section. check-in: 2f3080c6e1 user: tangent tags: clean-os8-packs | |
07:44 | Formatted the file name/content description lists in media/os8/README.md as a Markdown table so it formats nicely when viewed in Fossil UI. check-in: c2d4c92026 user: tangent tags: clean-os8-packs | |
2017-09-09
| ||
05:55 | Correcting factual error: An rk05 pack has 2.5Meg, not 10 meg. check-in: 4771013619 user: poetnerd tags: clean-os8-packs | |
2017-09-08
| ||
21:17 | Moved default device DSK from SYS to RKB0. I changed my mind about this setup after running out of space once too often by letting files get created on SYS by default. TODO: Retest the C compiler now that DSK is the other partition. We may move it. check-in: 32b685b6d1 user: poetnerd tags: clean-os8-packs | |
20:14 | os8.rk05 had a version of LCSYS.BI that is incompatible with OS8/V3d. Indeed it does not work on this disk. Wherever it came from, it's wrong. New packs have the good, working, tested LCSYS.BI, as stored in local.tu56 check-in: 1e54026f8f user: poetnerd tags: clean-os8-packs | |
05:02 | Added cover scan of the green-yellow 1968 edition of DEC's "Small Computer Handbook" for the PDP-8/I. check-in: e6215cb721 user: tangent tags: trunk | |
03:10 | Renamed with-lowercase to with-lcmod. All the code that implements lcmod in auto.def, mk-os8-rk05s, 0.script is in place. The LCSYS.BI batch script runs, but is having no effect. TODO debug LCSYS.BI so that lcmod actually works. check-in: 73a45794f1 user: poetnerd tags: clean-os8-packs | |
01:49 | Corrected typo in mk-os8-rk05s.in Checking in local.tu56 that contains locally developed files that are part of the system build process. check-in: 59b79564ee user: poetnerd tags: clean-os8-packs | |
01:34 | This change implements --with-vtedit, --without-chess, and adds copyin of LCSYS.BI and UCSYS.BI scripts. check-in: da7d583f58 user: poetnerd tags: clean-os8-packs | |
00:58 | mk-os-rk05s.in now has args for config pieces conditionalized on: --with-vtedit (Not yet written) to add the TECO VTEDIT stuff. --without-crt Does SET TTY SCOPE by default unless this option is set. --without-lowercase (Not yet written) Activates LCSYS.BI. (Will require conditionals in startup script.) --without-advent to disable installing ADVENT --without-chess (Not yet written) To disable default install of CHESS So advent is now part of the packs by default as is CRT mode. check-in: 72bf281ca1 user: poetnerd tags: clean-os8-packs | |
2017-09-07
| ||
06:56 | pidp8i-sim is now a prerequisite for the OS/8 RK05 pack building process. Without this, building from a clean directory fails because the simulator doesn't exist early enough. check-in: 63233d74ba user: tangent tags: clean-os8-packs | |
04:28 | Discovered that data files for YAHTZE and MONPLY were left out. Earlier test runs succeeded because the files were on RKB0 of booted packs, precisely where the basic programs are hard-coded to get them. New packs would fail to run these programs because the data files were never installed. Until now. check-in: 2251f49324 user: poetnerd tags: clean-os8-packs | |
03:12 | We left out too much from system Dectape 2. Now we copy in Fortran II .RL files and .HL files. Also, as a safety measure we do "SET SYS NO INIT" before running BUILD. The default Dectape images have this state, but if we ever use this code to build with another image, we need to turn off INIT. check-in: 6aa7475e9e user: poetnerd tags: clean-os8-packs | |
2017-09-06
| ||
20:55 | Refactored make_src. bin, src, and all seem to work. TODO: Review log output and disk contents and confirm all is well. Next up: Installing local hacks. Decision: one system rk05 with everything? Or a second one with just virginal OS8/8 v3d? check-in: 0201efadd6 user: poetnerd tags: clean-os8-packs | |
06:54 | Snapshot: re-factoring mk-os8-rk05s to be table driven is half done. Also noticed that we overflowed the directory blocks. When we add kermit, and C we run out of directory space. So I've stopped copying in the device drivers. The ones that are resident in BUILD are probably sufficient. People who want to add them in can mount the driver tape. TODO: Write it up in the Wiki page. check-in: 9a36900e5f user: poetnerd tags: clean-os8-packs | |
00:37 | Removed media/os8/os8v3d-*.rk05 now that we're able to recreate them at will. check-in: 421b3e2b24 user: tangent tags: clean-os8-packs | |
2017-09-05
| ||
11:49 | Renamed a function for consistency with a paired function check-in: 96a313d8a0 user: tangent tags: clean-os8-packs | |
11:46 | Added --without-* options to the configure script corresponding to the other *.tu56 files in the media/subsys directory, which pass similarly named options to the mk-os8-rk05s script. These all default to "off", meaning that these components are normally installed. (Technically, that's backwards: autosetup considers them boolean enabled by default options, which causes the --help message to document them as --disable-*, since that is the only form of option that causes a change in the default behavior of the configure script. You can say things like ./configure --with-cc8; it just doesn't do anything useful.) check-in: 5fcb62ab70 user: tangent tags: clean-os8-packs | |
11:09 | Added the "./configure --with-music" option, which in turn causes the flag of the same name to be passed to the mk-os8-media script when called from the top-level Makefile. check-in: 23021c2cc5 user: tangent tags: clean-os8-packs | |
11:04 | The mk-os8-rk05s script now runs as part of the normal build process as well as a prerequisite for the "install" and "run" targets. If any of the relevant TU56 tapes or the mk* script changes, the output is invalidated and gets rebuilt. check-in: 4d1a7ed591 user: tangent tags: clean-os8-packs | |
11:04 | boot/0.script now boots from the new os8v3d.rk05, not the old os8.rk05. The new one is still not finished, but it will be by the time this branch is marged into the trunk, and it's convenient to be able to say "make run" to test our progress. check-in: 9df3792722 user: tangent tags: clean-os8-packs | |
10:31 | Added --with-music option to tools/mk-os8-rk05s script. This checkin also changes pretty much every bit of code that referred to the media/os8 subdirectory, since we now need to refer also to media/subsys. Future --with and --without flags added to this script will not be so intrusive. check-in: 586526ddfe user: tangent tags: clean-os8-packs | |
09:39 | The new mk-os8-rk05s -v flag now has an effect, causing SIMH and OS/8 output to go to the console instead of to a log file, which is now called obj/mk-os8-rk05s.log instead of log.txt at the top level. This option also suppresses most of the progress messages we added recently since the output from SIMH and/or OS/8 suffice in that case, and we don't want their outputs polluted by messages from the script in that case anyway. check-in: 66481ebd58 user: tangent tags: clean-os8-packs | |
09:20 | Replaced the command line parser of mk-os8-rk05s with an ArgumentParser based one, which does better error checking and generates a nice usage message. It also parses an optional -v or --verbose flag, which we will do something with next. check-in: fe1d1e04f1 user: tangent tags: clean-os8-packs | |
08:46 | Added many "print" calls to mk-os8/rk05s to show build progress. check-in: 5186973178 user: tangent tags: clean-os8-packs | |
08:27 | Added a UTF-8 encoding hint comment to the top of tools/mk-os8-rk05s.in. Python doesn't assume UTF-8 on POSIX platforms as most other languages do, and it barfs on the non-ASCII © symbol in the new header comment without this. check-in: 235bdcc40b user: tangent tags: clean-os8-packs | |
08:18 | Comment and whitespace improvements to mk-os8-rk05s. check-in: c5ec67be9e user: tangent tags: clean-os8-packs | |
08:04 | Added header comment to mk-os8-rk05s, including SIMH License grant. EDIT: Received permission from William Cattey and Jonathan Trites via private email on/around 2017.09.05 to release their contributions under the SIMH license. I being the final author so far, that seals it. check-in: b63f870147 user: tangent tags: clean-os8-packs | |
07:59 | Small tweaks to "global child" stuff in mk-os8-rk05s script check-in: 224872bb99 user: tangent tags: clean-os8-packs | |
07:43 | Added a usage message to mk-os8-rk05s. check-in: 270d044eba user: tangent tags: clean-os8-packs | |
07:23 | Further tweaks to the AUTHORS.md file check-in: 8db54aaaf9 user: tangent tags: clean-os8-packs | |
07:17 | Added Jonathan Trites to the AUTHORS.md file. check-in: 27d02c6719 user: tangent tags: clean-os8-packs | |
07:14 | Added checks for Python and pexpect to the configure process, as they are necessary to run tools/mk-os8-rk05s, which will shortly become a required part of the build sequence. It does not check for Python 2 vs Python 3, as it is not yet known to me (at least) whether this distinction matters. check-in: 4307eba025 user: tangent tags: clean-os8-packs | |
06:33 | Simplified an unnecessary string concatenation in the generation of tools/mk-os8-rk05s. check-in: 178da96905 user: tangent tags: clean-os8-packs | |
06:31 | Merged in "cd $prefix/share/media" fix for the pidp8i init script, which will shortly become helpful in the mk-os8-rk05s script. check-in: 90fe5ea7aa user: tangent tags: clean-os8-packs | |
06:30 | Added a sensible-default cd $prefix/share/media to etc/pidp8i-init.in just before the "start simulator under screen" call, so that SIMH's CWD will be somewhere useful, not taking the default used by the OS's init system, which may well be something entirely unhelpful like /. check-in: 46366581f0 user: tangent tags: trunk | |
06:13 | Merged in trunk improvements check-in: 0b7f31d043 user: tangent tags: clean-os8-packs | |
06:12 | Made tools/mk-os8-rk05s.in executable. check-in: 050a77b879 user: tangent tags: clean-os8-packs | |
06:11 | Typo fix in previous. check-in: 321f218fcb user: tangent tags: clean-os8-packs | |
06:07 | Moved media/os8/make_os8_rk05s.py.in to tools/mk-os8-rk05s.in. The directory change is because it will become an automatically-run build tool, and it is not now nor will it become "media". The file name change is mainly a matter of matching existing style: dashes instead of underscores, no ".py" extension needed for one-file scripts, and historically "mk" instead of "make" on a Unix type platform. check-in: a1be47bd09 user: tangent tags: clean-os8-packs | |
04:53 | This version of make_os8_rk05s.py.in seems to work. TODO: 1. More testing of the packs generated. 2. Check on how the system Dectape got modified. (It's probably fine.) 3. Remove the old os8v3d-bin.rk05 and os8v3d-src.rk05 images. 4. Expand the script to build a new os8.rk05 5. Dig in and find out why expect HANGS when we try to do: simh_send("cont") os8_send(anything) check-in: 5fe02ffa8f user: poetnerd tags: clean-os8-packs | |
02:46 | First attempt at code to generate OS-8 src and bin RK05 packs from source Dectape images using a python script. Python script is hooked into auto.def to parameterize the location of the media files. check-in: 3f0511bb6d user: poetnerd tags: clean-os8-packs | |
2017-09-03
| ||
15:36 | Updated to fix missing last character of ASCII files. check-in: 3428d2e4ca user: poetnerd tags: clean-os8-packs | |
2017-08-31
| ||
21:02 | Corrected cosmetic problem in ROCKET.BA ROCKT1.BA TICTAC.BA and WAR.BA: last linefeed in the file was missing. Fixed the files and made a new version of the .tu56 image. check-in: e360448331 user: poetnerd tags: clean-os8-packs | |
2017-08-11
| ||
14:29 | Removed CCBTCH.TM because it's a temporary file, unrelated to the C subsystem. check-in: 48ffb83d68 user: poetnerd tags: clean-os8-packs | |
00:49 | Style pass on media/os8/README.md: wrapped long lines for 80 column displays; fixed capitalization of acronyms, brands, etc.; moved some long URLs to the bottom as Markdown references. check-in: 2d92dfad81 user: tangent tags: clean-os8-packs | |
2017-08-10
| ||
20:53 | Music Subsystem. Contains source to MUSIC.PA, a program that takes .MU score files, and makes RFI noise on a physical pdp-8 to play it. Legend has it that some sites built a trivial interface that could be used instead of RFI noise. TODO: Investigate how this might run under SIMH or in the PiDP-8. See also the PiDP-8 discussion thread on this: https://groups.google.com/d/msg/pidp-8/Fo2RSfUsIwo/P14Kh5nPBwAJ check-in: d74e9f2454 user: poetnerd tags: clean-os8-packs | |
20:48 | Dectape subsystem overlay of Kermit-12. Contains binaries from old os8.rk05 system packs. TODO: Integrate upstream Kermit-12 source and build from source into this image. check-in: 092914c957 user: poetnerd tags: clean-os8-packs | |
03:14 | Creating directory for subsystems called "subsys" (to be easy and short to type.) First two inhabitants are: The newly cleaned up basic-games demos in basic-games.tu56 Ian Schofield's C compiler stuff unpicked from the cc8.rk05 packs. TODO: Create a mechanism to create cc-bin.tu56 from source here. (Involves scripts to do builds on OS/8 system and save new dectape data.) check-in: 4ec42ee1bf user: poetnerd tags: clean-os8-packs | |
2017-08-07
| ||
03:25 | Updated to render more cleanly, and to give credit to van der Mark and Gesswein. check-in: acb186d7b2 user: poetnerd tags: clean-os8-packs | |
03:04 | Added the Dectapes from vandermark.ch and the beginnings of a README.md file that says what everything is. TODO: Validate the README.md file, and add credit for vandermark.ch. check-in: 3381cd4769 user: poetnerd tags: clean-os8-packs | |
2017-08-06
| ||
18:25 | The bosi script has been generating SHA-1 160-bit sums in the MANIFEST.txt files. Calling shasum -a 256 now to give the claimed 256-bit SHA-2 sums instead. check-in: b0c16edcfe user: tangent tags: trunk | |
2017-08-02
| ||
23:11 | Moved examples/*-rim-loader.pal to a new asm/ top-level directory, since they aren't really "examples" per se. check-in: 505e8f1a3c user: tangent tags: trunk | |
18:39 | Added myself. check-in: de01588443 user: poetnerd tags: trunk | |
2017-07-31
| ||
17:12 | Adding an rk05 pack that contains complete OS/8 sources built from the OS/8 distribution tapes. MACREL and FIV source are NOT present. check-in: 0421f771e1 user: poetnerd tags: clean-os8-packs | |
01:53 | New pristine os8v3d binary rk05 pack built from Dectape distribution. Use this to craft packs customized to different uses. check-in: 4fad196e10 user: poetnerd tags: clean-os8-packs | |
2017-07-30
| ||
05:43 | Merged trunk changes in Closed-Leaf check-in: 5edf3ced9b user: tangent tags: cc8-merge | |
05:42 | Updated SIMH Users' Guide link from the old 3.9 doc to the one we host as an unversioned file. check-in: d807dd7a23 user: tangent tags: trunk | |
04:29 | Added branch naming paragraph to HACKERS.md check-in: c92201cfe0 user: tangent tags: trunk | |
04:22 | Clarified what "fossil update" on a tag checkout would do. check-in: 018e9f92b4 user: tangent tags: trunk | |
04:18 | Rewrote the Fossil 2.1 discussion at the top of HACKERS.md for clarity. check-in: 2f43f08b35 user: tangent tags: trunk | |
03:13 | Removed the "sudo" bit on the "make run" target. It's helpful on the Pi for ensuring that you get real-time priority when running a test build, but on all other host platforms, it isn't needed, so it adds an unnecessary password prompt and runs the simulator with more privs that it needs. On a Pi, say "sudo make run" instead. check-in: 9ebb6a6683 user: tangent tags: trunk | |
2017-07-16
| ||
14:33 | Merged ChangeLog.md entries in check-in: 7500e6a6f9 user: tangent tags: cc8-merge | |
14:33 | Clarification to previous check-in: 47bf89622c user: tangent tags: trunk | |
14:32 | Updated the ChangeLog comment for the 2015.12.15 release, which was still saying it remains the current stable version. check-in: db7fbd7fc9 user: tangent tags: trunk | |
01:45 | Changed a bunch of "return;" lines in the CC8 cross-compiler to "return 0". It's using K&R function declarations, which means you get an implicit "int" return type, and Clang won't let you just "return" in this case. check-in: b74fa40bf2 user: tangent tags: cc8-merge | |
01:43 | Changed the declaration of main's argv parameter for the cross-compiler from int* to char** to quiet Clang. This does mean the compiler can't be bootstrapped on OS/8 by CC8 from these sources, but according to Ian Schofield, that produces an unusably big assembly output already. Therefore, the only important compiler for this file is GCC or Clang. check-in: c5afc7544f user: tangent tags: cc8-merge | |
01:36 | Added cc8/Makefile.in check-in: cdbe48dd2c user: tangent tags: cc8-merge | |
01:31 | Yet another Fossil Markdown workaround check-in: d398e5cc9a user: tangent tags: cc8-merge | |
01:28 | Another Fossil Markdown workaround check-in: 5e1c8572c1 user: tangent tags: cc8-merge | |
01:27 | Fossil's markdown processor isn't handling some of the bold type changes we made in the RTF -> Markdown conversion. Reworked it to something it will accept. check-in: 2853cbdbe5 user: tangent tags: cc8-merge | |
01:26 | Small tweaks to the CC8 top-level readme check-in: 5a6768982e user: tangent tags: cc8-merge | |
01:13 | Merged in the 2017.07.08 distribution of Ian Schofield's Small-C based CC8 native and cross-compilers for the C programming language. This checkin differs in many ways from the upstream distribution so far, with more changes planned before merge into the trunk: * Converted the RTF and the Readme.txt files to Makrdown format. * Fixed some typos and grammar errors in those files flagged by LibreOffice Write. * Changed "PDP/8" to "PDP-8" and similar, to match DEC conventions. * Fixed some case inconsistencies: e.g. "N8.c", which is actually distributed as "n8.c". * Replaced the link to Vince Slyngstad's SVN checkout image to a link to the HTML page that describes it. * Moved the top-level RTF doc's Addendum up above the Conclusion as the new Preprocessor section. * Changed "hosted" to "cross" in the top-level doc, that being the more common term for this sort of C compiler, and because "hosted" has a different meaning in the C standard. * Renamed the SMC directory to "cross" for the same reason; also, this can't really be said to be a distribution of Small-C any more, with so many differences. * Qualified "native" with "OS/8" or "PDP-8", as seemed appropriate. The unqualified form could refer to the cross-compiler, since it is native to the SIMH host! * Renamed the "ccos8" subdirectory to just "os8", since this software is under a cc8 directory in the PiDP-8/I tree, with subdirectories for the CC8 cross-compiler (cc8/cross) and the CC8 OS/8 compiler (cc8/os8). * The top-level PiDP-8/I build system now builds the cross-compiler, so I removed all the other Makefiles and project files. * Moved the warning about using unix2dos into the top-level README.md, from cc8/smc/test/Readme.txt, where few would notice it. * Consolidated redundant copies of OS8.TM and libc.h into a cc8/include directory, with symlinks checked in for the benefit of the native OS/8 compiler, which would make use of relative paths annoying. (When checked out on a Windows box, the symlinks will give copies of the files, due to severe limitations in the NTFS symlink implementation.) I also renamed OS8.TM to init.pa, as this doesn't seem OS/8-specific, and it appears to be PAL assembly code, not a temporary file, that being the normal meaning of *.TM on OS/8. * Left out *.s, as they are generated files. (I did check in header.sb, as it appears hand-written.) * Renamed 7.script to boot/cc8.script and rk05.dsk to media/os8/cc8.rk05, and updated the references. * Removed the VC8 stuff from the boot script, since the current SIMH build does not include that, so it generates errors on start. check-in: 6cfe232a65 user: tangent tags: cc8-merge | |
2017-07-11
| ||
06:14 | The configure script now checks whether -lrt is needed to use clock_gettime(). check-in: bc11dba4eb user: tangent tags: trunk | |
2017-07-10
| ||
19:59 | Removed " IPS" from configure message reporting the chosen/set throttle value since the setting isn't always expressed in instructions per second. check-in: ee1f5fad62 user: tangent tags: trunk | |
2017-07-06
| ||
12:30 | The bosi script now enables sshd to start on boot. We didn't have to do this before since Raspbian shipped with sshd enabled, but from November 2016 on, it's now disabled, so we have to turn it back on. check-in: ff580eaa9f user: tangent tags: trunk | |
2017-04-09
| ||
22:55 | Updated Dylan McNamee's AUTHORS.md entry check-in: e01464a267 user: tangent tags: trunk | |
22:02 | Merged Dylan McNamee's fixes for the alt-serial mode into trunk check-in: 8ed5b34d8b user: tangent tags: trunk | |
22:01 | Comment and whitespace changes Closed-Leaf check-in: b326226453 user: tangent tags: alt-serial-fix | |
19:33 | Reordered GPIO peripheral mapping in the James L-W alt-serial case. It needs to do the normal GPIO mapping before attempting the secondary one used by alt-serial, since only the primary mapping is checked. check-in: 25d6254e75 user: dylan.mcnamee tags: alt-serial-fix | |
2017-04-04
| ||
13:11 | Merged trunk changes for v20170404 into release branch check-in: 01083a76e7 user: tangent tags: release, v20170404 | |
13:10 | Tagged release v20170404 check-in: 078e1d9324 user: tangent tags: trunk | |
13:08 | Using `set throttle 50%` instead of trying to find an ideal IPS value for single-core hosts, and explained the reasoning behind this in README-throttle.md. check-in: 1d4b018441 user: tangent tags: trunk | |
11:24 | "bosi prepare" now stops pidp8i-sim before starting work, so it doesn't slow the prepare process down. It will normally be running, since you do this step shortly after a reboot. check-in: 81b262dcf5 user: tangent tags: trunk | |
11:18 | Removed the time(1) call on the "zero free space" part of "bosi prepare". Raspbian doesn't ship /bin/time (bad, bad!) and Bash's builtin version isn't available at that point, so the dd wasn't even happening! check-in: 2d11f4b37f user: tangent tags: trunk | |
11:13 | Clarified the default throttle value on single-core Pi boards. check-in: c180d1af1a user: tangent tags: trunk | |
10:59 | Merged trunk changes for v20170404 into release branch check-in: 47a06feed3 user: tangent tags: release | |
10:59 | Tagged release v20170404 check-in: cc8cfe61df user: tangent tags: trunk | |
2017-04-03
| ||
08:53 | Merged trunk changes for v20170403 into release branch check-in: 31ed8d5b96 user: tangent tags: release, v20170403 | |
08:50 | Tagged release v20170403 check-in: 948f08c86f user: tangent tags: trunk | |
2017-04-02
| ||
17:12 | . check-in: 62187af0b1 user: tangent tags: trunk | |
17:04 | Updated HACKERS.md for the Fossil 2.1 situation check-in: f5fe83734d user: tangent tags: trunk | |
16:51 | URL and whitespace fixes in HACKERS.md check-in: 567d1e4219 user: tangent tags: trunk | |
16:39 | Changed --throttle=human from running 10 instructions and sleeping for a second to running one instruction and then sleeping for 100 ms. check-in: e000553005 user: tangent tags: trunk | |
16:36 | Reworked README-throttle.md a bit to cover the automatic disabling of ILS when a slash is given (implicitly or explicitly) in --throttle. check-in: b559e016b2 user: tangent tags: trunk | |
2017-04-01
| ||
23:39 | Merged v20170401 back in after trunk fork fix check-in: a16d7c0eef user: tangent tags: release, v20170401 | |
23:37 | Fixed dual trunk caused by misapplying a "trunk" tag check-in: 76efa543af user: tangent tags: trunk | |
23:36 | Fixed the palbart autodep generation output file name check-in: d15123bb7e user: tangent | |
23:25 | Updated release branch to new v20170401 tag check-in: b1503bc948 user: tangent tags: release | |
23:19 | Fixed a status code and quoting problem with the new Pi Zero detection code in auto.def, where it's deciding the default throttle value. check-in: b1711ead0a user: tangent | |
22:11 | Using /dev/rdisk* for "bosi image" only in the dd steps now, not in the diskutil steps. check-in: f7159c3245 user: tangent | |
22:05 | "bosi image" now uses /dev/rdisk* for speed check-in: f8e9405818 user: tangent | |
21:26 | More Fossil install fixes in BOSI check-in: 01775ffa71 user: tangent | |
21:18 | More BOSI fixes to recent changes check-in: b06bfde25a user: tangent | |
21:15 | Small fix to previous check-in: f9d135e9e8 user: tangent | |
21:13 | The usbmount config change in BOSI wasn't working because usbmount isn't installed by default on Raspbian; we were doing it as part of "make install". Copied that bit from Makefile.in. (Can't move it outright becasue we still need to do the right thing when the user is installing our software from source onto a fresh Raspbian system.) check-in: 762d53b7a4 user: tangent | |
21:09 | Portability fix in the recent Fossil-from-source change to BOSI check-in: 81f6499523 user: tangent | |
20:57 | Release process tweaks check-in: 7c65564687 user: tangent | |
20:36 | Typo fix check-in: 6cf0ac32ad user: tangent | |
20:23 | The colordiff part of mkrel was missing " | less " check-in: 72e15c5ecb user: tangent | |
20:22 | Merged trunk changes for v20170401 into release branch check-in: cba0f3aa07 user: tangent tags: release | |
20:11 | Tagged release v20170401 check-in: 5c47394f19 user: tangent tags: trunk | |
20:03 | Another SIMH update. check-in: 7b5d3468e0 user: tangent tags: trunk | |
19:46 | Small tweak to previous check-in: f1a2300bb3 user: tangent tags: trunk | |
19:34 | Replaced the installation of Fossil from the Raspbian package repository with a build-from-source process so we can switch to Fossil 2.1+. check-in: 32624ed9fe user: tangent tags: trunk | |
19:13 | Added pidp8i-test -v handler, which just gives the version string and exits. check-in: a13e82e87d user: tangent tags: trunk | |
18:53 | The BOSI process now tells the USB automounter that FAT sticks should be world read-write, rather than read-only by all but root, as is the default. Non-FAT sticks are left alone, since presumably their filesystem permissions will let non-root users do things to them. check-in: 03346009d5 user: tangent tags: trunk | |
18:38 | Merged "turn off LEDs on pidp8i-test exit" branch into trunk. check-in: 2703988ccd user: tangent tags: trunk | |
18:35 | Simplified the turn_off_pidp8i_leds() implementation. Closed-Leaf check-in: 4d419abfdf user: tangent tags: turn-off-leds-on-exit | |
18:32 | Assorted improvements to pidp8i-test shutdown handling. check-in: cb6c6de1f9 user: tangent tags: turn-off-leds-on-exit | |
18:22 | pidp8i-test now de-initializes ncurses and turns off the front panel LEDs on Ctrl-C and normal exit. check-in: 10958ee1b3 user: tangent tags: turn-off-leds-on-exit | |
2017-03-31
| ||
10:50 | Clarity tweak check-in: 1ab2a15d37 user: tangent tags: trunk | |
10:47 | Typo fix check-in: 15190783f9 user: tangent tags: trunk | |
10:43 | Merged the "overwriting the local simulator setup" stuff from the new --no-idle section of README.md in with similar information previously given later in the file into a new section that --no-idle now refers to. check-in: a943c3c122 user: tangent tags: trunk | |
09:58 | Noted that re-configuring can fix make dependencies in the README.md file. check-in: 3126f10816 user: tangent tags: trunk | |
09:51 | Added some "ILS" and "NLS" descriptors check-in: 59e6c3f231 user: tangent tags: trunk | |
09:50 | Expanded the coverage of --no-idle somewhat check-in: 51c19b9240 user: tangent tags: trunk | |
09:44 | Documented --no-idle in README.md check-in: e5ab9936a1 user: tangent tags: trunk | |
2017-03-30
| ||
12:39 | Disabling PDP-8 CPU idling when ILS is enabled. This has always been the default for some boot/*.script files, but we need to enforce it when ILS is enabled because we need regular CPU instruction rates to make this work. Closes [c9eb5ac0144] Also added a new configure script flag, --no-idle, to allow NLS users to disable CPU idling too, if they like. The *.script files generated from *.pal are marked noidle, with no way to change it at present. CPU idling doesn't make much sense for these two (1.script and 5.script) anyway. check-in: f24edf21c1 user: tangent tags: trunk | |
12:15 | Whitespace improvement check-in: 26c0054e0e user: tangent tags: trunk | |
11:46 | The new PDF size change detector in the simh-update script would cause an error if the output PDF file didn't already exist. This doesn't happen here in practice at the moment, but it could happen later, either because of a "fossil clean", a new Fossil checkout, or because we've added a new DOC -> PDF conversion. check-in: d3e46c3944 user: tangent tags: trunk | |
11:43 | Another SIMH update pass. Mostly more Coverity stuff. check-in: a351a7bfa1 user: tangent tags: trunk | |
11:39 | The use of cmp(1) in tools/simh-update to detect PDF change wasn't doing the right thing, apparently because metadata is changing on each re-render. (e.g. timestamps, possibly GUIDs, etc.) Switched to a simple file size difference test, which should suffice for our purposes. Potentially a substantial change could slip through this way, but we'll eventually catch up if that ever does happen, since eventually some size difference will occur. check-in: 774a08c6aa user: tangent tags: trunk | |
11:22 | Optimized the SIMH MS Word -> PDF doc conversion part of simh-update a bit: it now replaces the versions in the public unversioned file set only if the new files compare differently. check-in: f5978c5732 user: tangent tags: trunk | |
10:36 | Changed tools/version to use 10 hex digits for the Fossil checkin ID part to match the Fossil timeline default length, to avoid confusion when telling people to match the value given here to the value on the timeline page. Not everyone will understand that 8 hex digits is more than enough to make a unique match in our small-ish repository. Also made the build depend on tools/version such that when that script file changes, it does a rebuild in case some future change like this occurs. It wasn't necessary this time because we also touched Makefile.in, but we might not always do so in the future. check-in: b68d4a68fc user: tangent tags: trunk | |
2017-03-26
| ||
03:43 | The code matching USB-attached files to PDP-8 device name extensions wasn't checking that the extension is at the end of the file, so a file called a.pt.b would match the *.pt check. It also wasn't ignoring dotfiles, so not only would it waste a bunch of time looking at . and .., it would have mounted .foo.pt, which probably isn't what you want. Also added a bunch more debugging. check-in: fe9dec9077 user: tangent tags: trunk | |
03:24 | Added an ifdef'd out debug message, and clarified the code a bit. No functional change. check-in: 2fa6ae6141 user: tangent tags: trunk | |
03:13 | The file name extension generation code was chopping the extension off at one character, so that "PTP" would become *.P instead of *.PT. check-in: e7e697d41c user: tangent tags: trunk | |
03:00 | Changed SING_STEP + DF=7 combination to mount *.rk on SIMH device RK1, the second RK05 drive. It was previously set for an RL01 drive attached to an RL8A disk controller for the PDP-8/a, which is about 8 years after the PDP-8/I, and the drives themselves are more commonly associated with PDP-11s besides. This is more period-correct, and more useful with OS/8 besides. check-in: 37e357d1c3 user: tangent tags: trunk | |
02:55 | Tweaks to the new serial drive method strings emitted by autosetup, one of which avoids an 80 column terminal wrapping problem, and the other just a clarity tweak. check-in: e24705309e user: tangent tags: trunk | |
02:44 | The SING_STEP + DF feature wasn't including the device type with the ATTACH command sent to SCP, which is apparently fine for paper tapes, but fails for at least RX01 floppy images. check-in: 9ac90dc409 user: tangent tags: trunk | |
02:25 | Improved debugging output from the USB auto-attach (SING_STEP + DF) feature. check-in: 35015ee903 user: tangent tags: trunk | |
2017-03-24
| ||
10:42 | Applied James L-W's alternative serial mod patch from the mailing list, as requested by Dylan McNamee. check-in: d1d2a2dd72 user: tangent tags: trunk | |
2017-03-20
| ||
02:27 | More ChangeLog tweaks check-in: efee37ea76 user: tangent tags: trunk | |
02:25 | Clarified kIPS vs MIPS in ChangeLog check-in: eb9967716e user: tangent tags: trunk | |
2017-03-19
| ||
08:56 | Better description of the interlocked startup fix, and noted that it also affects Deeper Thought when integrated with our software via the Incandescent Thought process. check-in: c3940d0c81 user: tangent tags: trunk | |
08:52 | Whitespace fix check-in: cac92bd242 user: tangent tags: trunk | |
08:05 | Fixed [88fad950a3] check-in: f5c3de8341 user: tangent tags: trunk | |
08:05 | Small fix to previous Closed-Leaf check-in: 55674b341d user: tangent tags: interlocked-gpio-start | |
08:01 | Initial work towards fixing [88fad950a3] by adding an interlock between the new start_pidp8i_gpio_thread() wrapper and the early init stuff in gpio_thread(). Basically, instead of calling sleep(2) after creating the GPIO thread to give that thread time to start up, we play a little game with mutexes that will block the main thread if the GPIO thread isn't sufficiently initted by the time we're ready to return from our start_pidp8i_gpio_thread() call. Untested, since the work is being done on the desktop, and it only takes effect on the Pi. check-in: 1e40f7741f user: tangent tags: interlocked-gpio-start | |
07:35 | Comment tweaks check-in: 9b11373499 user: tangent tags: trunk | |
07:27 | Moved part of the GPIO init sequence from the top of gpio_thread() into the new start_pidp8i_gpio_thread(). (It should have been done earlier; we shouldn't have left it behind.) check-in: c0bc19013a user: tangent tags: trunk | |
07:08 | Rearranged ChangeLog entries a bt check-in: 0ab9073dff user: tangent tags: trunk | |
07:06 | Wrote up preliminary ChangeLog.md entries. Not yet ready to push a release, but a lot has happened since the prior release. check-in: 73f34c82d2 user: tangent tags: trunk | |
06:40 | Disabled the DF32 device in all boot/*.script outputs, since we don't use it, and its default device name ("DF") is ambiguous with respect to a PDP-8 CPU register that's always present. check-in: 84a8e1d314 user: tangent tags: trunk | |
04:43 | The attempt to do read-only I/O on the Raspberry Pi GPIO peripheral from the scanswitch program on the basis that we only need read-only access here falls down in reality because merely reading one of the GPIO pins fails with a segfault if you don't have the peripheral read-write mapped. This can only be classed as a bug in the GPIO peripheral driver, but we have to work with the software as we find it. check-in: 535a9561c2 user: tangent tags: trunk | |
04:22 | The two GPIO thread start cases in pidp8i-sim and pidp8i-test weren't equivalent, so the prior checkin prevented the simulator from starting on non-Pi hosts. The difference is that pidp8i-test *must* map the GPIO periphieral into RAM to proceed, while pidp8i-sim would like to have it mapped, but it can fall back to stock SIMH behavior if it isn't present. Therefore, added a new flag to start_pidp8i_gpio_thread() to indicate whether the GPIO peripheral must map or not. Also made a similar distinction for map_peripheral(), which now understands non-exclusive mappings for use by libexec/scanswitch while another PiDP-8/I based program runs: there's no reason we can't get the switch values in this case, we just need to open the peripheral for read-only access, without locking it. Also fixed a bug introduced in [0bd33744ffb07b75]: the @VERSION@ string in the config line was accidentally replaced by its value at that time, doubtless due to hasty copy-pasting between gpio-common.c and gpio-common.c.in. check-in: d5722b7ca4 user: tangent tags: trunk | |
02:49 | scanswitch must now link with -pthread on Linux since it linkes to gpio-common.o, which how includes the new GPIO thread start/stop routines, even though it doesn't call them. check-in: ee85a40171 user: tangent tags: trunk | |
02:42 | Moved the start/stop GPIO thread code common to both the pidp8i-sim and pidp8i-test cases into a pair of helper routines in src/gpio-common.c.in now called by both. gpio_thread() is now module-scoped, since other modules now no longer need to know about it. check-in: 498ea766b0 user: tangent tags: trunk | |
01:45 | The recent renaming of the top-level "os8test" target in the Makefile.in wasn't reflected into tools/simh-update.in, so the OS/8 test after a successful simh-update run wasn't running. check-in: 160dff50d7 user: tangent tags: trunk | |
01:43 | Cleaned up GPIO thread starting and stopping code at the top of main() in src/scp.c: match local style, give less generic error message on thread start failure, and use variable names less likely to conflict with future upstream SIMH changes. check-in: b0534785eb user: tangent tags: trunk | |
01:34 | Removed "Ian Schofield" from src/PDP8/pdp8_cpu.c license comment, since his brtval update patch has since been removed from this module. The closest rough equivalent to this is now in src/gpio-ils.c. check-in: 36f36410b9 user: tangent tags: trunk | |
01:30 | Merged in PDP-8 DECtape fixes from SIMH upstream check-in: 7b8b53d287 user: tangent tags: trunk | |
01:27 | Removed the negative enum value test in the prior checkins because it causes clang on macOS to complain that this can't happen. It's right, if everyone is playing ball, but since we have the assert test on unhandled cases, we don't need to squish the warning. We'll just catch it at run time via the assert() path rather than by an explicit test. check-in: 7f98b5a844 user: tangent tags: trunk | |
01:21 | The prior checkin removed the last legitimate reason for src/scp.c to be generated by autosetup from scp.c.in: it needed the @BOOTSCRIPT@ value to build the "do $bootscript" commands. We now delegate that back to the pidp8i.c module which has a better reason to be generated from pidp8i.c.in by autosetup. check-in: ce2c9d0444 user: tangent tags: trunk | |
01:17 | Moved all handling of awfulHackFlag into the pidp8i.c module and cleaned its handling up so that it is no longer "awful". It is now just a module global set during the brief window between when the switch handler sets it from within the PDP-8 CPU core and when SCP calls back into this module via a new pidp8i.h API that builds the command we want SCP to run for us as part of handling that front panel switch combo. For the most part, this is functionally identical to the previous implementation, except for being a lot cleaner. There are some messaging differences, and we now exhaustively handle all of the command value cases, however. check-in: 491698e049 user: tangent tags: trunk | |
2017-03-18
| ||
23:33 | Reworked the "awful hack flag" handler in src/scp.c.in to a) eliminate the code duplication with respect to the upstream version; b) match the upstream style; c) clarify the code flow; d) add several comments and one diagnostic message. No functional change. check-in: 67498625df user: tangent tags: trunk | |
22:56 | Rather than ifdef'ing out all the uses of the upstream sim_video module and not including it, we now build it without defining `SIM_VIDEO`, which basically turns it into a stub module that compiles quickly even on a Pi 1. We don't use it presently, but we may need it later for things like on-Pi Spacewar builds where the X-Y vector output uses the SIMH SDL video subsystem. The primary point of this change, however, is to let us remove unnecessary changes in the patch we make relative to the upstream SIMH code. check-in: a328b94dcb user: tangent tags: trunk | |
2017-03-13
| ||
03:51 | Replaced a removal of a call to vid_close() from scp.c with an ifdef wrapper around it, to match the way we deal with the other dependencies on the sim_video module, which we don't currently use in this software distribution. check-in: c330ac3135 user: tangent tags: trunk | |
03:48 | Merged more whitespace changes in from SIMH trunk. Mainly removal of unnecessary trailing whitespace. check-in: 5a1579564e user: tangent tags: trunk | |
03:17 | Whitespace tweaks to reduce the size of the simh-update diff check-in: 735d9e645e user: tangent tags: trunk | |
03:11 | Prior commit didn't include the new Git commit ID for SIMH check-in: 5fe3a7a664 user: tangent tags: trunk | |
03:04 | Merged in upstream SIMH changes check-in: 626ce65da6 user: tangent tags: trunk | |
03:03 | simh-update now logs the version numbers it is diffing in case it fails, since then the only way to find them short of going to github.com is to look in output.log, since they won't be substituted into Makefile.in yet. check-in: daf52cea65 user: tangent tags: trunk | |
02:37 | Whitespace and comment tweaks to reduce unnecessary differences between our pdp8_cpu.c and the upstream version. check-in: 8e1127a7ab user: tangent tags: trunk | |
02:35 | The simh-update script no longer tries to diff our Makefile.in against the upstraem Makefile. check-in: c5ea8b9bcb user: tangent tags: trunk | |
2017-02-28
| ||
06:24 | The DEP switch handler wasn't ensuring that *pPC is limited to 12 bits, even though the LOAD_ADD handler did ensure it. Somehow, between these two points, PC is getting its high bits set, which causes us to deposit the SR into the wrong core memory location. This is probably just masking a bug elsewhere, but I lack the time to chase it down now. check-in: 9aa43b8c3e user: tangent tags: trunk | |
2017-02-13
| ||
15:36 | Refinement of IB reset in START handler. Still doesn't do "return to OS/8 from ADVENT." check-in: ef27926333 user: tangent tags: trunk | |
15:26 | More work on START handling. Still doesn't do the same thing "RUN 7600" does in the "restart OS/8 from ADVENT" test, but I need the checkin. check-in: 430c821114 user: tangent tags: trunk | |
14:33 | Delegating much of our START handling to SIMH's cpu_reset() function, which does most of what our START handler did and more, leaving us to handle only a few other things. This should fix the "resume from ADVENT" problem. check-in: afdaf7a69b user: tangent tags: trunk | |
11:13 | Reverted the substantive part of [6e3bab]: both versions of the code do the same thing, and the new one is just less effective. check-in: aa584d189b user: tangent tags: trunk | |
10:39 | Further refinement of switch debugging code check-in: 75a0b4cd88 user: tangent tags: trunk | |
10:30 | The method for loading PC from SR in L_ADD was bogus. Also improved and expanded the recently-added debugging in the flow control switch handler. check-in: 6edbabfa8a user: tangent tags: trunk | |
09:58 | Somehow config line code to display [ils] when GPIO is built in ILS mode got lost. Restored it. check-in: 653a3ae4b1 user: tangent tags: trunk | |
09:28 | Added debugging outputs for the CONT and START switch presses check-in: 510ceb6f50 user: tangent tags: trunk | |
2017-02-10
| ||
23:29 | If Fossil was somehow not installed on the system or if the local checkout directory had become disassociated from its repo file, the @VERSION@ substitution into gpio-common.c would be the Fossil error, not the version string emitted by tools/version. We now catch this error and diagnose the cause in auto.def, then stop the process, so we don't produce an un-compilable C file. check-in: 0593692aec user: tangent tags: trunk | |
2017-02-07
| ||
07:16 | Mark Pizzolato's re-jiggering of the PDP-8 CPU registers to allow the ones previously declared on the stack inside sim_instr() to be accessed via the front panel API. This branch also serves as a PiDP-8/I free version of the simulator (excepting the starting of gpio_thread() from the SCP) for comparison tests. Closed-Leaf check-in: 65b498c924 user: tangent tags: pidp8i-free-cpu | |
06:32 | Also disabling the ILS when the user gives --throttle=$ratio check-in: a06c5c8216 user: tangent tags: trunk | |
06:25 | Disabling ILS when you configure on a multi-core pi, but you use the --throttle=human or --throttle=trace syntaxes. check-in: 12cbcebd52 user: tangent tags: trunk | |
06:19 | Pointing to new ILS wiki article from README.md check-in: 18835ebcdb user: tangent tags: trunk | |
2017-02-06
| ||
04:59 | Bumped Pi Zero default throttle to 1.25 MIPS check-in: 7868817712 user: tangent tags: trunk | |
2017-02-05
| ||
23:20 | Added the first direct support for the Pi Zero: reported as "pi0" in the configuration string, and increasing the throttle value to soak up the extra CPU speed over the Pi 1+ series. Also bumped the Pi 1+ throttle value from 666k to 850k, as related testing shows they'll do it without a whole lot of damage to the CPU idle time. check-in: f461ac3b3b user: tangent tags: trunk | |
20:36 | Moved the top-level Makefile.in into PRECIOUS_INFILES so its Makefile output version doesn't get removed on Ctrl-C during a build. check-in: 938ba7222c user: tangent tags: trunk | |
20:33 | Removed unnecessary @builddir@/ bits in Makefile.in, and fixed a few latent problems preventing building out-of-tree. check-in: e1ed74d733 user: tangent tags: trunk | |
20:16 | Improved the way we determine the "pi type" tag in the configuration string. It no longer confuses several cases with "pi1+", and it can detect RPi Compute Modules. check-in: cb45538bbc user: tangent tags: trunk | |
04:26 | Typo fix check-in: 23aeef1ced user: tangent tags: trunk | |
04:06 | Thinko fixed in new MANIFEST.txt generation code check-in: f676159074 user: tangent tags: trunk | |
03:58 | Assorted edits to README-throttle.md check-in: b8c55bb6b0 user: tangent tags: trunk | |
03:04 | More selective "set -x" in bosi check-in: 4867cbfb0a user: tangent tags: trunk | |
03:03 | Added several time(1) commands to bosi check-in: 3a91cbec62 user: tangent tags: trunk | |
02:48 | Whitespace tweak check-in: d59d2cd37e user: tangent tags: trunk | |
01:55 | Fixed usermod step in reorg of bosi check-in: 6a46ad4520 user: tangent tags: trunk | |
01:11 | Merged trunk changes for v20170204 into release branch check-in: 81b7423840 user: tangent tags: release, v20170204 | |
01:11 | Tagged release v20170204 check-in: 441caf2063 user: tangent tags: trunk | |
01:09 | The bosi step also renames the "pi" group to "pidp8i" now. check-in: 0648b11dfe user: tangent tags: trunk | |
01:02 | Removed the "systemctl stop pidp8i" step from bosi. No longer needed with the newly reorganized bosi sequence. check-in: a09c461044 user: tangent tags: trunk | |
01:01 | Whitespace fix check-in: 1ad5e76e5a user: tangent tags: trunk | |
00:51 | The bosi process was doing the "rename pi to pidp8i" step after the software configure and build step, so that the user name "pi" was configured into the shipping init script and such. Split the usermod steps into two stages, rename user and set password, which now surrounds a new "build" step between "init" and "prepare". The latter is what remains of the old "reset" step. check-in: 2866116923 user: tangent tags: trunk | |
00:26 | More bosi process simplifications check-in: 0197b1c58e user: tangent tags: trunk | |
00:18 | The new "zero the SD card" step in "bosi image" naturally causes an end-of-device error, which was halting the image process, so it wouldn't move on to re-imaging the card. check-in: 3297ba9775 user: tangent tags: trunk | |
00:00 | bosi now displays its usage message without the "set -x" noise at the top when you don't give any args. check-in: 090a2929c8 user: tangent tags: trunk | |
2017-02-04
| ||
23:58 | Simplified generated MANIFEST.txt check-in: 2f3263a6e2 user: tangent tags: trunk | |
23:33 | Now that we no longer need to report the block size for the user to copy between the "bosi shrink" and "image" steps, powering down the intermediate Pi we use to shrink the FS. check-in: b6304fb616 user: tangent tags: trunk | |
23:22 | Another attempt at serializing the diff step during mkrel check-in: 57a4dd4d22 user: tangent tags: trunk | |
23:19 | Merged trunk changes for v20170204 into release branch check-in: 1f9a88fb6b user: tangent tags: release | |
23:19 | Tagged release v20170204 check-in: 0f9fa508ab user: tangent tags: trunk | |
22:36 | Reworked the bosi process to no longer take a "blocks" value in the "image" step. Now that we're using 2G cards, we can just copy the slack space, too, and expect it to compact down nicely in the Zip step. This in turn let us get rid of the clumsy "image-nls" tag scheme, since we can just use the parameter space vacated by the vague "object" parameter. Since we've got a single-core Pi here to build images with, we don't need to pass --no-lamp-simulator to the "bosi init" step, either, the other user of the "object" parameter. This should fix the unbootable image problem we had with the last single-core OS image. check-in: e928902283 user: tangent tags: trunk | |
20:51 | BSD portability fix to new sed command in "bosi image" step check-in: d02b80df29 user: tangent tags: trunk | |
20:39 | Trailing slash fix in previous check-in: 0ec03e0b98 user: tangent tags: trunk | |
20:39 | The new MANIFEST.txt file builder was using fully-qualified path names instead of the base image file name. check-in: 02536804ad user: tangent tags: trunk | |
20:27 | More tweaks to bosi script check-in: 8e39bc558c user: tangent tags: trunk | |
20:23 | The configure script now checks for curses.h and initscr() in libncurses. check-in: 8b50245fbe user: tangent tags: trunk | |
20:19 | Not sure why, but the "poweroff" step in the "bosi reset" step was being done in the background, which seems to create a race condition that shows up on a Pi 1. Doing it synchronously now. check-in: 3d24b874b5 user: tangent tags: trunk | |
20:12 | It is now possible to run "bosi reset" multiple times on a given system without restarting it. It runs to completion again. check-in: 18163cde0f user: tangent tags: trunk | |
20:09 | The usermod step in bosi would fail when run on a cleanly-imaged SD card because the init step left the pidp8i service running. check-in: 8a51d50f79 user: tangent tags: trunk | |
19:56 | Installing libncurses-dev in "bosi init" step, else the new test.c implementation won't build. check-in: 53a8d8bc62 user: tangent tags: trunk | |
19:16 | greadlink fix in bosi script, affecting the "image" step check-in: 7107d33a45 user: tangent tags: trunk | |
18:31 | mkrel wasn't pausing on the "diff check" step check-in: 95c2b9182f user: tangent tags: trunk | |
18:29 | Merged trunk changes for v20170204 into release branch check-in: 75a0d35fc7 user: tangent tags: release | |
18:29 | Tagged release v20170204 check-in: 9db2a1fb9c user: tangent tags: trunk | |
04:57 | Updated the preliminary ChangeLog.md check-in: ee9931bbfb user: tangent tags: trunk | |
04:15 | Fixed a return value type. No functional change. check-in: d1aff2925b user: tangent tags: trunk | |
04:13 | The new ledstatus[] mechanism now works in ILS mode, tested with a slightly modified version of Deeper Thought 2. check-in: a2bd89be01 user: tangent tags: trunk | |
04:02 | If src/deeper.c is found at configure time, it builds it against the selected GPIO module. Currently it only works when built as --no-lamp-simulator, and it requires some minor adjustments to deeper.c. check-in: e48070eaa5 user: tangent tags: trunk | |
03:29 | Updated preliminary ChangeLog again check-in: 7e156bf4bc user: tangent tags: trunk | |
03:22 | Reimplemented pics/schofield-brtval.c inside the R file of the same name in that directory, and holding the generated data inside the R session instead of expecting the C program's output to be written to a CSV file which we parse. Also fixed the decay constants: they were off by 10x, which threw off the length of the X axis, though the resulting data shape is the same. Also including the min and max data values in the data set. check-in: 46d6a65ece user: tangent tags: trunk | |
02:25 | Merged test.c improvement into trunk. check-in: 4186424625 user: tangent tags: trunk | |
02:23 | Redesigned test.c as a series of actions which can be stepped through forwards and backwards manually, resumed, and interrupted. Closed-Leaf check-in: d34eec5c0a user: tangent tags: test-ui | |
00:28 | Small fix to previous check-in: faba0b8f12 user: tangent tags: test-ui | |
00:21 | Restored the ledstatus[] method of directly modifying the LED states for the GPIO thread, used by test.c and others. It's implemented in terms of the new struct display mechanism on the back end, but it saves translating code. check-in: 26055a5a03 user: tangent tags: test-ui | |
2017-02-03
| ||
11:45 | Reworked src/test.c to work with the new gpio-nls mechanism. check-in: 326a778233 user: tangent tags: trunk | |
11:15 | Moved the indent(1) commands from the HACKERS.md file into a new script, tools/restyle. check-in: 27ab06f9c7 user: tangent tags: trunk | |
09:52 | URL fix check-in: cd5773536c user: tangent tags: trunk | |
09:50 | . check-in: 4a1c1bff1b user: tangent tags: trunk | |
09:45 | Another pass at the preliminary changelog check-in: e2047330f5 user: tangent tags: trunk | |
09:34 | Typo fix check-in: e46bcbaa43 user: tangent tags: trunk | |
09:31 | Moved README-test.md to doc/pidp8i-test.md; same justification as previous checkins. check-in: 9d290f9b14 user: tangent tags: trunk | |
09:29 | Moved README-OS-images.md to doc/OS-images.md for the same reason I moved the "naked Pi" article into the wiki. check-in: 4ab6f9268c user: tangent tags: trunk | |
09:23 | Moved "naked Pi" README into the wiki. We shouldn't cheapen "README" that way; that file name should be for files everyone really should read. check-in: 603b154dc6 user: tangent tags: trunk | |
07:22 | Added the R and C programs that generated the data behind schofield-brtval.svg, in the name of openness and replicability. check-in: c16dcde01b user: tangent tags: trunk | |
07:03 | Ran Inkscape's "simplify" function on the data curves generated by R from the raw values output by our brtval.c program. The prior version of this graphic is technically more correct, in that there is an SVG node at each actual data point plotted, but the way SVG renderers draw this, the line isn't smooth, as it would be if we ran our data generator with more resolution. This approximation is therefore toward an ideal of correctness, not away from it. check-in: 27de285fd6 user: tangent tags: trunk | |
05:53 | Added SVG showing Ian Schofield's ILS brightness curves check-in: ee2ce13632 user: tangent tags: trunk | |
03:50 | Updated lamp simulator credit now that it's evolved check-in: 018660ad44 user: tangent tags: trunk | |
03:42 | Comment clarification check-in: da051fcc07 user: tangent tags: trunk | |
03:24 | Comment fix check-in: 40e8c5f304 user: tangent tags: trunk | |
2017-02-02
| ||
14:13 | The bosi image step now zeroes the SD card prior to re-writing the image to it. If you were to pass a truncating size value to it, the lack of this step means you'd read a short image, then rewrite the card with the same truncated image, and not realize that it's a bad image because the rest is still there. By zeroing it, we produce a fairer test. check-in: 62df1ff915 user: tangent tags: trunk | |
14:05 | . check-in: e5739ed70c user: tangent tags: trunk | |
14:03 | Simplified the description of the led-counters feature in the ChangeLog check-in: e3459e04e8 user: tangent tags: trunk | |
13:56 | Preliminary v20170202 changelog udpates check-in: f587b37166 user: tangent tags: trunk | |
13:31 | Setting mode 755 on the file pointed to by /etc/init.d/pidp8i, so normal users can run it. Nothing in that file now requires root privs, except for the swap file restoration stuff. (You still can't run it via systemd, though.) check-in: 81d545a203 user: tangent tags: trunk | |
12:52 | Merged led-counters branch into trunk. check-in: cc79b18af6 user: tangent tags: trunk | |
12:48 | Grammar and spelling fix check-in: 0a4a9ac025 user: tangent tags: trunk | |
12:42 | Lowered the default throttle value for single-core Pi boards based on testing the current led-counters branch on a Pi 1 B+. It runs fine at ~2x PDP-8/I speed (666k) and refused to accept a throttle value of 750k, so the prior 4x default (1332k) was definitely out, even if we assume the prior code was a lot faster; it certainly wasn't 2x faster! check-in: e8f9a47e1e user: tangent tags: trunk | |
12:26 | Merged doc changes in from trunk Closed-Leaf check-in: 9deccc8da2 user: tangent tags: led-counters | |
11:53 | Tweaks to the HACKERS.md file check-in: 60df1ee2ef user: tangent tags: trunk | |
11:34 | Added software rebuild section to "nekkid" guide check-in: 692fb38251 user: tangent tags: trunk | |
11:23 | Referring to new README-nekkid.md from README-OS-images.md check-in: a9a68b59ba user: tangent tags: trunk | |
11:19 | Added README-nekkid.md: How to Run a Nekkid PiDP-8/I check-in: b41872f252 user: tangent tags: trunk | |
09:56 | Resetting ILS state when re-entering simulator from Ctrl-E in case the user gave a SET THROTTLE command that throws off our timing. check-in: b68c3d6fe5 user: tangent tags: led-counters | |
09:28 | Merged trunk changes in check-in: bc6ee9e0a0 user: tangent tags: led-counters | |
09:19 | Reworked the text of README-OS-images.md to work both standalone as an element of the zip file and as a separate web page. check-in: 85cf708bee user: tangent tags: trunk | |
09:17 | Changed the name of the new manifest file to MANIFEST.txt check-in: 6f517a3def user: tangent tags: trunk | |
08:45 | First cut at MANIFEST.TXT and README.md additions for OS image zip files check-in: c107f037bf user: tangent tags: trunk | |
2017-02-01
| ||
19:59 | Fixed ignore-glob rule for new doc/simh/*.pdf check-in: de33b39891 user: tangent tags: trunk | |
19:53 | Merged in trunk changes check-in: e2113929e3 user: tangent tags: led-counters | |
19:52 | Updated SIMH again. Nothing important for us. Did it only because it was "free" with the DOC to PDF feature, just completed. check-in: 830c1e5ac1 user: tangent tags: trunk | |
19:48 | Instead of copying *.doc from upstream Git dir into our unversioned doc/simh dir, we now convert them to PDFs via LibreOffice. check-in: 339956296f user: tangent tags: trunk | |
19:40 | Added a check for "git worktree" to the simh-update tool. check-in: 623514fac0 user: tangent tags: trunk | |
07:30 | Updating the software SR from the SR switches on each iteration was costing us 0.3 MIPS on a Pi 3 when unthrottled. Switched to a slightly more complex method that gets this update out of the fast code path. check-in: 431f01b007 user: tangent tags: led-counters | |
06:30 | Changed the ILS update loop's innermost timing to increase the brightness level of the LEDs. Not sure if this will have bad side effects, but it seems correct. Closes [24b8b302df] check-in: 3d7e5c65fa user: tangent tags: led-counters | |
06:29 | Added another ifdef'd out debugging block check-in: e2211144c6 user: tangent tags: led-counters | |
06:08 | Restored freeze-on-Ctrl-E behavior. The display swapper was making the display go dark because it didn't know the display update code was no longer running. check-in: 4ab28b87ed user: tangent tags: led-counters | |
05:42 | Style tweak; no functional change check-in: 9622d581af user: tangent tags: led-counters | |
05:12 | Fixed several related problems in handling the display during STOP or SING_INST mode. check-in: 2751a38a8b user: tangent tags: led-counters | |
05:03 | Added another ifdef'd-out debugging block check-in: 79552ec8bc user: tangent tags: led-counters | |
02:57 | Added an ifdef'd-out block of debugging code for the NLS handler used by the ILS code in single-instruction or STOP mode to debug this "display goes blank on STOP" bug. (Answer: because all the regs go to 0! But checking it in ahead of the bug fix, because it's a separate thing.) check-in: ced432330c user: tangent tags: led-counters | |
00:54 | Updated license statement for the design files, following resolution of the discussion on the mailing list. check-in: ca367870ce user: tangent tags: trunk | |
2017-01-31
| ||
18:23 | Added a section on the PiDP-8/I KiCad design files to the COPYING.md file. check-in: 180f3219d1 user: tangent tags: trunk | |
18:16 | Added KiCad and FreeRouting design files, and moved the PDF schematic into that directory. Same "no copyright" declaration applies. check-in: 8d2fea0dac user: tangent tags: trunk | |
18:08 | Renamed the "schematics" directory to "hardware", as we're about to put non-schematic hardware design files in there. check-in: 2f7112d379 user: tangent tags: trunk | |
18:02 | Added PDP-8/I panel schematic converted from KiCad to PDF by Tony Hill. "No copyright" declared here: https://groups.google.com/d/msg/pidp-8/bcIH9uEB_kU/twnJbJqzDAAJ check-in: 17956f5b69 user: tangent tags: trunk | |
16:11 | No longer clearing MA, MB, and IR on simulator startup. The real hardware did not do that. Closes [008cae890c]. check-in: 8446075dd3 user: tangent tags: led-counters | |
16:03 | Merged SR fix in from trunk check-in: 0b975fd395 user: tangent tags: led-counters | |
16:02 | The simulator now loads its internal SR register with the known values from switchstatus[] on every CPU iteration. Closes [fad3ad73ea]. See that ticket for the reasons it is important to do it every time, instead of only when we get an OSR instruction. check-in: 287c3a70af user: tangent tags: trunk | |
04:44 | Fixed the known problems with resume from SING_INST and STOP modes. check-in: 3491b728b9 user: tangent tags: led-counters | |
04:38 | Put a set_pidp8i_leds() call back in that we can't live without. check-in: 2fb8ef03e5 user: tangent tags: led-counters | |
03:52 | Merged trunk changes check-in: 8c1249888c user: tangent tags: led-counters | |
03:51 | Found a simpler solution for exporting the state of the SING_INST and STOP switches to the modules that care about it, outside the pidp8i module that sets these flags. check-in: de7371eaf2 user: tangent tags: led-counters | |
03:47 | Fixed a problem with "make clean" check-in: 7a6a81338f user: tangent tags: trunk | |
02:32 | Comment typo fixes check-in: 7b7d1cac29 user: tangent tags: led-counters | |
02:27 | Fixed a race condition in the code to update the displays' stopped and single-instruction flags. check-in: e487dc9f5b user: tangent tags: led-counters | |
02:16 | Simplified the logic for handling CONT switch presses. check-in: d148d91048 user: tangent tags: led-counters | |
2017-01-30
| ||
14:38 | Restored the upstream SIMH cpu_astop feature per feedback on GitHub issue #387 check-in: 07063bafef user: tangent tags: trunk | |
14:25 | Merged trunk chages check-in: bff1c653ea user: tangent tags: led-counters | |
14:24 | Moved the new "run" target down in the Makefile so it's alphabetized with the other major top-level targets. check-in: dc70b66f34 user: tangent tags: trunk | |
14:23 | Renamed the `os8test` target to `run` and added a `sudo` prefix to it. check-in: 5aa467c9f7 user: tangent tags: trunk | |
12:08 | Merged trunk changes check-in: 83efc25f99 user: tangent tags: led-counters | |
12:07 | Another fix to single instruction flag handling check-in: eaaa40a201 user: tangent tags: led-counters | |
12:05 | Merged in upstream SIMH OSR fix and v3 front panel API update check-in: c83f288279 user: tangent tags: trunk | |
11:45 | Squished some needless log noise from simh-update in the "rename *.in files" step. check-in: 0f65d0cf98 user: tangent tags: trunk | |
11:39 | Comment improvement check-in: 5cff0b8c4d user: tangent tags: trunk | |
11:38 | Fixed up some unnecessary differences between our fork of SIMH's PDP-8 simulator and the upstream Git version we most recently sync'd with. The only functional difference is that our version would ignore SIMH breakpoints. I can't see why we'd want that: if someone sets a SIMH breakpoint, of *course* it should drop into the sim> prompt, even if this isn't period-correct. The user started the anachronistic behavior by setting the breakpoint. check-in: 5bf7e2f748 user: tangent tags: trunk | |
10:32 | Function inlining tweaks check-in: e58eec8ec9 user: tangent tags: led-counters | |
10:27 | Prior checkin missed changes to src/PDP8/pidp8i.c.in. check-in: 895b7901e2 user: tangent tags: led-counters | |
10:08 | Added another flag to struct display for SING_INST mode, since that also needs to force ILS into NLS mode until we're back to free-running mode. check-in: f48aa42624 user: tangent tags: led-counters | |
2017-01-29
| ||
20:00 | Small adjustments to the IPS estimator in the PiDP-8/I CPU core check-in: bafe1d7a24 user: tangent tags: led-counters | |
19:59 | Fixed a variable reference bug accidentally checked in. (Was fixed in the non-*.in file.) check-in: 33dad00a07 user: tangent tags: led-counters | |
19:48 | Fixed another bug in ms_time(), this time an incorrect cast. check-in: db5b67aab6 user: tangent tags: led-counters | |
19:38 | Our ms_time() function had its arithmetic backwards, so it wasn't returning milliseconds since the epoch at all! check-in: 698cc94e03 user: tangent tags: led-counters | |
19:14 | Improved initial IPS estimation to avoid slow ramping LED brightness with heavily-throttled simulators. (e.g. 5.script.) check-in: bb93e9e435 user: tangent tags: led-counters | |
17:01 | More fixes to LED states in STOP mode check-in: 0cac226e2e user: tangent tags: led-counters | |
16:53 | Bug fix to previous. check-in: 04ebaebd34 user: tangent tags: led-counters | |
16:52 | The Stop LED now turns off in STOP mode. The recent optimizations removing unnecessary set_pidp8i_leds dropped this case. It's better to special-case it rather than put this big old loop call back in for this one LED. check-in: 2d74c78cbb user: tangent tags: led-counters | |
16:31 | Renamed "blink" functions to gpio_*. They do more than blink LEDs. :) check-in: 943ab5685c user: tangent tags: led-counters | |
16:24 | Added a missing "extern". (C doesn't care, but I do.) check-in: a202a098f4 user: tangent tags: led-counters | |
16:24 | Hid some unnecessary exported functions that we no longer use between modules. check-in: 5fa5c2ecb0 user: tangent tags: led-counters | |
16:13 | Moved the "skip early" stuff at the top of set_pidp8i_leds() out into the PDP-8 simulator CPU main loop, which calls that function. Testing shows that this function call costs ~1.0 MIPS all by itself! check-in: 29dd841b8d user: tangent tags: led-counters | |
14:58 | First cut at abstracting the simple "update panel LEDs" loop for use by NLS full time and ILS while the processor is in STOP mode. The display structure now contains current-state bitfields like the traditional ledstate[] values, which this new combined routine uses. check-in: e75894b4ec user: tangent tags: led-counters | |
14:35 | ILS had half-implemented code to show Fetch and Execute at 50% brightness because they're each only on half the instruction time; tied this loose string. check-in: 7048ce0ac9 user: tangent tags: led-counters | |
12:48 | Slowed the incandescent lamp decay down some. More lampy, less snappy. check-in: f177d85566 user: tangent tags: led-counters | |
12:32 | Refined the "skip out early" stuff at the top of set_pidp8i_leds(), reducing updates per second according to prior front panel update rate reduction and adding dithering. check-in: 21a9bf10e3 user: tangent tags: led-counters | |
12:30 | Reduced front panel update rate from ~400 times per second to ~100. No point going faster. check-in: 8527d866b2 user: tangent tags: led-counters | |
10:58 | Fixed a divide-by-zero bug in the new brightness calculation code in the ILS GPIO module. check-in: 040a22530f user: tangent tags: led-counters | |
10:54 | Merged --debug-mode build fix from trunk check-in: b55caeacce user: tangent tags: led-counters | |
10:53 | Moved -D_GNU_SOURCE back into default CFLAGS definition. We were skipping it in --debug-mode, which broke the SIMH build, but this flag should be harmless everywhere we care to build. If not, we need to handle it differently in auto.def than like this. check-in: dc5c74bf30 user: tangent tags: trunk | |
10:47 | Merged in some of the recent trunk changes check-in: bd3972a6a9 user: tangent tags: led-counters | |
10:45 | Restored the dynamic "leave early" mechanism at the top of set_pidp8i_leds(). This restores ~8 MIPS operation on my Pi 3, and I think we can get away with it now that we're calculating LED brightness based on an aggregate history. This checkin greatly decimates that value, but before, we were doing single- instruction sampling. We may have to adjust the decimation value, but even a bit of decimation should help a lot. check-in: 5940370e0c user: tangent tags: led-counters | |
10:42 | Fixed a portability problem in the Makefile.in clean target that prevented it from running correctly on Raspbian, where they use dash as /bin/sh check-in: 511c920e73 user: tangent tags: trunk | |
09:59 | Made the Execute, Pause, and Fetch LED bumping steps part of set_pidp8i_leds(), and calling that only once per CPU instruction. check-in: 5b0dbc1989 user: tangent tags: led-counters | |
08:52 | I've convinced myself that the only place we need an atomic operation in the new "struct display" mechanism is in the pointer swap, so replaced the rest of the uses of __atomic*() with simple C code, and explained the reason it can be that way in extensive comments. check-in: af7a539f6a user: tangent tags: led-counters | |
08:18 | ILS version now mostly works with the new LED "on" count mechanism. It's a little flickery, but it takes a *lot* less CPU than before! check-in: 8ac46a0ea8 user: tangent tags: led-counters | |
06:35 | Merged GPIO init switchstatus race condition fix in from trunk check-in: 19f4225eef user: tangent tags: led-counters | |
06:28 | Whitespace fix check-in: dc3dfe4e6d user: tangent tags: trunk | |
06:26 | Fixed a race condition in the switchstatus[] setup sequence, where a slow-to-start blink_core() implementation wouldn't read in the switch values early enough, leaving the array set to all-zeroes, which means "all switches closed," which the simulator sees as including SING_INST + SING_STEP + STOP == shutdown! Also dropped one indent level in blink() by returning early from the function when the GPIO memory mapping doesn't happen instead of skipping the bulk of it by wrapping it in an if block. check-in: a36dc13209 user: tangent tags: trunk | |
05:02 | The display no longer either flashes all-on or goes dark at startup and in STOP mode. check-in: c680f47cdb user: tangent tags: led-counters | |
04:59 | Minor cleanups to the AUTHORS.md file check-in: be9028fdad user: tangent tags: trunk | |
03:24 | Whitespace fix check-in: 5792f6806b user: tangent tags: led-counters | |
03:17 | Wrapped the LED "on" count array in a struct to make the pointer arithmetic easier to read. It's still triple indirection, but indirection through a struct pointer can use the arrow operator, whereas a pointer to an array makes it unclear which level you're at at any given instant. check-in: dbd65e379b user: tangent tags: led-counters | |
02:33 | Merged in trunk changes check-in: 2654e16a29 user: tangent tags: led-counters | |
02:32 | Changed the "i" prefix from tools/version when not running a release version to use "id[$id]". The "i" blended into the lowercase checkin ID hex. check-in: 434a7d1357 user: tangent tags: trunk | |
02:30 | Merged cscope feature into trunk check-in: 6147bb046f user: tangent tags: trunk | |
02:15 | Added cscope detection, and calling it from "make tags" if available check-in: da1ca9afb9 user: tangent tags: led-counters | |
00:12 | Neglected to mark a few of the bump_*() functions inline. check-in: 384720b888 user: tangent tags: led-counters | |
2017-01-28
| ||
12:39 | First attempt at taking the simple bitfields used for communicating register values between the PDP-8 CPU instruction execution loop and the PiDP-8/I front panel GPIO thread and switching them to a 2D array of LED "on" counts, allowing us to accuractely calculate the brightness of the LED at that time. This code builds on macOS, but it has yet to be tested on the Pi, which is part of why this is being checked in on a branch. The other reason is that we're pretty sure it's going to take at least one more checkin to turn this into something we can ship. check-in: 66a2818a47 user: tangent tags: led-counters | |
11:51 | Merged instruction type arithmetic optimization into trunk check-in: c784492bcb user: tangent tags: trunk | |
11:51 | Duplicate line removal fix for [329266] Closed-Leaf check-in: 49c1c5057f user: tangent tags: inst-type-arithmetic-optimization | |
11:46 | Whitespace tweaks check-in: dd2b5114a9 user: tangent tags: inst-type-arithmetic-optimization | |
11:44 | Whitespace fix check-in: e685dd011b user: tangent tags: inst-type-arithmetic-optimization | |
11:40 | Optimized the arithmetic for decoding the instruction type LEDs to turn on from the IR value. check-in: 329266d283 user: tangent tags: inst-type-arithmetic-optimization | |
10:15 | Marked the Makefile as "precious" so that if you Ctrl-C out of a 'make' during which Makefile was re-generated from Makefile.in, GNU make won't remove Makefile as it normally does for outputs resulting from an interrupted make. check-in: 44dc191fbe user: tangent tags: trunk | |
10:13 | Merged recent "set LEDs" code path cleanups. check-in: c635530705 user: tangent tags: trunk | |
10:08 | The optimization to reduce the number of calls to set_pidp8i_leds() caused the Run light to remain on during STOP state. Closed-Leaf check-in: 95d2f8feda user: tangent tags: set-leds-cleanup | |
09:58 | The NCOLS etc checkin didn't include the gpio-ils.c changes, since we're not building it here. check-in: 0d8c9fe67c user: tangent tags: set-leds-cleanup | |
09:53 | Reworked the set_pidp8i_leds() calls so that there are now only two of them, one at init time outside the CPU dispatch loop, and once down at the very end before we fetch the next instruction. The manipulation of the pause, execute, and fetch LEDs now happens via separate dedicated functions, so we're not flashing the whole panel several times per PDP-8 instruction. check-in: c342062fc7 user: tangent tags: set-leds-cleanup | |
09:37 | Moved NCOLS, NROWS, and NLEDROWS constants out of gpio-common.c.in into its header file so we don't need to export the corresponding integers. This has the nice side benefit that we can now use these values in places where C only allows constant expressions, getting rid of the recently-added malloc() for the temp copy of the LED values. check-in: aaad3f7b35 user: tangent tags: set-leds-cleanup | |
2017-01-26
| ||
02:09 | Several adjustments to set_pidp8i_leds() calls. The main practical improvement is that we can now see execute state on the front panel. It was in that state too briefly before it got reset to fetch. check-in: 3c2086101e user: tangent tags: trunk | |
01:44 | Removed the code that skips updating the global ledstatus[] values from the PDP-8 CPU core based on the human PoV limit. Because the GPIO thread runs asynchronously with it and has its own timing, these two high-jitter timing loops created a messy beat frequency on the front panel, which you could see in a tight KSF ; JMP .-1 loop, as OS/8 does when idle, waiting for a key. This mechanism came to us in the merger of the common parts of ILS and NLS, and ILS only needed it when it was modifying the LED brightness values values in the SIMH thread instead of in the GPIO thread as it does now. The only argument for continuing to do this — and for also doing it for NLS — is that it avoids a bunch of recalculation that the human couldn't see, but that is only true if the GPIO thread is able to stochastically sample the LED states so that even with the asynchronous jitter going on, a tight loop like the above eventually blurs together to a nice 50/50 mix of the two instructions' LED states, especially under the ILS. Ultimately, any attention paid to the human PoV limit has to be over in the GPIO thread. check-in: 61ce7d6852 user: tangent tags: trunk | |
01:08 | Comment fix check-in: ec527293eb user: tangent tags: trunk | |
2017-01-25
| ||
23:34 | Removed simh_breakpoints.doc mirror from web site. Not as helpful for our audience as I'd assumed. check-in: c41799802c user: tangent tags: trunk | |
13:57 | More improvements to make distclean check-in: b8580cf355 user: tangent tags: trunk | |
13:50 | make distclean now removes the recently-added Makefile.in outputs check-in: bf4f33e7b2 user: tangent tags: trunk | |
11:28 | Added redirecting Makefiles to the examples, src, and src/PDP8 subdirectories so that those who like to work on source code from within those trees can "make" from there, too. These Makefiles purposely redirect only top level "build the software" type targets, leaving out "run the system" or "install the system" type targets, which must be run from the top level. These intermediate Makefiles also don't try to do anything special for individual targets. So, there is no way to rebuild, say, a single example from the examples subdirectory. This is not a recursive make system, where the top level delegates to the subdirectories, on purpose. (Google the problems with recursive make if you don't know why.) check-in: 2eabd33b3f user: tangent tags: trunk | |
2017-01-24
| ||
04:16 | Decided I don't want to ship a copy of simh_magtape.doc after all. Too esoteric for my site's front page. check-in: 35f3b83731 user: tangent tags: trunk | |
04:02 | Merged trunk changes for v20170123 into release branch check-in: 7bf9c608cf user: tangent tags: release, v20170123 | |
03:57 | Tagged release v20170123 check-in: 74a49556f8 user: tangent tags: trunk | |
03:49 | tools/version now uses `i` as the Fossil checkin "ID" tag to distinguish from `v` for release version numbers. `r` is basically a throwback to my svn days, and was being used only because it's not a hex number. check-in: a6281ce72b user: tangent tags: trunk | |
03:23 | Whitespace fix to previous check-in: 9630c41762 user: tangent tags: trunk | |
03:18 | Dropped the [fp] tag from the GPIO configuration line since I've given up on the integer math approximation idea for the ILS feature. check-in: 37a7865535 user: tangent tags: trunk | |
02:18 | Updated SIMH to latest version and modified the SIMH update script to copy a subset of the SIMH docs to doc/simh/*.doc and sync them up to tangentsoft.com/pidp8i as unversioned files. check-in: d8536d9169 user: tangent tags: trunk | |
2017-01-23
| ||
03:50 | The ILS decay function is now asymmetric to try and better mimic the behavior or real incandescent lamps, which turn on nearly instantly but take a few seconds to fade out to zero brightness. check-in: 04842216c5 user: tangent tags: trunk | |
03:32 | Flipped this branch back to integer math for others to play with, even though we've abandoned the idea. We're using somewhat different constants here based on experimentation done in the meantime. Closed-Leaf check-in: a9940bb04f user: tangent tags: int-math-ils | |
02:19 | Dropped "version" from the config line. It's about to start wrapping, and it's pretty clear that what follows that tag is a version string. check-in: 49cd065c4e user: tangent tags: trunk | |
02:17 | Merged int-math-ils branch back in even though the stated purpose of the branch was a failure, since the new code does at least move knowledge of brtval out of the pidp8i.c module and into gpio-ils.c, so that all ILS code is now in that one module. check-in: 5c46b0cc5e user: tangent tags: trunk | |
02:15 | Returned brightness math to FP, as the integer approximation had only a few percent CPU improvement by top(1)'s measure, not enough to pay for the increased difficulty of understanding. Closed-Leaf check-in: 2015c958b0 user: tangent tags: int-math-ils | |
01:49 | Experimental try for integer math approximation in the ILS feature. This also merges the brightness value calculation into gpio-ils.c and removes the ILS-specific call rate code in set_pidp8i_leds(), since I realized that the required update rate was simply to make the call rate equal the iteration rate of blink_core() over in the GPIO module! That is, we were trying to synchronize two functions in two threads, even though they had no reason to communicate. This change also effectively returns the ILS module to receiving ledstatus[] as its LED value input, rather than brtval. This should mean we can link pidp8i-test and Deeper Thought 2 against the ILS module, once we've proven out the feature. check-in: 87e9a944ef user: tangent tags: int-math-ils | |
00:03 | set_pidp8i_leds() now flashes the new LED values over in a single memcpy() call instead of setting one row at a time over the course of the bulk of the function in case this makes the display a bit more consistent. This is my concession to not having a mutex guarding this inter-thread data. check-in: f66b463d99 user: tangent tags: trunk | |
2017-01-22
| ||
23:41 | The new method of calculating the number of times set_pidp8i_leds() should skip out early wasn't quite right. Now it gives more or less the same effect as the version prior to the change. check-in: 149b149a57 user: tangent tags: trunk | |
22:22 | tools/mmake now passes its args onto the child make(1) process check-in: ae4562fcf0 user: tangent tags: trunk | |
22:12 | Updating our estimate of the proper skip count in set_pidp8i_leds() in order to give an LED value update rate of ~100 updates per second, roughly equal to the human PoV limit. The prior method used a hardcoded value which means on really fast Pis we're updating more often than we need to, and when the PDP-8 simulator is throttled down (such as for a blinkenlights demo) we were updating way too slowly. As proof of concept, the ac-mq-blinker example now runs at less than 1/10 the speed it used to, yet it looks vastly better than before. Closes [28d33e9046]. check-in: 1da4ee0590 user: tangent tags: trunk | |
19:47 | tools/mkbootscript was attempting to sort the core addresses in its boot/*.script outputs, but it was using the default sort ordering, which in Perl happens to be string ordering, not numeric ordering as we were blindly assuming, and that gives odd results with some scripts. Fixed. check-in: 3c3643f325 user: tangent tags: trunk | |
19:41 | The mechanism for generating *.lst, *.pt, and *.script files from examples/*.pal is now fully general, meaning that you can now drop any *.pal file into the examples directory and get all of those outputs with a "make" command. check-in: 28593391e9 user: tangent tags: trunk | |
19:28 | The tools/version script now knows how to parse the version string from the release branch's checkin comment, as formatted by tools/mkrel. check-in: da1648c824 user: tangent tags: trunk | |
19:07 | Small fix to the new LED driver module for the no-lamp-simulator case. Also simplified the way the selection made during configuration is built into the files generated from *.in. check-in: 358bc98bd1 user: tangent tags: trunk | |
18:39 | Added messages to the configure script telling which way it configured the GPIO module. check-in: 4d94f6269c user: tangent tags: trunk | |
18:36 | Renamed SERIALSETUP to PCB_SERIAL_MOD check-in: f7397a5796 user: tangent tags: trunk | |
18:33 | Fixed several bugs in the new configuration message builder check-in: 8278e527a7 user: tangent tags: trunk | |
18:09 | Updated the release process to track the move from the no-lamp-simulator branch method of selecting the build type to ./configure --no-lamp-simulator. check-in: f7cc1f3a93 user: tangent tags: trunk | |
17:53 | The configure script no longer errors out when run on a single-core host if "brtval" is found in src/gpio.c. Instead, we simply behave as if --no-lamp-simulator was given. The only way to get the incandescent lamp simulator is to not give that configure option and to run it on a multi-core host. check-in: 2884daa90c user: tangent tags: trunk | |
17:34 | The recent refactoring of the GPIO module allows us to replace the current no-lamp-simulator and nls-test branch system with a configure script option, --no-lamp-simulator. It simply selects whether gpio-nls.o or gpio-ils.o is linked into pidp8i-sim. With this change, we've added either an [ils] or [nls] tag to the configuration string emitted by the GPIO module. Closes [e06f8ae936]. check-in: f85aed2fc3 user: tangent tags: trunk | |
17:12 | Restored the prior printfs() and such from the top of blink() as a new single-line version and configuration message modeled on Erlang's emulator info statement. check-in: 8f068cd978 user: tangent tags: trunk | |
17:09 | Extracted the elements common to both gpio.c and gpio-nls.c as gpio-common.c and renamed what's left of gpio.c to gpio-ils.c. The gpio-common.c module does all the common elements, then calls into blink_core(), now implemented twice in gpio-[in]ls.c, only one of which is linked into any given program. check-in: 1769197e50 user: tangent tags: trunk | |
02:25 | Merged the diffs between v20170116 and the tip-of-trunk into the no-lamp-simulator branch, changing some of it to fit with the intent of that branch, then checked it into this new nls-test branch because we're not yet ready to bag and tag the next release. This branch might not be temporary. We might need to do one of these partial merges prior to a release again later. Now we'll have a place to do it. Closed-Leaf check-in: 6257ba80fa user: tangent tags: nls-next, nls-test | |
01:53 | Replaced the magic integers passed to set_pidp8i_leds() sTT parameter with an enum, and removed the explanatory comments on each call now that the call is self-explanatory. check-in: 34eeaeed23 user: tangent tags: trunk | |
2017-01-21
| ||
18:45 | If INSTUSR is "root" during the configure step (say, because you've run it as "sudo ./configure") it will now error out rather than generate init scripts and such that we know are wrong. This can happen by accident, such as whenever you touch a *.in file that causes an autoreconfig; if done while sudo'd for some reason, you get this effect. This is fixing a real occurence, not a purely theoretical problem. check-in: 1f7c6b2d7b user: tangent tags: trunk | |
18:39 | When you give ./configure --debug-mode, it skips the checks for the -f optimization flags to the compiler. check-in: 4b728a7da2 user: tangent tags: trunk | |
17:46 | make now reconfigures and rebuilds when any of the files produced from *.in are removed. Previously, only a change to *.in would cause this. This checkin also does a better job of removing such files on "make clean", so that "make clean && mmake" does a complete rebuild without getting stuck, requiring a manual ./configure. check-in: 008c4881a6 user: tangent tags: trunk | |
15:52 | Fixed a couple of problems in the way SING INST and CONT were handled. These are related because in the old way of doing things, these two switches had a kind of lock-step operation that tried to split instruction execution over two separate passes of the PDP-8 sim's CPU instruction decoding loop. Now these two switches are handled more or less the same way as all the others, in a single cycle of the instruction loop. With the prior scheme, while the processor was stopped with a HLT instruction, pressing CONT would basically jump 2 instructions forward, rather than continue to the instruction after the HLT, skipping it. This fix closes [f961906a5c]. While in there and reading the DEC documentation describing the proper operation of the switches, I found that we weren't handling SING_INST properly at all. When flipped with the processor in free-running mode, it is supposed to stop the processor just as if you'd pressed STOP. Now it does. (I could have checked this in separately, but the two fixes are in overlapping and interrelated sections of code, so it doesn't make sense to check in a purposely-written erroneous SING INST handler just to get a separate checkin comment.) check-in: 9a12773270 user: tangent tags: trunk | |
14:13 | Un-microcoded the RAL HLT instruction in examples/bit-rotate.pal: it tickles a palbart bug, because these are group 1 and group 2 OPR instructions, respectively! Consequently, the SIMH PDP-8 assembler sees only the HLT and doesn't do the RAL. check-in: 193d34204c user: tangent tags: trunk | |
06:58 | Clarity pass on the top-level README.md file. check-in: e2fd19eea1 user: tangent tags: trunk | |
06:18 | The mkrel process now does a "fossil diff -w | less" just before the "fossil ci" command, giving the user a chance to see the diffs in what they just built, to be sure nothing surprising got merged. check-in: c2eaa6ca27 user: tangent tags: trunk | |
06:15 | Removed src/gpio-nls.h in the no-lamp-simulator branch for the same reason we removed it from the trunk branch. Closed-Leaf check-in: 8c80abac2e user: tangent tags: nls-next | |
06:14 | Removed src/gpio-nls.h: the differences between the two versions of the GPIO module are all in the *.c files. No point shipping two identical *.h files, especially given that no other *.c file has ever #included gpio-nls.h. check-in: a22a47a8fa user: tangent tags: trunk | |
06:03 | Similar comment fix for src/gpio-nls.c as was just done on the no-lamp-simulator branch. check-in: 63858bf03c user: tangent tags: trunk | |
06:00 | During the v20170116 release process, I just copied the no-lamp-simulator version of gpio.c over the top of gpio-nls.c, which is more or less fine, but it means the header comments still refer to gpio.c, not gpio-nls.c. Fixed the comment. check-in: 4969e1650f user: tangent tags: nls-next | |
05:56 | The check for brtval in src/PDP8/pdp8_cpu.c.in became obsolete when we extracted the bulk of the front panel interaction code to the new pidp8i.c.in module. Rather than change the test to look in that new file, changed it to look in src/gpio.c, which is shorter and accomplishes the same goal. check-in: d2dd4232ce user: tangent tags: trunk | |
2017-01-19
| ||
19:17 | Clarified code style rules check-in: a0cbc61e11 user: tangent tags: trunk | |
15:45 | Assorted improvements to HACKERS.md check-in: b20d93bc02 user: tangent tags: trunk | |
15:19 | Reindented src/PDP8/pidp8i.c.in to match new style guide in HACKERS.md. Bascially, function bodies were indented one level, except for closing braces which came back out one level. check-in: f52f8dda3c user: tangent tags: trunk | |
15:09 | Added "Getting Developer Access" section to HACKERS.md check-in: f2e7f25699 user: tangent tags: trunk | |
15:07 | Added Fossil installation info and tweaked the one-sentence Fossil description. check-in: b2f9adf4ce user: tangent tags: trunk | |
14:56 | First version of HACKERS.md, a more thorough guide to contributing to the PiDP-8/I software project than the brief hints given on the front page of the site. (wiki/Home). check-in: 34cac8687c user: tangent tags: trunk | |
2017-01-18
| ||
22:45 | The CPU cleanup branch seems to be 100% functional again. Merged it into trunk. check-in: 768cc6393f user: tangent tags: trunk | |
14:47 | Fixed another instance of the same order-of-operations bug. Closed-Leaf check-in: ca9943cc3d user: tangent tags: cpu-cleanup | |
14:43 | Suppressing the call to the USB media mount routine if its caller fails to pick a sane device code. Shouldn't affect anything, but may prevent some future crasher. check-in: 3bb309e772 user: tangent tags: cpu-cleanup | |
14:40 | The caller of the function to mount media image files from USB was ignoring the return value, so restructured the code so it doesn't return anything. check-in: deb5913951 user: tangent tags: cpu-cleanup | |
14:29 | Fixed an order-of-operations problem in the optimized calculations for the DF and IF values from the switchstatus[1] register. check-in: d3ca851bd1 user: tangent tags: cpu-cleanup | |
13:53 | The pidp8i.c.in file in the prior checkin was missing changes mistakenly made to the generated pidp8i.c file. Reapplied them to the source file. check-in: f261173b93 user: tangent tags: cpu-cleanup | |
13:28 | Factored the vast bulk of the PiDP-8/I specific code out of PDP8/pdp8_cpu.c into a set of several new functions defined in a new PDP8/pidp8i.c module. Along the way, reworked the code style to match the rest of SIMH. Very little is functionally different, and the differences are intended to only be spot improvements not needing a separate checkin comment. Examples: a) some of the bit twiddling math was overly complex, so reduced several 3-ish line calculations to one-liners; b) appended strerror(errno) to some error message strings; c) reorganized the switch testing code a bit to reduce the number of times certain tests and calculations are made. This change also greatly reduces the number of PiDP-8/I specific globals. All but one of the app-wide globals that used to be defined in pdp8_cpu.c.in are now scoped to the pidp8i.c module, and all but one of those are statics scoped to a single function in that module. Because this refactoring moves the @BOOTDIR@ usage from pdp8_cpu.c to the new pidp8i module, the SIMH module is back to being a static C file, while pdp8i.c is generated from pidp8i.c.in. Also added a whole bunch more comments, and moved some prior comments into bug tickets. Checking this in as a branch because it is so extensive that I might have broken something. It hasn't been tested yet because I did the work on my fast desktop PC, not on the Pi, there being no point since the changes are so wide-reaching that it didn't even start building again until just before this checkin. Now it's time to do that testing. check-in: 642a7201a0 user: tangent tags: cpu-cleanup | |
05:14 | Reworked some of the bosi steps after the recent change to where the usermod step happens. These changes should have been part of that. check-in: 2a4574d15f user: tangent tags: trunk | |
2017-01-17
| ||
05:00 | Small fix to previous check-in: 6888919960 user: tangent tags: trunk | |
04:58 | The usermod command in bosi's reset routine only worked correctly on the first pass, since the user was still called "pi". If run again on a later pass where that user is now called pipd8i, it now only does the password change. check-in: 34d25dce5b user: tangent tags: trunk | |
04:50 | The bosi script now calls tools/mmake instead of hard-coding a "make -jN" command. check-in: fd8a2cb4ab user: tangent tags: trunk | |
04:48 | Ported difference minimization between src/gpio* modules from the no-lamp-simulator branch where the only difference between these files is a comment to the trunk branch where the differences are more substantial, but where the needless diffs should still be removed. check-in: ec5fd1c92c user: tangent tags: trunk | |
04:43 | Removed Ian Schofield credits from the top of the files that the incandescent lamp simulator patch modifies here in the no-lamp-simulator branch, since that code is not present here. check-in: 207070a1e1 user: tangent tags: nls-next | |
03:42 | Auto-detecting the OS SD card dev name in the bosi script instead of hardcoding it to /dev/rdisk10. check-in: 74e29589ed user: tangent tags: trunk | |
02:59 | Put off the usermod command in the bosi script from the "init" step to the "reset" step so the user doesn't have to enter the long "edson" password during image builds. check-in: 8c87a6d3b4 user: tangent tags: trunk | |
02:19 | Grammar fix check-in: f0f422eae7 user: tangent tags: trunk | |
01:55 | Fixed "bash -e" -> "set -e" in mkrel script; not equivalent! check-in: bbdb2e69ef user: tangent tags: trunk | |
01:55 | Merged release changes for v20170116 Closed-Leaf check-in: 5d8f63a52d user: tangent tags: no-lamp-simulator | |
01:51 | Merged trunk changes for v20170116 into release branch check-in: 3f252c8a91 user: tangent tags: release, v20170116 | |
01:51 | Release v20170116 again: fix to the single-core + lamp simulator test in `auto.def` that only broke on the `no-lamp-simulator` branch, so had to fix it on trunk and string the changes back through the release process. check-in: a8e26c97f5 user: tangent tags: trunk | |
01:49 | Merged release changes for v20170116 check-in: 5266fe3749 user: tangent tags: no-lamp-simulator | |
01:40 | Merged trunk changes for v20170116 into release branch check-in: b831e1aa46 user: tangent tags: release | |
01:38 | The mkrel script now runs "fossil update" prior to any merge steps in case the local ../release and ../no-lamp-simulator checkout trees aren't at the tips of their branches at mkrel time. check-in: 1ff16590d5 user: tangent tags: trunk | |
01:36 | Tagged release v20170116 check-in: 01c815b3d6 user: tangent tags: trunk | |
01:10 | Lowered the single-core throttle value from 1600k to 1332k per feedback from the mailing list, and outright refusing to build the trunk branch on a single-core Pi. Explained all this in the relevant README*.md files. check-in: b9c60a41ad user: tangent tags: trunk | |
00:45 | The mkrel process now breaks out immediately after a merge that creates a conflict instead of waiting to fail in the build process due to hitting the <<<<<< characters, which give confusing error messages. check-in: 32be7a1d8a user: tangent tags: trunk | |
00:07 | Updated the COPYING.md file with the results from the SIMH mailing list thread (http://mailman.trailing-edge.com/pipermail/simh/2017-January/016159.html) about TSS/8 and ETOS. check-in: 0dfac12323 user: tangent tags: trunk | |
2017-01-14
| ||
07:49 | Moved the installation of the boot scripts from "make install" to "make mediainstall". We shouldn't overwrite the boot scripts for the same reason we shouldn't overwrite the binary media images. check-in: 54324622fc user: tangent tags: trunk | |
07:39 | Added a sched_yield() call to the end of the main GPIO loop to clue the scheduler that we're done for that iteration. The fflush() call we have there already may suffice, but at the very least, this is explicit. check-in: dc48d6cd85 user: tangent tags: trunk | |
07:37 | Lowered the scheduling priority of the GPIO thread from 98 (near the max of 99) to 4 (still well above the minimum of 1) since this seems to work just as well. This may simply be because no other processes on the Pi are using SCHED_FIFO. check-in: 3fd8bee1ba user: tangent tags: trunk | |
2017-01-13
| ||
08:38 | Modified copyright year on the AC/MQ blinker program license per email from Robert Krten. check-in: 063e8b86ca user: tangent tags: trunk | |
2017-01-12
| ||
19:47 | Obtained permission to distribute the AC/MQ blinker program under the SIMH license, so added that license to the top of examples/ac-mq-blinker.pal. Quoting the reply to my email asking for permission: "I, Robert Krten, the sole author of the program identified as the "AC/MQ blinker program" for the PDP-8/I, hereby agree to distribute the program under the SIMH license as found at https://tangentsoft.com/pidp8i/doc/trunk/SIMH-LICENSE.md" check-in: 58094e0cf4 user: tangent tags: trunk | |
06:43 | Another URL fix in the new licensing material check-in: e0241770dd user: tangent tags: trunk | |
06:40 | Added copyright messages to the Markdown files that reference SIMH-LICENSE.md so that it is clear who is granting the license. check-in: 160483044a user: tangent tags: trunk | |
06:37 | Added license section to end of examples/README.md check-in: 7024cc51a2 user: tangent tags: trunk | |
06:35 | Clarifications to the DEC hobbyist license claim in COPYING.md. check-in: 08b984e585 user: tangent tags: trunk | |
06:25 | Small link fix for previous checkin check-in: f360190dd4 user: tangent tags: trunk | |
06:24 | Many more software licenses chased down and added to the appropriate files. Where direct editing was not possible, created license files nearby, and pointed to them from a new COPYING.md file. check-in: fc7e5f2a91 user: tangent tags: trunk | |
2017-01-09
| ||
22:27 | Added the new SIMH-style license grant to the header comment of the gpio*.c modules, and added Ian Schofield to the gpio.c module (only!) and to the pdp8_cpu.c.in module, per this private email reply to my licensing proposal: "This looks absolutely fine to me. Do add this license to the tarball if we all agree." check-in: 06829f12b1 user: tangent tags: trunk | |
22:09 | SIMH doesn't support THROTTLE values below 1k (or maybe 10k) so changed the --throttle=human and =trace configure script options to use a different syntax which allows specifying speed in terms of instructions/ms. check-in: 26a6b02367 user: tangent tags: trunk | |
04:03 | Lowercased the "SET [NO]THROTTLE" commands to match the style of the existing boot/*.script commands. SIMH doesn't care, but it's inconsistent. check-in: 0e15f11ea2 user: tangent tags: trunk | |
02:56 | Added the license notice to src/scanswitch.c as well check-in: ffa1390cb8 user: tangent tags: trunk | |
2017-01-08
| ||
15:53 | The *BSDs all understand sysctl hw.ncpu, so added tests for those to tools/corecount, so it'll return the correct value on them, too. check-in: 4be8a6510e user: tangent tags: trunk | |
15:36 | We weren't cleaning up after a few of the recently-added *.in files in "make clean". Fixed. check-in: 8cd4016117 user: tangent tags: trunk | |
15:03 | A prior checkin accidentally changed the way HLT instructions are handled. It was an attempt to fix bug [f961906a5c] which wasn't intended to be checked in; the fix doesn't work, so it's now back to the way the code worked yesterday, which is still broken. check-in: 6155a4b535 user: tangent tags: trunk | |
14:39 | Adjusted the single-core SIMH throttle value down from 3.3 MIPS to 1.6 MIPS. The prior value gave about 50% CPU usage for all threads in pidp8i-sim on a Pi 3, so cut it in half for a Pi 1. Also had to change the notation from "3.3M" to "1600k" because SIMH refuses to handle fractional values; LAME. check-in: 0770a4a2ec user: tangent tags: trunk | |
14:26 | All of the boot scripts except for those generated from assembly code now have a SIMH throttle value set based on either detected CPU cores at configuration time or the value of the new --throttle configure script value. Added README-throttle.md to describe the values allowed for this option, as they're pretty extensive. On a multi-core machine, the default is to have the prior behavior, which is no throttling: run flat-out, taking up a whole CPU core for pidp8i-sim's main thread, leaving the rest for the GPIO thread and whatever else the Pi does. On a single-core machine, the default is to set a value that should give something like 50% CPU usage to pidp8i-sim on the slowest Raspberry Pis we support, allowing enough CPU power left over for the incandescent lamp simulator thread. Consequently, removed README-single-core.md and the references to it. Closes [dfd864da90]. check-in: 48b84d4bd9 user: tangent tags: trunk | |
11:11 | The mkrel process now attempts to do all the work automatically, with no user input. The prior release showed that the gap between releases is long enough that I can't remember what to write as release comments, and because the comment editor takes over the screen, I can't figure it out from the context of previously-executed commands, since the editor hides that. check-in: 58e0f138a0 user: tangent tags: trunk | |
11:05 | Replaced the "make -j11" hard-coded values with a call to a new helper script, tools/mmake which calls another newly-added script (tools/corecount) to get the core count on this system and multiply it by 1.5 and pass it to make -j. It currently knows how to do this on Linux and Mac OS X. For all other systems, it returns 1, so it gives you make -j1, since the math truncates, rather than rounds. This is not just a nicety: "make -j11" can lock up a Pi in some cases. It appears to be worst when most of the files in the system have to be rebuilt. It's probably running the system out of RAM, and it isn't handling it gracefully. check-in: cffeb65eb8 user: tangent tags: trunk | |
10:53 | Style improvments to the coverage of ./configure script options in README.md. check-in: e30b30d2ef user: tangent tags: trunk | |
10:31 | Backed out part of [842fb3ef61] since now all of boot/*.script are generated in one way or another. Therefore, we no longer need to install @srcdir@/boot/*.script. (This doesn't revert the change, it effectively *inverts* the way this install step worked prior to that checkin: we used to install only from the srcdir, but now we install only from the builddir.) check-in: 71586b261d user: tangent tags: trunk | |
10:27 | Added tools/mkbootscript, a Perl script that parses palbart listing files generated during the normal build process and turns them into SIMH boot scripts. This in turn means we can remove boot/1.script and boot/5.script, since they can now be generated from corresponding programs in examples/*.pal. Closes [87cb9ca2f0] check-in: d77e169826 user: tangent tags: trunk | |
10:21 | Added examples/bit-rotate.pal, a very simple demo, which we'll be using as a test case shortly. check-in: 06b08e0c58 user: tangent tags: trunk | |
10:21 | Added examples/asr33-rim-loader.pal, the Teletype Model 33 ASR version of examples/hs-rim-loader.pal, corresponding to what is currently checked in as boot/asr33-rim-loader.script. check-in: cd98f98dd1 user: tangent tags: trunk | |
09:53 | Added examples/hs-rim-loader.pal, PAL assembly code for the high-speed RIM paper tape loader currently given in boot/1.script. It produces the same code, except that it starts 1 location earlier in core with a HLT instruction, which will become important later. check-in: 5b4b65874f user: tangent tags: trunk | |
08:42 | More style improvements to examples/ac-mq-blinker.pal, plus some rework to the memory locations it uses to match boot/5.script. check-in: f7c67eb7f8 user: tangent tags: trunk | |
08:17 | Comment improvement check-in: 8dd4e8e1d1 user: tangent tags: trunk | |
07:37 | Small fix to prior comment change check-in: 595d5cc4f8 user: tangent tags: trunk | |
06:39 | Minor code cleanups in examples/add.pal check-in: 6b8786042e user: tangent tags: trunk | |
06:30 | When cloning the SIMH license agreement for the new authors, accidentally included "ROBERT M SUPNIK" in the no-warranty clause. Substituted generic "the authors" language. Also regularized the whitespace of the clause after that to match the rest. check-in: 81915a1c50 user: tangent tags: trunk | |
06:19 | When building out-of-tree, only the boot/*.script files in the src tree would be installed. Now installing both those and the ones in the build tree generated from boot/*.script.in. This means that building in-tree causes the same files to be copied twice for each such generated script, but that's harmless. check-in: 842fb3ef61 user: tangent tags: trunk | |
05:53 | Replaced several gotos with "continue" statements: the goto label was at the end of a while() loop, and all of the "goto skip" statements were up at that while loop's level, so there was no need to use goto here. check-in: 270d24975c user: tangent tags: trunk | |
05:31 | Fixed a needless whitespace difference with respect to upstream SIMH code. check-in: 7085e873a6 user: tangent tags: trunk | |
05:19 | Applied a patch from the mailing list: https://groups.google.com/d/msg/pidp-8/DzpKgmC7bck/4_3hr53yCwAJ This patch allows the simulator's internal EAE's step counter value to be displayed on the PiDP-8/I front panel. Without this patch, those LEDs remain dark, even when the simulator is doing work that should make them blink. This patch got lost for so long because it was supposed to go into the "next version" of Oscar Vermeulen's source base, but there was no such version. Since this happened well before my maintainership, it was lost until Paul R. Bernard pointed it out to me. check-in: ab402f9eaf user: tangent tags: trunk | |
03:31 | Added a copy of the SIMH license agreement to the top of src/test.c, modified to refer to its author, Paul R. Bernard. The license grant was obtained via private email; in reply to the same message referenced in the prior checkin, PRB said, "I agree with your license changes." check-in: 17b7de432b user: tangent tags: trunk | |
03:27 | Added a similar license to the existing SIMH one to the top of pdp8_cpu.c.in and scp.c.in, allowing the changes made by Oscar Vermeulen and Warren Young to be used on the same terms as SIMH itself. The license grant from Oscar Vermeulen was obtained via private email: WY: "To make things truly simple, I propose using the same license SIMH itself uses. I hereby agree to license my changes to the current software under the following license: [same text as committed here snipped]" And in reply: OV: "I agree - happy to keep my part under the original simh license." check-in: b536178bf2 user: tangent tags: trunk | |
2017-01-06
| ||
02:15 | Merged trunk/release changes in check-in: b6a33b8ec3 user: tangent tags: no-lamp-simulator | |
02:13 | Merged trunk ChangeLog.md improvements in. No functional change. check-in: 9d2d920209 user: tangent | |
02:13 | Merged auto.def fix down from release branch into trunk. (Should have been committed on trunk in the first place. It wasn't due to doing it on a system that still used the old "release" tag, as opposed to the "release" branch.) check-in: 99b6a17f83 user: tangent tags: trunk | |
02:09 | Jim Tcl lacks a "file attributes" feature, so calling out to chmod. That'll prevent building on Windows, but that isn't likely to work anyway, short of Cygwin, WSL, or similar. check-in: 585b15e55a user: tangent | |
00:26 | "Trouble with grammar have I, yes!" -- Yoda check-in: f81e019087 user: tangent tags: trunk | |
00:22 | Minor tweaks to the new ChangeLog.md entries check-in: 9d5cc2b126 user: tangent tags: trunk | |
00:16 | Merged release branch changes in check-in: 995c080dc2 user: tangent tags: no-lamp-simulator | |
00:15 | Merged v20170105 changes into release branch check-in: 9cde1575d1 user: tangent tags: release, v20170105 | |
00:15 | Release version v20170105 check-in: c44994abee user: tangent tags: trunk | |
00:14 | Updated SIMH to upstream Git commit ID 0db0236bed using the new simh-update mechanism. (No manual adjustment was required, other than the whitespace fix committed a few hours ago.) check-in: cd1db2713d user: tangent tags: trunk | |
2017-01-05
| ||
23:55 | Added "make simh-update" and "make simh-update-f" targets which run a new script, tools/simh-update [-f]. That script attempts to merge the latest upstream SIMH changes into our source tree by checking out both the last version we successfully merged and the current master tip and applying the diffs between our software and the old checkout version to the new software. Closes [c20a953737] check-in: 8f452f4205 user: tangent tags: trunk | |
22:43 | src/scp.c.in is also allowed to have CRLF line endings check-in: 383f3f6bd1 user: tangent tags: trunk | |
22:42 | The recent SIMH update missed a trailing space in one of the files, causing a needless diff, and preventing automatic merging. check-in: d84c630e8f user: tangent tags: trunk | |
19:23 | The generated Makefile now passes the upstream SIMH git commit ID of the software we most recently merged into our distribution to the compiler so that it's built into the resulting pidp8i-sim program, so that it's displayed as part of the version string. This allows users of our software to report bugs upstream while referencing a version that is meaningful to the upstream project. check-in: 69b66e7294 user: tangent tags: trunk | |
2016-12-26
| ||
22:30 | Added Tony Hill to the AUTHORS.md file, and credited him for the SIMH update. check-in: 8f2ec6aeec user: tangent tags: trunk | |
22:25 | Added bit about `no-lamp-simulator` branch merge to the release process doc check-in: 6aa9caad1f user: tangent tags: trunk | |
22:24 | Updated the release process document to reflect the latest changes to the way we handle the `release` branch, as opposed to the old `release` tag. check-in: b8588b9af5 user: tangent tags: trunk | |
22:19 | Merged release changes in check-in: 6e66483574 user: tangent tags: no-lamp-simulator | |
22:04 | Merged v20161226 as the latest release check-in: 0415aa0e8f user: tangent tags: release, v20161226 | |
22:04 | Release v20161226 check-in: 242018031d user: tangent tags: trunk | |
21:44 | whitespace cleanup of oscar's mods to the simh code - just because check-in: 6a57d2c5cc user: tony tags: trunk | |
20:34 | Linked the README.md file to the new "Major Differences" wiki article. check-in: 3058858d68 user: tangent tags: trunk | |
20:23 | Merged simh-update branch into trunk check-in: 9025c14510 user: tangent tags: trunk | |
20:07 | Merged the tip of the release branch into trunk again. Not sure why the previous merge didn't get absolutely everything, but it did manage to miss the last few release branch changes somehow. check-in: 0e9d5e4a4e user: tangent tags: trunk | |
09:29 | update template files to my most recent versions - the initial commit version would not build Closed-Leaf check-in: 43ed427653 user: tony tags: simh-update | |
09:04 | created branch for merging updated simh files from github commit 5ced037b4bdbf36e04b78bcfde780b07871babb5 on 2016/12/19 check-in: a0a4ae25d3 user: tony tags: simh-update | |
2016-12-25
| ||
15:32 | Moved all trunk checkins from the v20161203 release point to a new long-lived "release" branch, then merged the tip of that branch (the previous trunk tip) into the actual trunk. The end result is that we have a few weeks of checkins that all appear to be release versions, but that will disappear into history soon. check-in: c39069fdfb user: tangent tags: trunk | |
2016-12-23
| ||
17:24 | Moved the new "disable competing services" install step above the "enable pidp8i service" step, and using parallel methods to enable the latter as we do to disble the former. check-in: cbbee9c080 user: tangent tags: release | |
17:20 | Disabling the 'deeper' and 'pidp8' services on 'make install' in case they're present, in which case they'll fight with our service. Closes [a1cd66327f]. check-in: 8060e0fbd2 user: tangent tags: release | |
17:11 | Appended gpio to the supplemental group list of @INSTUSR@ if group gpio is present on the install system, as it will be on the Raspberry Pi. This is needed for end users who build and install the software under a different account than the default 'pi' user or a derivative, as we do with user pidp8i in the binary installation media. Closes [56397a0c55] check-in: 4f68bc260d user: tangent tags: release | |
2016-12-20
| ||
00:07 | Updated the FORTRAN item in the previous ChangeLog.md, on finding that both problems affected FORTRAN IV, not one affecting FORTRAN II as I supposed. check-in: b8f9c278e8 user: tangent tags: release | |
2016-12-19
| ||
07:30 | Fixed an operator precedence problem in the new switch combos, which caused the reboot/shutdown sequences to be ignored. check-in: 6351b989cf user: tangent tags: release | |
2016-12-18
| ||
11:08 | Merged trunk check-in: 7459461159 user: tangent tags: no-lamp-simulator | |
11:06 | Release v20161218 (replaces v20161217) check-in: 7a5e811420 user: tangent tags: release, v20161218 | |
10:58 | Small fix to previous check-in: 376f78b41b user: tangent | |
10:56 | Reworked the bosi verbs a bit check-in: 96c594822f user: tangent | |
10:47 | Better method for handling image file tags check-in: 84487c34e3 user: tangent | |
10:16 | Added -y to apt-get commands on install check-in: 2d782b6c12 user: tangent | |
09:45 | . check-in: 36290a638f user: tangent | |
09:39 | . check-in: 695497e05f user: tangent | |
09:29 | . check-in: 767829139e user: tangent | |
09:13 | . check-in: f9832ddd33 user: tangent | |
09:05 | . check-in: 618cd75026 user: tangent | |
09:01 | . check-in: e22880c684 user: tangent | |
08:45 | . check-in: e4f3b5c0f2 user: tangent | |
08:40 | Merged the bosi* scripts into a single big script check-in: 919ce12805 user: tangent | |
07:24 | Formatting tweak check-in: 671ea7eeb2 user: tangent | |
07:23 | More bosi1 improvements check-in: c27db21136 user: tangent | |
07:06 | More bosi1 improvements check-in: 0938895777 user: tangent | |
06:55 | `usermod` fix for bosi1 check-in: cbf213da66 user: tangent | |
06:37 | Release v20161217 check-in: a7942d025f user: tangent tags: v20161217 | |
05:49 | SD card moved to rdisk10 check-in: f7c330ef4e user: tangent | |
2016-12-17
| ||
20:29 | Moved final stage of RELEASE-PROCESS.md into bosi5 and extracted some common bits between it and bosi4 into etc/bosi-vals. check-in: 53a7c6cd5b user: tangent | |
20:19 | Moved the fourth scriptable stage of RELEASE-PROCESS.md out to tools/bosi4. check-in: 452d8fc7f7 user: tangent | |
20:05 | Comment tweaks check-in: 258bd4e3ed user: tangent | |
20:01 | Moved the third scriptable stage of RELEASE-PROCESS.md into tools/bosi3 check-in: 982e36534e user: tangent | |
19:52 | . check-in: 9b06398136 user: tangent | |
19:52 | Moved the second scriptable stage of RELEASE-PROCESS.md into tools/bosi2 check-in: c11ec50192 user: tangent | |
19:37 | Shortened the initial curl command for kicking off the BOSI process. check-in: 2119ccd8c5 user: tangent | |
19:32 | Moved bosi1 from bin to tools dir check-in: 3371a65bf0 user: tangent | |
19:30 | Moved the first scriptable step of RELEASE-PROCESS.md into tools/bosi1. check-in: 75b46acb84 user: tangent | |
18:19 | Added "make release" and `tools/mkrel` to automate the tagging of new releases. check-in: 7969860a8b user: tangent | |
2016-12-16
| ||
12:52 | Background fix (again) check-in: 40d4a0a373 user: tangent | |
12:48 | Border and background improvements for VTEDIT diagram check-in: 6cb84eb396 user: tangent | |
12:44 | Layer fixes to previous check-in: e799bb8810 user: tangent | |
12:36 | Created PNG version of VTEDIT keypad diagram; browsers aren't rendering the SVG sanely. check-in: 401152a2ae user: tangent | |
12:17 | . check-in: 3005fac429 user: tangent | |
12:06 | . check-in: 10c7148b06 user: tangent | |
12:00 | Initial version of VTEDIT keypad diagram check-in: 14046da782 user: tangent | |
08:51 | Copied UCSYS.BI and LCSYS.BI over from advent.rk05 check-in: 92a38353c0 user: tangent | |
08:45 | Small fix to previous check-in: a70a030e1c user: tangent | |
08:43 | Put guards on the new reboot/poweroff switch combos to make them not run when the PiDP-8/I panel isn't present. check-in: f4ce8086b8 user: tangent | |
08:41 | Added missing etc/sudoers.in check-in: 2809cef764 user: tangent | |
07:44 | Swapped the meaning of Sing_Step + Sing_Inst + Start from poweroff to reboot, as the mnemonic seems to speak of "restart" rather than "shutdown and power off." Then instead of reassigning the + Cont combo to shutdown, gave it + Stop. check-in: 855e1e9883 user: tangent | |
07:33 | Moved the Sing_Step + Sing_Inst + X switch combo detectors outside the block that turns Sing_Step into a momentary switch in software. With the tests inside that block, the exact order of switch activations matters, but we want the combinations to take effect regardless of switch close order. check-in: 2ec003caf0 user: tangent | |
07:28 | Replaced many of the bare constants used for switch detection in the simulator with the new GPIO SSn_* constants. check-in: 6acd6b1416 user: tangent | |
06:22 | Added a series of #defines for switchstatus masks check-in: 656b4cc0f1 user: tangent | |
06:07 | Worked around a race condition in test.c that caused it to fail to start if the GPIO thread didn't start fast enough, thinking that the lock had not been acquired. (The proper fix would be a mutex or semaphore, but...) check-in: 510d648410 user: tangent | |
05:44 | Replaced the calls to shutdown(8) and reboot(8) with calls to /bin/systemctl, the proper way to do such things on modern Ubuntu. Then, added those commands to /etc/sudoers.d for the install user so that the user can run those commands via pidp8i-sim without superuser privileges. Closes [0584a955f5]. check-in: d1ca449bfa user: tangent | |
2016-12-15
| ||
12:56 | Copied Rick Murphy's modified VTEDIT-for-VT100 stuff to SYS: on the OS/8 disk image, and added a slightly modified version of VTEDIT.DC (docs for the editor) given by Rick on the mailing list. check-in: 9fdbd48f6f user: tangent | |
03:02 | Ran SQUISH on both halves of the OS/8 disk image, in case the previous edits fragmented it. check-in: 67edb22601 user: tangent | |
02:58 | Copied FORLIB.RL over from Rick Murphy's advent.rk05 disk to os8.rk05 to solve an issue reported way back in April on the mailing list: https://groups.google.com/forum/#!searchin/pidp-8/fortran%7Csort:relevance/pidp-8/VACP-EhC-L8/omae17ZSBQAJ check-in: cdd0f01b45 user: tangent | |
02:55 | Copied FRTS.SV from Rick Murphy's advent.rk05 disk over the top of the broken one that came from upstream on os8.rk05. Now ".R FRTS" doesn't just hang. Closes [12dd9869d0] check-in: c696fa9b04 user: tangent | |
2016-12-11
| ||
06:32 | Added doc/led-decay.cpp, demonstrating my idea for a source-rate independent replacement for the incandescent lamp simulator. check-in: 77387fd163 user: tangent | |
00:42 | Dependency fix for Makefile.in check-in: c5220390fe user: tangent | |
2016-12-10
| ||
23:52 | Merged BOOTDIR fix from trunk check-in: beb62e8230 user: tangent tags: no-lamp-simulator | |
23:51 | Reverted the renaming of pdp8_cpu.c.in. The removal of the references to @ABSPREFIX@ wasn't the total removal of all autosetup-provided values. There was still a use of @BOOTDIR@, at least. check-in: 9adbcad6b9 user: tangent | |
22:27 | Merged in trunk changes check-in: 72ad17c733 user: tangent tags: no-lamp-simulator | |
22:15 | The recent change to autodetect available C compiler flags accidentally dropped out -D_GNU_SOURCE, which broke the build for sim_fio.c. check-in: af1e357fb1 user: tangent | |
20:48 | Removed a stray "RKB0:" in examples/README.md. The rest of the commands don't expect this file to be on the second slice. check-in: 0a869556c4 user: tangent | |
19:53 | Added BASIC section to examples/README.md check-in: ad15ce98aa user: tangent | |
06:31 | Small fix to previous for clang. check-in: 5756284bf7 user: tangent | |
06:12 | Fixed a few problems with the "make clean" and "make distclean" targets check-in: 0dbecf027d user: tangent | |
06:09 | Conditionally added several GCC-specific flags to CFLAGS to better match how upstream SimH 4.0 is built. Also made some of the existing flags conditional, in case Clang drifts away from GCC-compatibility. check-in: cf898b1ffa user: tangent | |
2016-12-09
| ||
20:19 | Added PIP alternative to EDIT in examples/README.md check-in: 552d4ebda4 user: tangent | |
20:08 | Improved comments in boot/5.script check-in: 676a0faae1 user: tangent | |
19:53 | Added assembly language version of 5.script as ac-mq-blinker.pal check-in: 91297147ab user: tangent | |
05:09 | Diked out the USB media mount/unmount features added to the buildroot version, since it isn't necessary with my binary images. In fact, if you *don't* use the original buildroot custom OS, it doesn't work at all. Since I don't want to use buildroot, we might as well free these front panel switch combos up for other purposes. check-in: d13004a8f5 user: tangent | |
04:49 | The /dev/gpiomem mmap/unmap pair now acquires a lock on the device so that two LED-manipulating programs cannot grab the device at once. This prevents multiple pidp8i-sim simulators or combinations of simulator and pidp8i-test from fighting over the LEDs. We *do* allow scanswitch to run in parallel with these other two, since that's harmless. Closes [9390414809] check-in: f26340b636 user: tangent | |
02:51 | Minor adjustments to AUTHORS.md check-in: 81ff3fa674 user: tangent | |
2016-12-08
| ||
03:25 | If the simulator fails to open /dev/gpiomem or to mmap() the GPIO peripheral into its address space, it now disables the PiDP-8/I front panel functionality so that we don't get phantom switch activations on non-Pi systems. Basically, it reverts to nearly-stock SimH behavior. This lets you build and test off the Pi, on a faster system, and deploy to the Pi once you've got something worth testing on the actual hardware. Closes [0a89046aab5]. check-in: 1486a28eb2 user: tangent | |
03:07 | The init script now drops superuser privileges before executing any screen(1) command so that the simulator and its attached screen session are owned by the user who configured the software, which is presumably the one who will be trying to run it. Similarly, the bin/pidp8i script now no longer runs screen(1) via sudo. The practical upshot of this is that the only remaining commands that you have to run via sudo are the ones to start and stop the simulator, and that's only because service control feels like it should belong to root. Closes [aa4c9ba77]. check-in: 477b1549b6 user: tangent | |
02:28 | The binary media images now install as group-writeable by the primary group of the user who ran the configure script, so that you can run the simulator against the installed images as a regular user and still be able to write to the installed media. check-in: 023ef97693 user: tangent | |
01:56 | Prior checkin didn't work because setcap doesn't accept more than one executable name. check-in: c741e0ffe0 user: tangent | |
01:52 | Applying the "let user program increase its priority" setcap fix to bin/pidp8i-test as well. check-in: 88c2045e7d user: tangent | |
01:49 | Applied the /dev/mem -> /dev/gpiomem change check-in: 12f1c46bcd user: tangent tags: no-lamp-simulator | |
2016-12-07
| ||
16:26 | The gpio-nls module now uses /dev/gpiomem instead of /dev/mem, so it can run without sudo, which is a doubly good thing because sudo resets the path so that the normal installation location's bin subdir isn't included. check-in: f1572cc816 user: tangent | |
16:01 | Got rid of STMAX as a separate constant, since it suffices to just reuse MAX, with the understanding that MAX < 1024 now, so that the subtotal rollover point is <= 1024. A separate constant makes sense when MAX is much smaller than STMAX, but they're so close now it's pointless have both. Closed-Leaf check-in: 8dea8cc325 user: tangent tags: pep001.pal-stripped-ascii | |
15:54 | Dropped an unnecessary CLL in SAPRT: we aren't rotating bits any more, so we don't care if the link is set. check-in: 15e5c13878 user: tangent tags: pep001.pal-stripped-ascii | |
15:52 | Moved the SANEXT label down an instruction: it was on a redundant instruction with respect to the next iteration of that loop. check-in: 9b1e789139 user: tangent tags: pep001.pal-stripped-ascii | |
15:33 | Squeezed two more words from SAPRT by using the PDP-8/E's SWP instruction instead of two RTR's, and using the MQ for storage instead of a named core location for temporary storage. check-in: b1903a5e57 user: tangent tags: pep001.pal-stripped-ascii | |
14:59 | Merged trunk changes check-in: 8b7ba265bf user: tangent tags: pep001.pal-stripped-ascii | |
14:59 | Added examples/*.err to the list of things the clean target removes. palbart normally removes these for you on a clean build, but it is possible that someone could say "make clean" just after a failed build and expect these files to be gone, too. check-in: ab1e41e4a0 user: tangent | |
14:57 | When assembling with palbart, if the assembler returns an error we now cat the *.err file to the screen for you, so you don't have to switch editor buffers to see what error(s) it caught. check-in: 1bb0304c3d user: tangent | |
04:54 | Binary OS images now use zip format to match the Foundation's docs, and so Windows users don't need 7Zip or similar. check-in: 058ddc4488 user: tangent | |
03:23 | Copied gpio.[ch] over from the no-lamp-simulator branch as src/gpio-nls.[ch] for use by pidp8i-test, allowing the tester to run properly when built from this branch, too. Re-tagged as v20161206. check-in: 7a21d3f627 user: tangent tags: v20161206 | |
02:44 | Merged in trunk check-in: e754fb9b4c user: tangent tags: no-lamp-simulator | |
02:38 | Release v20161206 check-in: 56c5d7107b user: tangent | |
2016-12-06
| ||
23:03 | More small tweaks to the release process doc check-in: 2c6d601be1 user: tangent | |
22:56 | Moved a hyperlink inline in the release process doc check-in: 23b058bb45 user: tangent | |
17:12 | Rewrote PRINTS in pep001.pal to accept a subset of the "stripped ASCII" encoding produced by the assembler for TEXT directives. It is untested, and so far, it's 8 instructions longer than the ASCIIZ implementation, so I don't want to commit it as the main version even if it does work. I'm saving it as a branch in case it's useful later, and possibly someone will find a way to bum those 8 extra instructions back out. check-in: 80fe276c70 user: tangent tags: pep001.pal-stripped-ascii | |
16:03 | Extracted updated PRINTS routine from examples/pep001.pal check-in: 45501a8440 user: tangent | |
15:05 | Replaced the space at the end of the "ANSWER: " string constant since the previous checkin bought us two instructions at the end of page 1. check-in: e1e4f9fbe7 user: tangent | |
15:04 | Dropped two unnecessary CLAs from examples/pep001.pal: DECPRT leaves AC = 0 and SHOWST calls that at its tail end, so removed the CLAs following the two calls to SHOWST. (Patch by Rick Murphy.) check-in: a9330964a2 user: tangent | |
14:59 | Cosmetic improvements to examples/pep001.pal check-in: 283e4497fa user: tangent | |
14:58 | Fixed an inverted bit test in the recently-optimized pep001.pal that caused it to skip a jump when it should jump and jump when it should skip. Fix by Rick Murphy. check-in: 4b82ef7208 user: tangent | |
2016-12-05
| ||
13:28 | More tweaks to the examples' readme check-in: 401e3375a9 user: tangent | |
13:22 | Replaced several references to "PAL-III" where "PAL8" should have been used. check-in: 25539f16eb user: tangent | |
13:21 | Removed a stray paragraph from examples/README.md check-in: 371abc0cbc user: tangent | |
13:20 | . check-in: 7d74224396 user: tangent | |
13:17 | Formatting fix check-in: b7bef76d58 user: tangent | |
13:17 | Expanded on the description of the examples in examples/README.md now that we have more than one pep001.* file. check-in: 078793c007 user: tangent | |
13:16 | Renamed examples/*.ba to examples/*.bas check-in: 03953c61cc user: tangent | |
11:01 | Release v20161205 check-in: a82c5e2a9c user: tangent tags: v20161205 | |
10:45 | Added a RELEASE-PROCESS.md document. check-in: 4db316e26b user: tangent | |
09:04 | Previous checkin had incorrect line number references due to the optimization. check-in: d437f3e76b user: tangent | |
09:03 | Carved two lines off of the OS/8 BASIC example check-in: 1858541d03 user: tangent | |
08:15 | The process for creating a bootable Raspbian image for the PiDP-8/I involves removing SSH host keys. Since the stock OS apparently only does this on the first actual boot, I've added a step to the init script to regenerate these keys if they're missing. Ideally, I'd find a way to re-trigger the OS's own key generation process, but a whole lot of grepping has failed to turn it up. check-in: 1072cdb004 user: tangent | |
07:23 | Prior changes to the init file cause it to *not start* by default. check-in: 78374aaae4 user: tangent | |
05:18 | Merged Rick Murphy's optimizations to examples/pep001.pal. Source: https://groups.google.com/d/msg/pidp-8/OQ0LzyQ94QI/FUckXgOqDAAJ check-in: 61ddd701e5 user: tangent | |
05:17 | Added an OS/8 BASIC solution to Project Euler Problem #1. check-in: fa2ff0c1bd user: tangent | |
2016-12-04
| ||
10:44 | Minor improvements to the init script check-in: d50cef7245 user: tangent | |
10:15 | Added several missing *.in dependencies to the Makefile target. The most critical are those under src, since editing the *.c.in file should force a reconfiguration, re-generating the *.c file from it. check-in: 0fc0e814b1 user: tangent | |
10:11 | Merged trunk Leaf check-in: c1a3a38ea5 user: tangent tags: project-euler | |
09:38 | Release v20161203 check-in: 886da7ce95 user: tangent tags: v20161203 | |
08:39 | Merged trunk changes check-in: 910d1b522c user: tangent tags: no-lamp-simulator | |
08:06 | Using those new GPIO module API array constants in scanswitch and pidp8i-test now, too. check-in: 4cff15b2c9 user: tangent tags: trunk | |
08:00 | Added a time-based state machine to the GPIO module's switch state change handler that doesn't report the new state of a switch after observing a change until it has remained stable in a state different from the last one reported to other modules for at least 50 ms to give the switch contacts time to stop bouncing. Closes [fcbd41dd0d] This checkin also replaces a bunch of naked constants in that same module with named constants that are calculated by the compiler, so they're always correct. check-in: 07882c14fe user: tangent tags: trunk | |
05:09 | Sync'd with trunk again check-in: 2b244da5c3 user: tangent tags: no-lamp-simulator | |
04:22 | Merged recent trunk changes in check-in: d384593ef8 user: tangent tags: no-lamp-simulator | |
04:10 | Fixed a typedef, broken in one of the recent checkins. check-in: b6d5aeffdd user: tangent tags: trunk | |
03:58 | Comment fix check-in: 07a2501c15 user: tangent tags: trunk | |
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 | |
13:54 | First version of PEP001 that seems to 100% answer the question as asked, rather than subsets of the problem. It required a new subtotalling mechanism and a lot of new I/O. (Still at least one check to be done.) check-in: 976f6cbda2 user: tangent tags: project-euler | |
13:45 | Added "HELLO, WORLD!" example program and PRINTS subroutine. The former acts as a test for the latter. check-in: 66a423d4ac user: tangent tags: project-euler | |
12:44 | Merged trunk fix check-in: 91cd092f9e user: tangent tags: no-lamp-simulator | |
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 | |
12:15 | Branch for those who want Ian Schofield's incandescent lamp simulator code backed out. It is not simply a reversion to [3a85f08639], it still contains all of the improvements we've made on the trunk. This branch will continue to be periodically refreshed from the trunk until we manage to extract the front panel code from the simulator, at which point we'll need to take a second stab at making this code optional. At that time, it will be possible to disable it with a configure script option rather than make the user switch branches in the Fossil repo. check-in: cb64c4a4b2 user: tangent tags: no-lamp-simulator | |
09:03 | Fixed problems with decimal print routine. Routine itself was fine, but the terminal had to be made ready manually. Also added a CRLF after the value, broke program shutdown up into subroutines, and made OS/8 vs. HLT program ending conditional based on whether we're running under OS/8 or not. check-in: bec3faac16 user: tangent tags: project-euler | |
08:24 | Finally got a version of the PEP 1 program to give the correct value for N < 10. Now to fix the decimal number printing routine. check-in: 16a63487eb user: tangent tags: project-euler | |
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 | |
00:02 | More tweaks to the Project Euler problem 1 solution check-in: 43184c3357 user: tangent tags: project-euler | |
2016-11-30
| ||
21:48 | Fixed assorted problems in the pep001 attempt. Still broken, but at least part of the problem appears to be the DECPRT routine, so I'm checking my progress in separately so I can chase that. check-in: 2cc1518a3f user: tangent tags: project-euler | |
21:14 | Explicitly including examples/pep001.lst as a dependency of "all" when building the examples so that if you remove that file, the assembler is called upon to rebuild it. check-in: 96e84ae31d user: tangent tags: project-euler | |
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 | |
09:40 | First attempt at solving a Project Euler problem in PAL8 assembly language. It's not entirely working, but I need the checkpoint, so it's going in on a branch. check-in: 5eefa878d6 user: tangent tags: project-euler | |
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 | |