Omdat het inmiddels meer dan 20 jaar geleden is dat ik voor het laatst iets serieus heb gereleased in de demoscene, heb ik zin om weer wat op te pikken. Om precies te zijn de 64k categorie, waar executable (inclusief meeverpakte data, zowel graphics als muziek) niet groter mag zijn dan 64k. Ter referentie, je krijgt dan b.v. https://www.youtube.com/watch?v=QhqT0DhV9yE als resultaat (maar zo goed wordt mijn knutsel natuurlijk niet ).
De standaard keuze is C++, omdat er in die hoek een hele stapel tooling en kant- en klare broncode beschikbaar is, maar ik wil zeker m'n oude liefde Pascal niet zomaar passeren hier.
Ik heb netjes https://wiki.freepascal.org/Size_Matters doorgelezen, maar daar ligt de focus toch wel op een iets andere orde van grootte. Bij het bouwen van 64k intro's ligt de lat wat hoger (lager?). De standaard packer was vroeger kkrunchy, die veel (veel!) beter presteert dan UPX in deze categorie, maar helaas nooit TLS support had en dus niet bruikbaar was voor Delphi & co. Tegenwoordig is er BeRoEXEPAcker, ik heb goede hoop dat dit met een freepascal executable goed is aan te slingeren.
Maar voordat ik zelf de diepte in duik: hoe krijg ik een FPC applicatie zo klein mogelijk? Ik heb letterlijk -niets- nodig aan libraries, die paar windows calls om een window + loop in de lucht te brengen schrijf ik zelf wel uit. En daarna gaan we toch de OpenGL/DirectX in, er is verder geen interactie.
Bookmarks