{"id":20522869,"url":"https://github.com/anachrocomputer/uk101demo","last_synced_at":"2026-06-10T09:31:56.487Z","repository":{"id":201945248,"uuid":"707396350","full_name":"anachrocomputer/UK101Demo","owner":"anachrocomputer","description":"Demo program for 6502-based Compukit UK101","archived":false,"fork":false,"pushed_at":"2023-11-08T21:38:15.000Z","size":34,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-06T00:44:38.929Z","etag":null,"topics":["6502","6502-assembly","assembly","assembly-language","demo","demo-app"],"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/anachrocomputer.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":"2023-10-19T20:09:22.000Z","updated_at":"2023-10-21T16:53:02.000Z","dependencies_parsed_at":"2025-01-16T10:43:24.142Z","dependency_job_id":"e50566dc-c5fc-4370-8a89-d739805fda43","html_url":"https://github.com/anachrocomputer/UK101Demo","commit_stats":null,"previous_names":["anachrocomputer/uk101demo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/anachrocomputer/UK101Demo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anachrocomputer%2FUK101Demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anachrocomputer%2FUK101Demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anachrocomputer%2FUK101Demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anachrocomputer%2FUK101Demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anachrocomputer","download_url":"https://codeload.github.com/anachrocomputer/UK101Demo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anachrocomputer%2FUK101Demo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34146871,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-10T02:00:07.152Z","response_time":89,"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":["6502","6502-assembly","assembly","assembly-language","demo","demo-app"],"created_at":"2024-11-15T22:37:09.488Z","updated_at":"2026-06-10T09:31:56.466Z","avatar_url":"https://github.com/anachrocomputer.png","language":"Assembly","funding_links":[],"categories":[],"sub_categories":[],"readme":"# UK101Demo #\n\nAssembly-language routines for the Compukit UK101,\nmaking a demo program for the machine.\nRepository set up in October 2023 for RetroChallenge.\n\nThe program displays a sequence of screen images from 48x32 pixel\nbitmaps loaded as part of the checksum hex file.\nIt also saves complete VDU images into RAM and loads them back using\nvideo wipe effects (top-to-bottom and bottom-to-top so far).\n\nSome of the demo displays include colour,\nwhich will only work on my modified UK101\n(with a colour monitor connected of course).\nBut the colour effects should not prevent the code from running on a\nstandard machine.\nThe timings of the video wipes are also set up for my 2MHz machine,\nwhereas the standard 1MHz Compukit will be only half as fast.\n\n## Assembler ##\n\nThe code assembles with a 6502 assembler of my own design called 'as6502'.\nIt's available in another repo: [https://github.com/anachrocomputer/6502]\n\n## Building the Program ##\n\nWe will need the C compiler, linker and libraries:\n\n`sudo apt-get install build-essential`\n\nOnce those are installed, along with 'as6502', we can simply:\n\n`make`\n\nThe Makefile will compile a small C program that converts ASCII Portable Bitmap\nfiles into assembly language, run it a few times, and then run the assembler.\n\n## Loading and Running ##\n\nThe assembler generates a HEX file in MOS Technology checksum format.\nThe UK101 Extended Monitor can load this file from the ACIA at 300 baud.\nMy own modified UK101 has a checksum loader in EPROM and can load\nthe file at 1200 baud.\n\nNote that the code now requires more than 4k of RAM and will not run\non an unexpanded UK101.\n8k machines should be fine though.\n\nHowever, the Extended Monitor that was supplied on cassette with the\noriginal UK101 kit occupies addresses in the 4k RAM area that we'll\noverwrite when loading this code.\nI've moved the Extended Monitor up to $C000 and put it in an EPROM,\nso my machine can load into any part of RAM.\nI'm not sure the best way to fix this issue,\nso if any UK101 users have some good suggestions,\nplease let me know.\n\nOnce loaded, execute the program at address $0300.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanachrocomputer%2Fuk101demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanachrocomputer%2Fuk101demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanachrocomputer%2Fuk101demo/lists"}