{"id":26395380,"url":"https://github.com/isysxp/esp32_11_ffs_24","last_synced_at":"2026-04-18T17:37:26.444Z","repository":{"id":282456194,"uuid":"947556144","full_name":"Isysxp/ESP32_11_FFS_24","owner":"Isysxp","description":"A PDP 11/24 running Ultrix 3.1 from flash on an ESP32S3","archived":false,"fork":false,"pushed_at":"2025-03-14T18:53:06.000Z","size":8904,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-14T19:22:52.929Z","etag":null,"topics":["esp32","pdp11","ultrix","unix"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Isysxp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-12T21:59:39.000Z","updated_at":"2025-03-14T18:53:09.000Z","dependencies_parsed_at":"2025-03-14T19:32:58.215Z","dependency_job_id":null,"html_url":"https://github.com/Isysxp/ESP32_11_FFS_24","commit_stats":null,"previous_names":["isysxp/esp32_11_ffs_24"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Isysxp%2FESP32_11_FFS_24","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Isysxp%2FESP32_11_FFS_24/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Isysxp%2FESP32_11_FFS_24/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Isysxp%2FESP32_11_FFS_24/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Isysxp","download_url":"https://codeload.github.com/Isysxp/ESP32_11_FFS_24/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244022722,"owners_count":20385134,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["esp32","pdp11","ultrix","unix"],"created_at":"2025-03-17T11:17:47.939Z","updated_at":"2026-04-18T17:37:26.387Z","avatar_url":"https://github.com/Isysxp.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ESP32_PDP11_FFS - A PDP11/24 with RL02 disk in flash. - Ultrix 3.1\n\u003cbr\u003e\nThis is a modified version of a PDP11/40 emulation at https://github.com/Isysxp/PDP11-on-the-M5-Core\u003cbr\u003e\nThis app requires an ESP32 processor with at least 8Mb of PSRAM.\u003cbr\u003e\nThe current build is targeted for the ESP32S3 Dev Module clones eg: ESP32 S3 DevKitC 1 ESP32 S3 WROOM1 N16R8 Development Board.\u003cbr\u003e\nThis provides a complete PDP11/24 (22 bit adressing + FPU) with an OS on a quite a small module.\u003cbr\u003e\nUltrix 3.1 is quite a sizeable OS to cram onto a single RL02. However, most of the commons apps are installed including vi, c and F77.\u003cbr\u003e\nThe build enviroment is for the current Arduino IDE V 2.3.1 or the VisualMicro plugin for Visual Studio.\u003cbr\u003e\nThe critical libraries required are:\u003cbr\u003e\nESPTelnetStream (https://github.com/LennartHennigs/ESPTelnet)\u003cbr\u003e\nand Espressif Arduino-esp32 (https://github.com/espressif/arduino-esp32) V 2.0.17.\u003cbr\u003e\nDisk images: I have included a 'reasonably' complete build of Ultrix 3.1 on an emulated RL02 drive in the data directory.\u003cbr\u003e\nThis can be loaded into the Flash File System as a FAT image. The upload tool can be found\u003cbr\u003e\nin either Arduino IDE 1.8 or via the VisualMicro plugin for Visual Studio and by default uploads the contents of the data directory as above.\u003cbr\u003e\nYou will probably need to find and install the mkfatfs untility see: https://github.com/labplus-cn/mkfatfs/releases.\u003cbr\u003e\nThe app provides 1 telnet stream linked to a DL11 serial port mapped at 2 Unibus addresses: 0775610 and 0776500 Vector:0300.\u003cbr\u003e\nThis has been sysgened into the Ultrix kernel as a remote TTY.\u003cbr\u003e\n(Do not try to use both at once!)\u003cbr\u003e\nChange the SSID and Password in ESP_Telnet.cpp to match your router.\u003cbr\u003e\nThe root login does not need a password. There is a user account niss1 PW:dodk5133 ... contains example programmes.\u003cbr\u003e\n\u003cbr\u003e\nIan Schofield April 2024\u003cbr\u003e\n\u003cbr\u003e\nNote: Select ESP32 Dev Module with config:\u003cbr\u003e\nCDC on boot: disabled\u003cbr\u003e\nFlash size: 16Mb\u003cbr\u003e\nPSRAM: OPI PSRAM\u003cbr\u003e\nUSB mode: Hardware CDC and JTAG\u003cbr\u003e\nUpload mode: UART0\u003cbr\u003e\nPartition scheme: 16M flash (2MB app / 12.5MB FATFS)\u003cbr\u003e\nPlease use ESP-IDF release 3.1.3.\nIn addition, you will need to change the c standard in C:\\Users\\\u003cusername\u003e\u003c/username\u003e\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.1.3\\platform.txt\u003cbr\u003e\nfrom -std=gnu++11 to -std=gnu++17 to allow for template objects.\n\u003cbr\u003e\nNB: Change the SSID and Password in ESP_Telnet.cpp to match your router. \u003cbr\u003e\nNNNNNB: I strongly suggest you read up about Ultrix 3.1. This was the last of the none split I/D PDP11 operating systems.\u003cbr\u003e\nAlso, you will need to solder a bridge on the top of the board marked 'RGB' then when the blue LED flashes you can rest assured that your flash is being trashed!!!!\n\u003cbr\u003e\u003cbr\u003e\n\nIan Schofield March 2025\u003cbr\u003e\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fisysxp%2Fesp32_11_ffs_24","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fisysxp%2Fesp32_11_ffs_24","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fisysxp%2Fesp32_11_ffs_24/lists"}