{"id":31848856,"url":"https://github.com/matttuttle/hxmikmod","last_synced_at":"2026-02-23T12:56:26.569Z","repository":{"id":140742642,"uuid":"2209532","full_name":"MattTuttle/hxMikMod","owner":"MattTuttle","description":"A mikmod port to haxe (original port on Google Code)","archived":false,"fork":false,"pushed_at":"2015-12-23T16:48:04.000Z","size":97,"stargazers_count":9,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-10-26T23:42:42.195Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://code.google.com/p/hxmikmod/","language":"Haxe","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/MattTuttle.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}},"created_at":"2011-08-15T12:10:04.000Z","updated_at":"2023-08-19T13:23:16.000Z","dependencies_parsed_at":"2023-03-16T04:15:26.150Z","dependency_job_id":null,"html_url":"https://github.com/MattTuttle/hxMikMod","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MattTuttle/hxMikMod","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattTuttle%2FhxMikMod","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattTuttle%2FhxMikMod/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattTuttle%2FhxMikMod/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattTuttle%2FhxMikMod/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MattTuttle","download_url":"https://codeload.github.com/MattTuttle/hxMikMod/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattTuttle%2FhxMikMod/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29743660,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-23T07:44:07.782Z","status":"ssl_error","status_checked_at":"2026-02-23T07:44:07.432Z","response_time":90,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2025-10-12T10:52:30.501Z","updated_at":"2026-02-23T12:56:26.541Z","avatar_url":"https://github.com/MattTuttle.png","language":"Haxe","funding_links":[],"categories":[],"sub_categories":[],"readme":"hxMikMod\n========\n\nThis is a Haxe/Flash port of libmikmod, a music module playing library.\n\nIt should be considered work in progress, but the modules I have tried\nso far sound ok. I've implemented the MOD, XM, S3M, and IT loaders but\nthe more exotic formats aren't supported yet.\n\nThis is a very direct port from the original ANSI C code, so there\nis little object orientation. Therefore this project shouldn't be used as\nan example of good coding practices.\n\n\n\n\nWhy?\n====\n\nAt the moment of writing, there is apparently NO freely available\nFlash library that could play these music file formats. There are\na couple of 4-channel MOD player projects, but there seem to be\nsome license and/or playback issues such as unimplemented effects.\n\nApparently the only Flash app that can play \u003e4 channel module formats\nproduced by programs like FastTracker 2, Scream Tracker or Impulse\nTracker, is the Alchemy-based FlashModPlug by UnitZeroOne, which is\nhowever still unreleased at the moment.\n\nWhy would someone want to play with these deprecated file formats?\nApart from nostalgy, tracker modules offer several advantages over\nMP3's: small file size, vast amount of available music\n(ModLand hosts over 400,000 music files), easy creation...\n\n\n\n\nAuthors\n=======\n\nThis port is based on libmikmod-3.2.0-beta2 which was developed\nby Jean-Paul Mikkers, Jake Stine, Miod Vallat, Raphael Assenat,\nand others.\n\nInformation about the original MikMod is available at\nhttp://mikmod.raphnet.net/\n\nThis Haxe port was written by Jouko Pynnönen (jouko@iki.fi)\n\n\n\n\nUsage\n=====\n\n\tMikMod.Init(null);\n        Player.LoadURL(\"my_song.xm\");\n\n\t// in an event handler that is called\n\t// when the loading is finished:\n\n\tPlayer.Start(module);\n\n\nPlease refer to the source, the included examples and the original\nlibmikmod documentation for more information.\n\nSimplePlayer.hx is a minimal example of how to load and play a music\nmodule embedded in the .swf.\n\nMultiPlayer.hx contains a list of demo tunes, which it loads via\na URLRequest. There are also some GUI elements I mainly used\nfor debugging.\n\n\n\n\n\nNotes on porting\n================\n\nFirstly, I'm new with Haxe and Flash so there is probably a lot of room\nfor improvement in this project. Any contributions such as bug reports and\nfixes, functionality patches, additional module format support, etc.\nare appreciated.\n\nThe files under hxmikmod/ roughly correspond to the original ANSI C\nfile names. Most numerical constants are in Defs.hx. Loader routines\nare in the hxmikmod.loaders package. I've added the MikMod and\nPlayer classes mainly for convenience, e.g. the C function\nMikMod_Init() was renamed to MikMod.Init() and Player_Start() to\nPlayer.Start().\n\nThe hxmikmod.events package contains some rought outlining of an event\nsystem that doesn't exist in the original library. It provides some support\nfor GUI interaction. Refer to MultiPlayer.hx for an example.\n\nCurrently the only proper way to find out when the module is loaded, is to use\nthes event interface:\n\n        TrackerEventDispatcher.addEventListener(TrackerLoadingEvent.TYPE,onTrackerLoading);\n\nYou will receive events about the loading process to an event handler:\n\n\tpublic function onTrackerLoading(e:TrackerLoadingEvent) {\n\t   if (e.state==TrackerLoadingEvent.LOADED)\n        \tPlayer.Start(e.module);\n\t}\n\n\nThe file Types.hx contains typedefs of the numeric types used in original\nlibmikmod. Currently they all translate into the Haxe Int type.\n\nThere are a few functions that haven't been implemented yet (they're in the source\nas stubs with a trace() call). However all playback functionality of the currently\nsupported formats should be there.\n\nThere are almost certainly some bugs lurking around, e.g. in the various effect functions\nI haven't been able to test. Please let me know if you spot one.\n\nImpulse Tracker compressed sample loading is SLOW. I'm not sure if this is a bug.\n\n\n\n\nResources\n=========\n\nhxmikmod:                   http://code.google.com/p/hxmikmod/\nThe original MikMod site:   http://mikmod.raphnet.net/\nThe Mod Archive:            http://modarchive.org/\nModland:                    ftp://ftp.modland.com/\nWorld of Game Mods:         http://www.mirsoft.info/gamemods.php\n\n\n\n\nLicense\n=======\n\nhxMikMod sound library\nCopyright (C) 2011 Jouko Pynnönen \u003cjouko@iki.fi\u003e\n\nThis library is free software; you can redistribute it and/or\nmodify it under the terms of the GNU Lesser General Public\nLicense as published by the Free Software Foundation; either\nversion 2.1 of the License, or (at your option) any later version.\n\nThis library is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\nLesser General Public License for more details.\n\nYou should have received a copy of the GNU Lesser General Public\nLicense along with this library; if not, write to the Free Software\nFoundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\n\n\n\n\nAcknowledgements\n================\n\nThanks and greets to the artists whose work I've used for demonstration, testing,\nand enjoyment purposes, including: Firefox, Tor Gausen, Barry Leitch, Lizardking, Maktone,\nPurple Motion, Quasian, Radix, Random Voice, Tip.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatttuttle%2Fhxmikmod","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatttuttle%2Fhxmikmod","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatttuttle%2Fhxmikmod/lists"}