{"id":24506833,"url":"https://github.com/rasky/mvs64","last_synced_at":"2025-04-14T07:10:40.941Z","repository":{"id":46293773,"uuid":"361520249","full_name":"rasky/mvs64","owner":"rasky","description":"A NeoGeo emulator for Nintendo64","archived":false,"fork":false,"pushed_at":"2024-08-17T17:21:02.000Z","size":1806,"stargazers_count":36,"open_issues_count":0,"forks_count":3,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-03-27T20:51:09.674Z","etag":null,"topics":["emulators","homebrew","n64"],"latest_commit_sha":null,"homepage":"","language":"C","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/rasky.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}},"created_at":"2021-04-25T19:32:15.000Z","updated_at":"2025-03-12T03:59:17.000Z","dependencies_parsed_at":"2024-08-17T18:44:55.756Z","dependency_job_id":null,"html_url":"https://github.com/rasky/mvs64","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/rasky%2Fmvs64","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rasky%2Fmvs64/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rasky%2Fmvs64/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rasky%2Fmvs64/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rasky","download_url":"https://codeload.github.com/rasky/mvs64/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248837287,"owners_count":21169374,"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":["emulators","homebrew","n64"],"created_at":"2025-01-21T23:40:08.304Z","updated_at":"2025-04-14T07:10:40.919Z","avatar_url":"https://github.com/rasky.png","language":"C","readme":"## MVS64 -- A NeoGeo emulator for Nintendo 64\n\n\u003cimg src=\"https://github.com/rasky/mvs64/raw/main/screens/image0.jpg\" width=\"320\"\u003e\n\u003cimg src=\"https://github.com/rasky/mvs64/raw/main/screens/pbobblen.png\" width=\"320\"\u003e\n\n### Status\n\nThis emulator is in **VERY EARLY STAGE**. Only a handful of games boot or\nwork.\n\nPerformance on N64 is still not very good, most games do not run at full frame\nrate yet.\n\nSound is not emulated yet.\n\n\n### How to build\n\nMVS64 is written using [libdragon](https://github.com/DragonMinded/libdragon).\nThe build system assumes that you will be using the official Docker container\nfor libdragon ([libdragon-docker](https://github.com/anacierdem/libdragon-docker)),\nthat will work on Windows (under WSL), Linux and Mac. First, follow the installation\ninstructions of libdragon-docker if you haven't already.\n\nOnce you have the docker container configured, clone mvs64:\n\n\t$ git clone https://github.com/rasky/mvs64\n\t$ cd mvs64\n\nStart the docker container in the mvs64 directory:\n\n\t$ libdragon start\n\nNow build mvs64:\n\n\t$ make mvs64 BIOS=\u003cpath/to/bios.bin\u003e ROM=\u003cpath/to/game.zip\u003e\n\nWhen building, you need to specify the path to a NeoGeo BIOS file that you\nwant to use, and the path to a NeoGeo game ROM, as a zip file. Both `BIOS` and\n`ROM` are actually environment variables, so you can set them in your environment\nonce to avoid specifying them on the command line (doing that for `BIOS` is\nespecially useful, as you rarely change that).\n\nThis command will create a Nintendo 64 ROM called `mvs64-\u003cgamename\u003e.z64`, that\nyou can use with an emulator or on a real console using a development kit\nlike 64drive or EverDrive 64.\n\n**NOTE**: during the build, the path of the BIOS will be inspected to search for\na ROM called `sfix.sfix`, which is also part of the standard BIOS sets. That\nROM must reside in the same folder of the specified BIOS.\n\n### How to build the PC version of mvs64\n\nmvs64 also includes a PC build of the emulator that can be used to further\ntest the emulation. In general, if a bug is present in the N64 version and\nnot in the PC version of mvs64, it is a bug of the Nintendo 64 backend.\nOtherwise, it is a bug in the NeoGeo emulation layer.\n\nTo build the PC version, run:\n\n\t$ make pctest\n\nThis will build a `emu` binary. This PC version tries to stay as close\nas possible to the N64 version, so it's not optimized to be a fully standalone\nPC emulator. In particular, it doesn't load standard game ZIP files, but it\nuses the preprocessed ROMs that are generated as part of the N64 build system. \n\nTo use the PC version of the emulator on a specific game, first build the N64\nemulator for that game using the `make mvs64` command above.\nDuring the build, you will notice that a folder called `game.n64/` (next to\n`game.zip`) is created. That folder contains preprocessed ROMs that are then\nembedded in the final `.z64` file. Pass that folder to the `emu` binary:\n\n\t$ ./emu \u003cpath/to/game.n64/\u003e\n\n\n","funding_links":[],"categories":["Programming"],"sub_categories":["C"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frasky%2Fmvs64","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frasky%2Fmvs64","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frasky%2Fmvs64/lists"}