{"id":16253041,"url":"https://github.com/digitsensitive/c64","last_synced_at":"2025-03-19T20:31:45.277Z","repository":{"id":53347056,"uuid":"318618578","full_name":"digitsensitive/c64","owner":"digitsensitive","description":"Commodore 64 - Examples in 6502 Assembly language","archived":false,"fork":false,"pushed_at":"2023-11-28T12:40:53.000Z","size":1734,"stargazers_count":17,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-17T10:52:09.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Assembly","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/digitsensitive.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2020-12-04T19:40:41.000Z","updated_at":"2025-03-07T08:18:45.000Z","dependencies_parsed_at":"2024-10-27T21:31:59.750Z","dependency_job_id":"f555818d-070b-479b-8802-cb0353b12c53","html_url":"https://github.com/digitsensitive/c64","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitsensitive%2Fc64","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitsensitive%2Fc64/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitsensitive%2Fc64/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitsensitive%2Fc64/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/digitsensitive","download_url":"https://codeload.github.com/digitsensitive/c64/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244501426,"owners_count":20462858,"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-10-10T15:15:46.302Z","updated_at":"2025-03-19T20:31:40.602Z","avatar_url":"https://github.com/digitsensitive.png","language":"Assembly","readme":"# COMMODORE 64 - Examples in 6502 Assembly language\n\n\u003cimg width=100% src=\"images/c64Logo.png\"\u003e\n\n## Installation\n\n1. Setup Turbo Macro Pro Cross Assembler (TMPx)\n   - MacOS (`vendors/tmpx/tmpx`): Allow `tmpx` to be executed as program: `sudo chmod +x PATH/tmpx`\n   - Windows (`vendors/tmpx/TMPx.exe`)\n2. Compile all `*.asm` files to `*.prg` files in `src` with `make convert`\n3. Load specific program into C64 Emulator VICE\n   - `make load name={PATH_TO_PROGRAM_NAME}` (f.e. PATH_TO_PROGRAM_NAME = examples/printString.prg)\n   - `sys` call in the C64 Emulator, specified in the program file (f.e. sys 679)\n4. Delete all `*.prg` files in `src` with `make clean`\n\n## Tools\n\n### Visual Studio Code\n\n[Visual Studio Code](https://code.visualstudio.com) is a streamlined code editor with support for development operations like debugging, task running, and version control.\nIt aims to provide just the tools a developer needs for a quick code-build-debug\ncycle and leaves more complex workflows to fuller featured IDEs, such as Visual Studio IDE.\n\n#### Extensions\n\n- [Retro Assembler](https://marketplace.visualstudio.com/items?itemName=EngineDesigns.retroassembler)\n\n### Turbo Macro Pro Cross Assembler (TMPx)\n\n[TMPx](http://turbo.style64.org) (pronounced \"T-M-P cross\") is the multiplatform cross assembler version of Turbo Macro Pro, itself derived from the famous Turbo Assembler series for the\nnative C64. TMPx was the first cross assembler released with full support for the\nsyntax of Turbo Macro Pro (i.e. same as the original Turbo Assembler Macro).\n\nCurrent version: TMPx v1.0, released 04/29/2012 by The Wiz/Style and Elwix/Style\n\n### C1541\n\n[C1541](https://vice-emu.sourceforge.io/vice_14.html) is a stand-alone disk image maintenance utility.\nThis tool is installed together with VICE.\n\n#### Documentation\n\n- [Syntax Documentation](http://turbo.style64.org/docs/turbo-macro-pro-tmpx-syntax)\n\n### VICE\n\n[VICE](https://vice-emu.sourceforge.io) is a program that runs on a Unix,\nMS-DOS, Win32, OS/2, BeOS, QNX 4.x, QNX 6.x, Amiga, Syllable or Mac OS X machine\nand executes programs intended for the old 8-bit computers.\nThe current version emulates the C64, the C64DTV, the C128, the VIC20,\npractically all PET models, the PLUS4 and the CBM-II (aka C610/C510).\nAn extra emulator is provided for C64 expanded with the CMD SuperCPU.\n\n## Interesting readings\n\n- [6502 opcodes](http://www.6502.org/tutorials/6502opcodes.html)\n- [C64 Memory Map](http://sta.c64.org/cbm64mem.html)\n- [C64 User's Guide Examples in Machine Language](https://github.com/lacerto/c64_users_guide_examples)\n- [Codebase 64](https://codebase64.org/doku.php?id=start)\n- [Commodore 64 Architecture by Jim Butterfield](https://www.atarimagazines.com/compute/issue32/112_1_COMMODORE_64_ARCHITECTURE.php)\n- [Compute! Magazine Archive](https://archive.org/details/compute-magazine)\n- [Dustlayer Tutorials](https://dustlayer.com/tutorials)\n- [Guide to the 6502 Assembly language](https://en.wikibooks.org/wiki/6502_Assembly)\n- [The almost completely commented C64 ROM disassembly, Lee Davison](https://skoolkid.github.io/sk6502/c64rom/index.html)\n\n## Tools\n\n- [Spritemate](https://www.spritemate.com)\n- [PETSCII Editor](http://petscii.krissz.hu)\n\n## Buy me a coffee\n\nWhether you use this project, have learned something from it, or just like it,\nplease consider supporting it by [buying me a coffee](https://www.buymeacoffee.com/JZDVjsT26).\n\n## License\n\n[MIT License](https://opensource.org/licenses/mit-license.php)\n\nCopyright (c) 2020 - 2023 digitsensitive \u003cdigit.sensitivee@gmail.com\u003e\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","funding_links":["https://www.buymeacoffee.com/JZDVjsT26"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigitsensitive%2Fc64","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdigitsensitive%2Fc64","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigitsensitive%2Fc64/lists"}