richardcavell / basicloader Goto Github PK
View Code? Open in Web Editor NEWA program written in C (C89 dialect) that generates type-in BASIC programs. Targets multiple 8-bit machines. (in development, don't use it yet)
License: Other
A program written in C (C89 dialect) that generates type-in BASIC programs. Targets multiple 8-bit machines. (in development, don't use it yet)
License: Other
README.txt BASICloader version : Still in development. (c) 2017-2019 Richard John Foster Cavell https://github.com/richardcavell/BASICloader 1. What BASICloader does 2. BASICloader's features 3. BASICloader's input options 4. BASICloader's output options === 1. What BASICloader does === BASICloader is a magazine type-in generator. It is free, open-source software that is intended as a retro computing project. There were many 8-bit computer systems in the 1980s. They typically had a built-in BASIC interpreter, as well as having the ability to execute machine language programs. Magazines that were devoted to these 8-bit systems often had program source code listings. The idea is that you would type in the program and run it. Many of these programs looked like this: 10 FOR I = 8192 TO 9432 20 READ A 30 POKE I,A 40 NEXT I 50 DATA 56, 23, 78, 102, 9, 207, 193, 8 60 DATA 88, 0, 0, 0, 1, 107, 92, 93, 107 ... etc ... This is a BASIC program, which contains DATA statements. The DATA statements are code for a machine-language program. The main part of this BASIC program is a loop that pokes these values into memory. BASICloader creates BASIC programs of this type. When given a machine language program (or any other data), BASICloader will automatically construct a BASIC program. The program that BASICloader creates, if it is typed in and run, will set up that machine language program (or data) in memory. The BASIC program can be published in printed form, and typed in by an enthusiastic computer user. You still have to create the machine-language program, of course. BASICloader can take a raw binary as input. It can also recognize and use the native file format of each of the machines that it supports. BASICloader is quite versatile in the sort of output that it can generate. === 2. BASICloader's features ==== Here are some of BASICloader's features: * Written entirely in standard C, so that it can be compiled and run on a wide range of operating systems and machines * Made up of exactly one (long) source file, so that building and linking couldn't be simpler * Specially written to detect problems with old compilers and implementations * Detects every error and problem (in the input file, or while generating the output, or in the selection of command line switches) that can reasonably be detected * Versatile input options, with the ability to understand the file format that is native to each machine * Very customizable output, with many command-line switches * Permissive licensing, so that you can use BASICloader and its output widely in your own work ... and more! === 3. BASICloader's input options === BASICloader can take the following types of files as input: * Raw binary * Disk Extended Color BASIC (also known as RS-DOS) (/BIN format) * DragonDOS (.BIN format) * Commodore 64 (.PRG format) === 4. BASICloader's output options === You can customize the output of BASICloader to: * Target one of several different machines (and BASIC dialects): * TRS-80 Color Computer 1, 2 and 3 * Dragon 32 and 64 * Commodore 64 * Emit special instructions for Extended Color BASIC (For the TRS-80 Color Computer) * Output in uppercase, lowercase or mixed case * Add the build date in a REM statement * Add custom REM statements * Start running the machine language program automatically * Place the binary blob at a custom location * Start executing from somewhere other than the first memory location * Produce and use checksums to ensure the program is typed correctly * Produce output that is compact (saves memory) or not (easier to read and type) ... and more! For more information, take a look at FAQ.txt in the Documents folder. You can find this project on the web at: https://github.com/richardcavell/BASICloader This project is actively maintained, and was last reviewed in April 2019. Richard Cavell
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.