--- title: "Turbo Config" type: "article" slug: "turbo-config" url: "http://localhost/article/turbo-config/" markdown_url: "http://localhost/article/turbo-config.md" published_at: "2025-12-18T22:01:16+00:00" modified_at: "2026-06-21T23:36:13+00:00" featured_image: url: "http://localhost/wp-content/uploads/2022/04/20230809-041332.jpg" excerpt: "TURBO does not support standard Qjump Config Blocks. George Gwilt has created TURBO Config, a tool that allows Config blocks to be added to TURBO compiled programs. After creating some data statements that get merged with the source code, another tool takes the Config block information and adds it to the compiled program. T_CONFIG_DATA is…" category: - name: "QL Hacker's Journal" slug: "ql-hackers-journal" taxonomy: "category" url: "http://localhost/category/periodicals/ql-hackers-journal/" post_tag: - name: "Full Text" slug: "fulltext" taxonomy: "post_tag" url: "http://localhost/tag/fulltext/" - name: "QL" slug: "ql" taxonomy: "post_tag" url: "http://localhost/tag/ql/" - name: "Superbasic (programming language)" slug: "superbasic-programming-language" taxonomy: "post_tag" url: "http://localhost/tag/superbasic-programming-language/" model: - name: "Sinclair QL" slug: "sinclair-ql" taxonomy: "model" url: "http://localhost/model/sinclair-ql/" indiv: - name: "Tim Swenson" slug: "tim-swenson" taxonomy: "indiv" url: "http://localhost/indiv/tim-swenson/" publication_r: id: 33686 title: "QL Hacker’s Journal" type: "periodical" url: "http://localhost/periodical/ql-hackers-journal/" authors_r: - name: "Tim Swenson" slug: "tim-swenson" taxonomy: "indiv" url: "http://localhost/indiv/tim-swenson/" issue: "34" issues_articles: - id: 61570 title: "QL Hacker’s Journal 34" type: "issue" url: "http://localhost/issue/ql-hackers-journal-34/" pubdate: "December 2001" archive_link: true --- # Turbo Config TURBO does not support standard Qjump Config Blocks. George Gwilt has created TURBO Config, a tool that allows Config blocks to be added to TURBO compiled programs. After creating some data statements that get merged with the source code, another tool takes the Config block information and adds it to the compiled program. T_CONFIG_DATA is the program that takes your Config bock definition and creates two files. The first is the data statements with dummy data holders. The second fiile is the actual data that will be put into the Config block. T_CONFIG_LOAD is the program that takes the Config block data and puts it into the compiled program. The process goes something like this: - Write your program. - Use T_CONFIG_DATA to create the DATA statements and to define the data. - Merge the DATA statements with your program. - Compile the program. - Use T_CONFIG_LOAD to load the Config block data into the executable. The Config block data is read by using READ statements and selecting the right item by using RESTORE statements. Due to the way strings are stored, they must be read twice, with the second read getting the real string. Below is an example: ``` 10 RESTORE 1000 20 READ int1 30 READ int2 40 RESTORE 1004 50 READ string1$ : READ string1$ 60 RESOTRE 1006 70 READ string2$ : READ string2$ 100 PRINT "Int #1: ";int1 110 PRINT "Int #2: ";int2 120 PRINT "String #1: ";string1$ 130 PRINT "String #2: ";string2$ 140 STOP 998 DATA "$'#*","ctest !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" 1000 DATA -4444: REMark First Integer 1002 DATA -4444: REMark Second Integer 1004 DATA "XX","00000000000" 1006 DATA "XX","11111111111" ```