{"id":20647153,"url":"https://github.com/bbbbbr/gbdk_dictionary","last_synced_at":"2026-02-04T11:01:48.548Z","repository":{"id":252759926,"uuid":"841372779","full_name":"bbbbbr/gbdk_dictionary","owner":"bbbbbr","description":"A simple GBDK / C based dictionary lookup for validating words with banking support","archived":false,"fork":false,"pushed_at":"2024-09-09T07:27:18.000Z","size":917,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-16T16:36:35.111Z","etag":null,"topics":["dictionary","gameboy","gbdk","gbstudio"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bbbbbr.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":"2024-08-12T09:23:44.000Z","updated_at":"2024-09-12T10:41:38.000Z","dependencies_parsed_at":"2024-08-21T09:55:23.054Z","dependency_job_id":"a1cf09e1-5e4e-43d1-8e53-9352c8866182","html_url":"https://github.com/bbbbbr/gbdk_dictionary","commit_stats":null,"previous_names":["bbbbbr/gbdk_dictionary"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbbbbr%2Fgbdk_dictionary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbbbbr%2Fgbdk_dictionary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbbbbr%2Fgbdk_dictionary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbbbbr%2Fgbdk_dictionary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bbbbbr","download_url":"https://codeload.github.com/bbbbbr/gbdk_dictionary/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234344857,"owners_count":18817546,"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":["dictionary","gameboy","gbdk","gbstudio"],"created_at":"2024-11-16T16:29:21.542Z","updated_at":"2026-02-04T11:01:48.462Z","avatar_url":"https://github.com/bbbbbr.png","language":"C","readme":"A simple dictionary word validator for use with GBDK / ZGB / GBStudio which supports ROM banking.\n\nAt present it's a quick and simple implementation with support for words 3-6 letters long. \nWhile not as fast and size efficient as the [GB-wordyl](https://github.com/bbbbbr/gb-wordyl) \ndictionary, it's far less complicated and should be easier to understand, modify and use in other projects.\n\nThere is lookup function code duplication in the banked sources as a result of trying to use as little\nBank 0 space as possible, since that space is sometimes in short very supply in GBStudio projects using\nplugins.\n\n### Usage in a Game\nThe dictionary was originally built for use in [Word Forward](https://thalamusdigital.itch.io/word-forward-game-boy) by [Shane McCafferty / EGVroom](https://x.com/EGVroom). \n\n\u003cimg alt=\"word_forward_pD6jxf\" src=\"https://github.com/user-attachments/assets/c860eec2-a57e-49dc-9373-326f298b7f84\"\u003e\n\nScreenshot courtesy of the Game's itch io page.\n\n### GB Studio example project\n[Shane McCafferty / EGVroom](https://x.com/EGVroom) provided an example GBStudio project (under [GBStudioLookUpDemo](GBStudioLookUpDemo) showing how to interface with and use the dictionary. A pre-built example ROM is included in the project under [GBStudioLookUpDemo/build/rom](GBStudioLookUpDemo/build/rom).\n\nIn this project there are variables $Selection1 .. $Selection6 which store numbers (1-26) representing alphabet letters (a-z).\n\n### Plugin\n[Pautomas](https://github.com/pau-tomas) packaged the dictionary as a plugin so it's easier to integrate with GBStudio: \n[GBStudioLookUpDemo/plugins/Dictionary](GBStudioLookUpDemo/plugins/Dictionary)\n\nUse the `If is valid word` event to check a word. It calls `isThisAWord()` in [native_testfunc.c](GBStudioLookUpDemo/plugins/Dictionary/engine/src/data/native_testfunc.c)\n\nTo install the plugin copy the contents of the [plugins directory](GBStudioLookUpDemo/plugins) to the plugins top level folder in your GBStudio project.\n\n### License\nAll code is released under the Unlicense into the public domain, this includes the dictionary and the example GBStudio project.\n\nIf used in a project attirbution is welcome but not required.\n\n### Size\nThe whole thing takes about 9 ROM banks.\n\nThere is a matching test dictionary for validation in the example program which takes ~12 ROM banks. The test data is not meant to be included in user programs.\n\n### Copying dictionary source files\nIf the dictionary source files are changed then the updated ones can be copied from the [src/data/](src/data/) directory into the GBStudio `plugins/Dictionary/engine/src/data/` directory.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbbbbr%2Fgbdk_dictionary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbbbbbr%2Fgbdk_dictionary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbbbbr%2Fgbdk_dictionary/lists"}