{"id":18232022,"url":"https://github.com/rhetorica/chas","last_synced_at":"2026-05-18T03:34:09.895Z","repository":{"id":257181630,"uuid":"857534627","full_name":"rhetorica/chas","owner":"rhetorica","description":"Assembler for the CHASM fantasy computer","archived":false,"fork":false,"pushed_at":"2024-11-04T05:00:04.000Z","size":370,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-01T04:55:07.272Z","etag":null,"topics":["assembler","assembly","emulator","fantasy-computer","lisp-machine"],"latest_commit_sha":null,"homepage":"http://lethe.rhetori.ca/hardware.star","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/rhetorica.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":"2024-09-14T22:41:15.000Z","updated_at":"2025-05-07T18:00:26.000Z","dependencies_parsed_at":"2024-11-04T05:18:53.045Z","dependency_job_id":"6489ed72-2bd5-4f30-ae1d-6d2a7cfeeada","html_url":"https://github.com/rhetorica/chas","commit_stats":{"total_commits":30,"total_committers":1,"mean_commits":30.0,"dds":0.0,"last_synced_commit":"be1ffb9a1e445f8134551b71ca33f20beaf54b58"},"previous_names":["rhetorica/chas"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rhetorica/chas","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhetorica%2Fchas","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhetorica%2Fchas/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhetorica%2Fchas/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhetorica%2Fchas/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rhetorica","download_url":"https://codeload.github.com/rhetorica/chas/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhetorica%2Fchas/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33163756,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-17T22:39:12.733Z","status":"online","status_checked_at":"2026-05-18T02:00:06.436Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["assembler","assembly","emulator","fantasy-computer","lisp-machine"],"created_at":"2024-11-04T13:03:01.960Z","updated_at":"2026-05-18T03:34:09.880Z","avatar_url":"https://github.com/rhetorica.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\r\n\r\n# CHAS Assembler for CHASM\r\n\r\nThis VS Code project implements an assembler for the CHASM CPU. It is written in mostly-procedural C++, with only a little OOP.\r\n\r\nThe code is very basic and has a lot of avoidable copy-and-pasting in it; CHAS is meant to be adequate, not good.\r\n\r\n\r\n## Usage\r\n\r\nCHAS has no dependencies. It should build with a simple `cmake -S src build; cmake --build build` in the project's root directory.\r\n\r\nThe syntax for running CHAS is:\r\n\r\n\t`chas [--print-opcodes] [--base \u003caddress\u003e] [--o \u003cfilename\u003e] \u003cfilename\u003e`\r\n\r\n\t`--print-opcodes`: Emits a complete space-separated list of the instruction mnemonics currently supported by this version of CHAS.\r\n\t`--base \u003caddress\u003e`: Sets the base address. CHASM ROMs start at 0x3000 (the default). Userland programs in a multitasking OS start at 0x0000.\r\n\t`--o \u003cfilename\u003e` or `--output \u003cfilename\u003e`: Sets the output filename. Default is input filename with `.o` appended.\r\n\t`\u003cfilename\u003e`: The last argument is the file to assemble.\r\n\r\nArguments are parsed from left to right, so `--base` and `--o` must precede `\u003cfilename\u003e`.\r\n\r\n\r\n## The CHAS assembly language\r\n\r\nThe opcodes and instructions are defined in https://github.com/rhetorica/chas/blob/master/doc/chasm-spec.txt\r\n\r\nThe file `doc/CHAS.xml` provides syntax highlighting for Notepad++ in UDL format.\r\n\r\n\r\n## Lethe\r\n\r\nThis repository is a component of the LETHE project, which aims to build a complete software stack based on the Dhar programming language. Read more at http://lethe.rhetori.ca/\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frhetorica%2Fchas","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frhetorica%2Fchas","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frhetorica%2Fchas/lists"}