f256/f256lib/docs.h
2024-04-29 20:03:36 -05:00

117 lines
3.4 KiB
C

/*
* Copyright (c) 2024 Scott Duensing, scott@kangaroopunch.com
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
/*
* Configuration DEFINEs
*
* Before including this file, you may define one or more of the following
* to customize the library for your application:
*
* SWAP_RESTORE
*
* When using functions such as FAR_PEEK or bitmap features, return the
* swap slot back to it's original memory location before returning. By
* default, the swap slot is left in whatever state the last function that
* used it switched it to.
*
* WITHOUT_GRAPHICS
*
* Shortcut for WITHOUT_BITMAP, WITHOUT_TILE, and WITHOUT_SPRITE.
*
* WITHOUT_BITMAP
*
* Disables bitmap functions.
*
* WITHOUT_TILE
*
* Disables tilemap functions.
*
* WITHOUT_SPRITE
*
* Disables sprite functions.
*
* WITHOUT_FILE
*
* Disables file handling support.
*
* WITHOUT_KERNEL
*
* Disables microkernel support. Also disables FILE, PLATFORM, and MAIN.
*
* WITHOUT_TEXT
*
* Disables text functions. Also disables PLATFORM.
*
* WITHOUT_MATH
*
* Disables math coprocessor support. Also disables TEXT, PLATFORM and
* BITMAP.
*
* WITHOUT_MAIN
*
* Removes support for the standardized "int main(int argc, char *argv[])"
* function and replaces it with "int main(void)". You must also manually
* call "f256Init()" at the start of your program.
*
* WITHOUT_PLATFORM
*
* Removes basic C library I/O support for "getchar()" and "__putchar()".
* This removes printf().
*
* WITHOUT_DMA
*
* Removes DMA support. In the future, will also disable BITMAP.
*
*/
/*
* Usage Example:
*
* #define WITHOUT_FILE
* #define WITHOUT_SPRITE
* #define WITHOUT_TILE
* #define F256LIB_IMPLEMENTATION
* #include "f256lib.h"
*
* int main(int argc, char *argv[]) {
* return 0;
* }
*
*/
/*
* Library documentation at this point is basically "Use the Source, Luke!"
* Each section of the library has it's own header file in the non-amalgamated
* build. Look through the headers in the "include/" and "f256lib/"
* directories.
*
* Examples of using the various features of the library are in the "examples/"
* directory. Source code for helpful utilities and tools that run on the
* host computer can be found in "tools/".
*
*/
#define END_OF_DOCS__BEYOND_LIE_DRAGONS