commit 537d59744eae6256f3637a76731c3c6be40db043 Author: Karol Stasiak Date: Wed Dec 6 22:00:04 2017 +0100 Empty repo initialization diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..316480d0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,23 @@ +# various directories +target/ +.idea/ +project/target +project/project/target/ +stuff + +# hidden files +*.~ + +# compiled Scala files +*.jar +*.class + +# compiled Millfork files +*.prg +*.asm +*.xex +*.nes +*.a2 +*.dsk + + diff --git a/README.md b/README.md new file mode 100644 index 00000000..42efeaff --- /dev/null +++ b/README.md @@ -0,0 +1,37 @@ +# Millfork + +A middle-level programming language targeting 6502-based microcomputers. + +**UNDER DEVELOPMENT, NOT FOR PRODUCTION USE** + +## Features + +* multiple targets: + + * Commodore 64 (the primary target) + + * Commodore 16 and Plus/4 + + * Commodore 128 + + * Commodore PET + + * Commodore Vic-20 (stock or with RAM extensions) + + * Atari 8-bit computers + +* inline assembly + +* pay only for what you use: not a single byte of memory is used unless for code or explicitly declared variables + +* simple memory model that avoids using the stack + +* multi-pass optimizer (that will even optimize your hand-written assembly if you ask it to) + +## Planned features + +* multi-part programs + +* more targets: Famicon/NES, BBC Micro/Electron, Oric computers, Apple II, PC-Engine/Turbografx-16, Atari Lynx + +* a better optimizer \ No newline at end of file