{"id":16842720,"url":"https://github.com/rofl0r/ascc","last_synced_at":"2025-07-28T17:07:07.507Z","repository":{"id":138310839,"uuid":"226758600","full_name":"rofl0r/ascc","owner":"rofl0r","description":"standalone AGS script compiler","archived":false,"fork":false,"pushed_at":"2025-03-13T13:16:02.000Z","size":401,"stargazers_count":5,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-02T14:17:02.912Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rofl0r.png","metadata":{"files":{"readme":"README","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,"zenodo":null}},"created_at":"2019-12-09T01:21:12.000Z","updated_at":"2025-03-13T13:16:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"1762ea6c-83f1-4993-af0d-3cf0792b00a6","html_url":"https://github.com/rofl0r/ascc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rofl0r/ascc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rofl0r%2Fascc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rofl0r%2Fascc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rofl0r%2Fascc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rofl0r%2Fascc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rofl0r","download_url":"https://codeload.github.com/rofl0r/ascc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rofl0r%2Fascc/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267552097,"owners_count":24106000,"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","status":"online","status_checked_at":"2025-07-28T02:00:09.689Z","response_time":68,"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":[],"created_at":"2024-10-13T12:48:17.734Z","updated_at":"2025-07-28T17:07:07.466Z","avatar_url":"https://github.com/rofl0r.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"ascc - standalone AGS script compiler\n-------------------------------------\n\nabout\n-----\n\nscript compiler factored out from AGS ags3 branch[0], and equipped with a\nC-compiler-like command line frontend.\n\nthe preprocessor which was long ago ripped off the original C++ code and turned\ninto C#-windows-only code has been restored from old git history of around 2012.\ntherefore it's possible that the preprocessor behaves slightly different than\nthe one shipping with the GUI.\n\ncurrent status:\n`ascc` can be used to compile .asc files into binary .o files.\nthese in turn can be used with agsutils[1] agsdisas disassembler and\nagsinject utilities for updating ags' binary .crm or .dat files.\n(read agsutils README for more details).\n\nas a bonus over the standard compiler embedded in the AGS editor software,\nthis version has been enhanced with the following features:\n\n- ability to run different preprocessor (like C preprocessor with support\n  for #include, function-like macros, etc.\n\n- support for C-style char* pointers. this allows one to write fast\n  low-level code for agssim, or even for ags games, circumventing the\n  \"managed\" OOP bloat.\n  (currently, such pointers need to be dereferenced with [] operator).\n\nbuild\n-----\n\ninstall a C++ toolchain, then run\n\n    make -jN\n\nwhere N corresponds to the number of CPU cores in your machine.\nbuildtime should be roughly 10 secs with one core.\n\nusage\n-----\n\nascc [OPTIONS] FILE.asc\ncompiles FILE.asc to FILE.o\nOPTIONS:\n-i systemheaderdir : provide path to system headers\n   this is the path containing implicitly included headers (atm only agsdefns.sh).\n-H 1.ash[:2.ash...] : colon-separated list of headers to include.\n   order matters. AGS editor automatically includes all headers\n   it finds in the game dir, but here you need to specify them.\n-o filename : explicitily specify output file name\n-P preprocessor : use `preprocessor` on files before running the built-in\n   one on them. example: -P \"cpp -P\". note that you if you use a\n   standard C preprocessor, linenumber directives need to be supressed\n   as in the example cpp command.\n-D macro[=val] : define preprocessor macro\n-E : run preprocessor only (create file with .i extension)\n-W : warn about non-fatal errors parsing system headers\n-g : turn on debug info\n-S : write textual assembly instead of binary (requires agsdisas)\n\n---\n[0]: base commit: c38b937273f21ec6002cde1dec9b1bead5f7833c.\n[1]: https://github.com/rofl0r/agsutils\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frofl0r%2Fascc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frofl0r%2Fascc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frofl0r%2Fascc/lists"}