{"id":22669480,"url":"https://github.com/bkw777/requad","last_synced_at":"2026-03-04T19:02:38.360Z","repository":{"id":57753682,"uuid":"527436163","full_name":"bkw777/reQUAD","owner":"bkw777","description":"A modified respin of Steven Adolph's QUAD memory expansion for the TRS-80 Model 100","archived":false,"fork":false,"pushed_at":"2025-03-01T02:38:29.000Z","size":55116,"stargazers_count":4,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-06T13:46:10.320Z","etag":null,"topics":["model-100","ram","tandy","trs-80"],"latest_commit_sha":null,"homepage":"","language":"Assembly","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bkw777.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2022-08-22T06:18:27.000Z","updated_at":"2025-03-01T02:38:33.000Z","dependencies_parsed_at":"2025-03-01T03:33:27.549Z","dependency_job_id":null,"html_url":"https://github.com/bkw777/reQUAD","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/bkw777/reQUAD","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkw777%2FreQUAD","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkw777%2FreQUAD/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkw777%2FreQUAD/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkw777%2FreQUAD/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bkw777","download_url":"https://codeload.github.com/bkw777/reQUAD/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkw777%2FreQUAD/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30090037,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T18:31:08.343Z","status":"ssl_error","status_checked_at":"2026-03-04T18:31:07.708Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["model-100","ram","tandy","trs-80"],"created_at":"2024-12-09T15:31:51.290Z","updated_at":"2026-03-04T19:02:38.325Z","avatar_url":"https://github.com/bkw777.png","language":"Assembly","funding_links":[],"categories":[],"sub_categories":[],"readme":"# reQUAD\n\n![](reQUAD.jpg)\n![](PCB/out/reQUAD.f.jpg)\n![](PCB/out/reQUAD.b.jpg)\n![](PCB/out/reQUAD.top.jpg)\n![](PCB/out/reQUAD.bottom.jpg)\n![](PCB/out/reQUAD.svg)\n![reQUAD.bom.csv](PCB/out/reQUAD.bom.csv)\n\n## About\nThis is a derivative of [QUAD](http://bitchin100.com/wiki/index.php?title=QUAD) by Steve Adolph.\n\n## Differences from the original\nRemoved the resistor-cap power-on-reset circuit and resettable flip-flop for a simple flip-flop.  \nAdded battery and battery-change cap.  \nAdded pulldown on the sram CE2.\n\n## To Build it\nPCB [PCBWAY](https://www.pcbway.com/project/shareproject/reQUAD_RAM_Expansion_for_TRS_80_Model_100_8690cd19.html)  \nBOM [DigiKey](https://www.digikey.com/short/z47bn0mw)\n\nBuild notes,  \nThe pin 1 mark on DA1, BAV756S, is tiny and faint, but there is one, you just need a lot of magnification and light. The markings look like `.A7t` and the . is at pin 1. The pinout is not symmetric, and so the part must be installed in the correct orientation.\n\n## To Use it\n\nThe device disables and replaces the machine's original internal 32k RAM, so copy any files off of the computer before installing the reQUAD. You won't be able to access the internal ram except by removing the reQUAD.\n\nThe first time the device is powered up, it will be in a random bank number.\n\nThe first thing you should do after install is \"blindly\" switch to each bank,  \nand do a cold-reset in each bank to wipe all banks of any random data.  \n(only cold-reset, not power-cycle. If you power-cycle, the reQUAD may switch to a random bank again.)\n\nIn BASIC type `OUT 128,3` \\[Enter\\], then CTRL+BREAK+RESET.  \nIn BASIC type `OUT 128,2` \\[Enter\\], then CTRL+BREAK+RESET.  \nIn BASIC type `OUT 128,1` \\[Enter\\], then CTRL+BREAK+RESET.  \nIn BASIC type `OUT 128,0` \\[Enter\\], then CTRL+BREAK+RESET.  \n\nNow all 4 banks have been wiped clean of any random data, and you are sitting in bank 1.  \nFrom now on, don't do CTRL+BREAK+RESET any more, just RESET (unless you actually want to wipe a bank).  \n\nNow there are 3 main options for using the banks from no on.  \nManual control,  \nBANK.BA,  \n0QUAD\n\n### Manual Control\n\nTo switch banks manually without 0QUAD or BANK.BA:  \nIn BASIC, type `OUT 128,n`, where n is the desired bank number from 0 to 3,  \nthen immediately press RESET on the back of the machine.\n\n`OUT 128,0` switches to bank 1  \n`OUT 128,1` switches to bank 2  \n`OUT 128,2` switches to bank 3  \n`OUT 128,3` switches to bank 4  \n\nThe cpu has no knowledge that it's entire ram universe has been replaced and all it's current register contents and pointers and such are invalid, so the main rom must be restarted IMMEDIATELY after the OUT command.\n\nSo after the OUT command, ignore the screen and press the RESET button on the back of the machine.\n\nPressing RESET is only needed when switching manually this way instead of using BANK.BA or 0QUAD.  \nBANK.BA and 0QUAD both induce a reset themselves.\n\n### BANK.BA\nThe next-simplest option for controlling the reQUAD is to copy this 4-line BASIC program into each bank,  \nand save it with a name matching the current bank it's in.\n\nFirst, ensure you are in bank 1:  \nIn BASIC, type `OUT128,0` \\[Enter\\], then press RESET.\n\nThen in BASIC type-in this program:\n```\n1 INPUT\"Bank(1-4)\";X:IFX\u003c1ORX\u003e4THEN 1\n2 A#=0:B=VARPTR(A#):POKEB,249\n3 POKEB+1,195:POKEB+2,241:POKEB+3,118\n4 CALLB,X-1,30481\n```\n\nThen `SAVE \"BANK1\"`\n\nNow you know you are in bank1 because it says BANK1.BA in the main menu,  \nand you can BANK1.BA to switch to any other bank.\n\nRepeat for all 4 banks  \nrun BANK1.BA, answer \"2\", you are now in a new empty bank2, type-in the program again, `SAVE \"BANK2\"`  \nrun BANK2.BA, answer \"3\", type-in, `SAVE \"BANK3\"`  \nrun BANK3.BA, answer \"4\", type-in, `SAVE \"BANK4\"`  \n\n### 0QUAD\n\nInstall [0QUAD](APP/)\n\nRefer to the docs for the original [QUAD](http://bitchin100.com/wiki/index.php?title=QUAD)\n\n### Example Installing 0QUAD using dl2 and teeny\n(this will wipe all data)\n\nQUAD.BA must be copied as a binary via TPDD, it can't be copied in ascii format using ordinary text transfer with TELCOM.  \n\nThis example will use dl2 on the pc to bootstrap install TEENY on the 100, and then use TEENY and dl2 to copy QUAD.BA to the 100.\nYou can use any other TPDD emulator instead of dl2, like LaddieAlpha or a Backpack, and you can use any TPDD client instead of TEENY, like TS-DOS or DSKMGR.\n\nOn the pc, install [dl2](https://github.com/bkw777/dl2/)\n\nOn the 100, in BASIC: `OUT 128,0`  \nThen do a cold reset: CTRL+BREAK+RESET\n\nOn the pc:\n```\n$ cd APP\n$ dl -v -b TEENY.100 \u0026\u0026 dl -v -u\n```\n\nOn the 100, in BASIC: `RUN \"COM:98N1ENN\"`  \nPress ENTER at the end of the TEENY install to accept the default install location.  \n`CLEAR 0,62213`  \nPress F8 to exit to the main menu and run TEENY.CO  \nUse TEENY to copy QUAD.BA from the pc  \n```\n\u003e L QUAD  .BA\n\u003e Q\n```\n\nOn the pc: Ctrl+C to exit dl2\n\nOn the 100: Run QUAD.BA  \nAnswer \"1\" to the \"Which bank are you in?\" question.  \n\n0QUAD is now installed in bank 1, but is invisible.\n\nType `0QUAD` \\[Enter\\] at the main menu (not in BASIC) to run 0QUAD\n\nNow the top-right corner will show \"#1\" to show that you are currently in bank 1.  \nPress F1 to pull up the bank-switch menu, then press F2 to switch to bank 2.\n\nYou are now in bank 2 which is a new empty bank.  \n0QUAD is not installed in this bank yet.\n\nInstall 0QUAD in bank 2 by repeating everything after the OUT command above, including the cold reset.  \nAnswer \"2\" at the \"Which bank?\" question.  \nRepeat again for banks 3 and 4.\n\nOnce 0QUAD is installed in all banks, you can use it to switch from any bank to any other bank, and you don't need to press the RESET button after each switch when using 0QUAD to switch.\n\n## Thanks\nThanks to Steve Adolph for sharing his original design and allowing this derivative.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbkw777%2Frequad","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbkw777%2Frequad","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbkw777%2Frequad/lists"}