{"id":18393210,"url":"https://github.com/tomcl/eepassembler","last_synced_at":"2025-04-07T03:34:23.508Z","repository":{"id":80868121,"uuid":"454509797","full_name":"tomcl/eepAssembler","owner":"tomcl","description":"A simple assembler for EEP1 CPU as taught at Imperial College 2022","archived":false,"fork":false,"pushed_at":"2024-02-03T17:47:22.000Z","size":55,"stargazers_count":4,"open_issues_count":0,"forks_count":7,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-04-14T03:53:03.971Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"F#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tomcl.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}},"created_at":"2022-02-01T18:46:50.000Z","updated_at":"2024-01-19T14:47:13.000Z","dependencies_parsed_at":"2024-02-03T18:39:30.424Z","dependency_job_id":"5bc67811-0a02-4968-bbba-b5d2817bf490","html_url":"https://github.com/tomcl/eepAssembler","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tomcl%2FeepAssembler","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tomcl%2FeepAssembler/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tomcl%2FeepAssembler/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tomcl%2FeepAssembler/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tomcl","download_url":"https://codeload.github.com/tomcl/eepAssembler/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223271160,"owners_count":17117303,"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":[],"created_at":"2024-11-06T01:59:45.754Z","updated_at":"2025-04-07T03:34:23.495Z","avatar_url":"https://github.com/tomcl.png","language":"F#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eepAssembler\n\nA simple assembler for EEP1 CPU as taught at Imperial College 2023, 2024\n\n*This code is written by Tom Clarke with no guarantee as to its correctness: please e-mail me if you find errors*\n\nUse issues on this repo for feature requests\n\nThe F# source is in `./src/Program.fs`\n\n## To run the assembler on any system (Windows/Macos/Linux)\n\nBefore you start:\n\n* Download and unzip the latest release source code or fork and clone this repo.\n* Install [.NET 64 bit SDK 8](https://dotnet.microsoft.com/en-us/download). \n\nTo run the assembler on any system (see nicer option via Windows Powershell below):\n\n* start a command line terminal running in this directory (the one containing the downloaded README file).\n* `dotnet run dir`\n   * replace `dir` by the directory you want to watch\n* `dotnet run` will watch `.`\n    * The downloaded `.` directory has a file `assem.txt` which will be correctly assembled into `assem.ram` with a success message as below.\n    \n```\nC:\\GitHub\\eepAssembler\u003edotnet run\nWatching '.'\nSuccessful assembly of '.\\assem.txt'\n7 lines written to '.\\assem.ram'   \n```\n\n\n### On Windows systems only via Powershell\n\nDouble-click `chooser.bat` from this directory to use file selection GUI - the whole directory of file selected will be watched.\n\n## Features\n\n* The assembler will watch a directory and turn any `.txt` file of EEP1 assembly language into a `.ram` file of machine code suitable for use by Issie.\n* If assembly errors exist they will be printed out\n* Files that change will get re-assembled, so you can edit a file and save it with auto-assembly on save.\n* Lines can be labelled (see `assembler.txt`) and labels used in jump or memory instructions as Imm8 operands.\n\n## Troubleshooting your installation\n\nUptodate as of Feb 2023.\n\nIf this program does not run it will likely be because you have the wrong version of .Net installed. You need 64 bit .Net 8 SDK. Check you have this as follows:\n\n* Run a commande prompt (Windows key-r -\u003e cmd, or equiv on other systems)\n* `dotnet --info`\n\nYou should get something like:\n\n```\nC:\\Users\\tomcl\u003edotnet --info\n.NET SDK:\n Version:   8.0.101\n Commit:    bb24aafa11\n\nRuntime Environment:\n OS Name:     Windows\n OS Version:  10.0.19044\n OS Platform: Windows\n RID:         win10-x64\n Base Path:   C:\\Program Files\\dotnet\\sdk\\8.0.101\\\n```\nThe important bits are: .NET SDK, Version: 8, RID xxxx-x64\n\nWhat can go wrong: \n\n* Even though you have installed 64 bit dotnet SDK, you have a previous 32 bit install that was done earlier and dotnet on a command line always finds that one - change your path\n* You have dotnet 8 installed - but not the SDK\n* You have dotnet 6 or 7 installed, but not dotnet 8\n\n### For more insight\n\n* Run a command prompt in the eepassembler directory (then one containing chooser.bat).\n* Run `dotnet run`.\n* Check the messages there, e.g. which version, is there an error.\n\n\n## To develop\n\nOn windows:\n* Install *Visual Studio 2022* with F# desktop\n* (if needed) install [.NET SDK](https://dotnet.microsoft.com/en-us/download/visual-studio-sdks) \n* load `./eepassem.sln`\n\nSee [HLP setup](https://intranet.ee.ic.ac.uk/t.clarke/hlp/install-notes.html) for more details of different dev environments.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftomcl%2Feepassembler","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftomcl%2Feepassembler","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftomcl%2Feepassembler/lists"}