{"id":23296706,"url":"https://github.com/turkishrational/fasm","last_synced_at":"2025-04-06T19:50:50.052Z","repository":{"id":268923880,"uuid":"868552485","full_name":"turkishrational/fasm","owner":"turkishrational","description":"Flat Assembler (FASM) for TRDOS 386 Operating System","archived":false,"fork":false,"pushed_at":"2025-01-24T22:46:13.000Z","size":128692,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-13T01:51:16.554Z","etag":null,"topics":["32bit","386","386dos","80386","adaptation","assembler","assembly","binary","compiler","dos","fasm","file","flat","nasm","port","prg","trdos","trdos386","x86"],"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/turkishrational.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":"2024-10-06T17:12:18.000Z","updated_at":"2025-01-24T22:46:18.000Z","dependencies_parsed_at":"2025-02-13T01:50:52.613Z","dependency_job_id":"1fcd96fd-7cef-448f-816f-9331f8f2c3a2","html_url":"https://github.com/turkishrational/fasm","commit_stats":null,"previous_names":["turkishrational/fasm"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turkishrational%2Ffasm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turkishrational%2Ffasm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turkishrational%2Ffasm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turkishrational%2Ffasm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/turkishrational","download_url":"https://codeload.github.com/turkishrational/fasm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247543611,"owners_count":20955865,"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":["32bit","386","386dos","80386","adaptation","assembler","assembly","binary","compiler","dos","fasm","file","flat","nasm","port","prg","trdos","trdos386","x86"],"created_at":"2024-12-20T07:13:20.929Z","updated_at":"2025-04-06T19:50:50.030Z","avatar_url":"https://github.com/turkishrational.png","language":"Assembly","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Flat Assembler (FASM) for TRDOS 386 Operating System\n\nTRDOS 386 adaptation/port of Tomasz Grysztar's Flat Assembler (v1.73.32)\n\n.. FASM.PRG assembles itself ..\n\nNOTE:\n.PRG files are TRDOS 386 (32 bit, x86) flat binary executables. They start at virtual address 0 always.\n(Similar to 16 bit MSDOS .COM files which start at 100h.) \nTRDOS 386 does not use segments. (Demand Paging method is used. The kernel page directory is set for 1 to 1\nphysical memory layout. Interrupts are set to run in the 1st 4MB -PDE 0- also with user's page directories.\nUser's segment selectors are set for 4MB base address with 4GB-4MB limit.)\n\n(TRDOS 386 kernel handles memory as virtually -up to 4GB- flat memory by using system and user page tables.)\n((In fact, TRDOS 386 programs start at 4MB linear base address but their page directories are set\n  to provide virtual address 0 as start address. Maximum usable -virtual- memory for TRDOS 386 programs is 4GB-4MB.) \n\nHow FASM assembles a TRDOS 386 binary: The answer is 'It is very easy!'.\nfasm example.asm  -\u003e creates EXAMPLE.BIN file (it will be able to run just after renaming it as EXAMPLE.PRG file) \nfasm example.asm example.prg -\u003e creates EXAMPLE.PRG file.\n\nOperating system depended files: FASM.ASM, SYSTEM.INC (other files are common source code files of FASM.)\n\nQuestion: By using FASM.PRG in TRDOS 386 environment...\n          Is it possible to assemble executable files for WINDOWS, LINUX, DOS or another operating system?\nAnswer: Yes. Just as FASM.EXE and Linux FASM do it.\n\nErdogan Tan - October 2024\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fturkishrational%2Ffasm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fturkishrational%2Ffasm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fturkishrational%2Ffasm/lists"}