Winners of the 22nd IOCCC Competition



    The source code of the winning programs of the 22nd contest of programs with obfuscated code in C has been published. Ready-made programs of less than 4096 bytes in size can be participating in the competition, while the number of significant characters, excluding spaces, tabs and signs; (), should not exceed 2048. However, this year many participants used an exploit for a bug in the program size calculation module, so in 2013, perhaps the most advanced programs for all the years of the competition were submitted to the competition.

    For example, the emulator of an 8086 computer with a size of 4043 bytes ( source code ) with the full set of instructions 8086/186, which supports floppy disks and HDD and PC speaker , is truly admired .



    Almost any software can be run in the emulator. The author tested it with operating systems (MS-DOS 6.22, FreeDOS 0.82pl3, Windows 3.0, DESQview 2.8, professional software (Lotus 1-2-3 2.4 and AsEasyAs 5.7 for DOS, Excel 2.1 for Windows, AutoCAD 2.5, WordStar 4), programming languages ​​(QBASIC, GWBASIC, Turbo C ++), games (Carrier Command, Police Quest, free Windows games) and benchmarks (Manifest, Microsoft MSD, InfoSpot, CheckIt). All of the above worked fine.

    After installing the emulator, Adrian Cable (Adrian Cable ) offers to download an HDD image (40 MB) with a set of software for 8086.

    Screenshots










    True, the author cheated a little by transferring part of the code to the BIOS, but such a creative “circumvention of the rules” of the competition yes encouraged by the IOCCC.

    Another outstanding program among the 15 winners of the competition is the work of Christopher Mills, who won the IOCCC competition back in 1993, that is, 20 years ago. After compilation and launch, the program creates a web server on the port localhost:8224. You can go there with your browser and see a 3D clock that dynamically renders and displays the current time.

    The source code of the web server / clock / PNG encoder / tracer looks like this.



    Well, the absolute winner of the competition was another work by Adrian Cable - a character recognition program in BMP-images. With a size of 4096 bytes, it seems to be the smallest OCR program in the world.

    Also popular now: