![]() ![]() ![]() z88dk adds several things that improve on sdcc's output and "SO3" is one of them - it enables some aggressive peephole optimizations.Ī few a functions in the classic library are not ROMable but most will work. The "-opt-code-size" is optional and "-fsigned-char" makes chars signed by default which is what is expected by most programs (zsdcc makes chars unsigned by default which produces better code). Compilation using zsdcc is not thoroughly tested in conjunction with the classic library but it should be alright. You can also use zsdcc to compile your code by adding something like "-compiler=sdcc -SO3 -max-allocs-per-node200000 -opt-code-size -fsigned-char" to the compile line. When using sccz80, the max optimization is -O3. If you add "-create-app" to the compile line, a rom image will automatically be built. Make sure you are targeting a ROM cartridge by using subtype=rom as in "zcc +msx -subtype=rom. I am guessing you are using the classic library and sccz80 as C compiler so that your compile line looks something like "zcc +msx. The classic library does not yet have these functions built-in but it's fairly easy to copy these functions out of the new library to use in your own project if necessary. In terms of data compression, the new C library contains zx7 and aplib. What does your compile line look like? z88dk has two C libraries (called classic and new) and two C compilers in it currently (called sccz80, derived from small C, and zsdcc, an improved version of sdcc) so the available optimizations and library functions depends on what you are using to build the binary. Sorry for the English but I think it's unlikely you'll get good answers to your question from the msx scene since z88dk is not in common use by the msx community.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |