I write software mostly for MorphOS and AmigaOS, (classic AmigaOS 3.x). I've also done a few small applications for Windows. My programming language of choice is C, I also have written code in C++, Lua, Amiga E and PHP, as well as M68k and PowePC assembler.
- DigiBooster 3, music tracker for MorphOS and AmigaOS
- Prometheus PCI, my most advanced hardware project
- Reggae, media processing framework for MorphOS
- MorphOS Programmer's Handbook, an e-book about MorphOS programming.
- Small hardware projects for classic Amigas.
Small applications and tools
- AppendDate, a versatile shell tool for adding dates to filenames.
- AudioToClip, shell tool for placing audio files in the system clipboard.
- DateCalc, date calculator using proleptic gregorian calendar.
- DigiRoller, a standalone DigiBooster module player and renderer.
- Flacochlorine, FLAC stream validator and analyzer.
- GammaMeter, monitor gamma coefficient measurement tool.
- Lua Explorador, source level debugger for Lua.
- MultiPlay, commandline gapless audio player.
- Sudominator, sudoku solver and hinter.
- U1Synth, simple audio synthesizer.
- Zgrzytor, generator of pseudonoise audio waves using LFSR register.
- Zormanita, audio format converter and processor.
- Amiga Icon File Format, detailed description of Amiga .info files internals. The article concentrates on decoding icon images and converting them to RGB. Standard Amiga icon color palettes are also specified.
- String To Floating Point Number Conversion, shows how to convert a textual representation of a floating point number (in plain or scientific notation) into a number binary conforming to IEEE754. The code is almost a drop-in replacement for standard atof() and strtod() functions. It does not use the standard C library however and is also much shorter.
- Notes on AES-256 Cipher Implementation on PowerPC Processors, my attempt to code an optimized implementation of this well known cryptographic standard for PPC processors. I show the optimization process step by step, starting from naive bytewise implementation, through optimization in C, using assembler and finally AltiVec. Currently this article is work in progress.
Peer-reviewed scientific publications
I've written them until given up my academic career. Most of them is related to digital signal processing, especially using AltiVec SIMD unit of PowerPC processors.
- Multistandard codec of speech signals based on modified TMS320C5x DSK, Griszin J., Konopko K., Kraszewski G., Zankiewicz A. (1998). Published when I was an undergraduated student, on the Second European DSP Education and Research Conference in Paris (23, 24 Sep 1998). Closely related to my M. Sc. thesis.
- Realtime speech GSM codec on TMS320C50 DSP processor, Kraszewski G. (1999). Published on SECON'99 conference, which took place on Military University of Technology in Warsaw, 16, 17 Nov 1999. Written just after I've defended my M. Sc. thesis. In the paper I've described in details my GSM 6.10 speech compression codec implementation on Texas Instruments TMS320C50 digital signal processor.
- A codec of speech based on the enhanced TMS320C5x DSK module, Konopko K., Kraszewski G. (1999). This paper describes an interface, developed by me in cooperation with K. Konopko. The interface connected a DSK module with TMS320C50 processor with a PC computer. It consisted of DSK interface board designed by me and an ISA card developed by Mr. Konopko. He also wrote commnication software running on Windows. We published the paper on 99' Signal Processing Workshop in Poznań (8 Oct 1999).
- PCI bus bridge for MC 680x0 based computer system using PLD technology, Kraszewski G. (2003). The paper describes the "Prometheus" PCI bridgeboard for Amiga 3000/4000 computers. It is a bridge interconnecting asynchronous Amiga Zorro III extension bus with standard PCI bus. It was designed using two MAX7128 PLD chips from Altera. It allowed for using several models of PCI cards in Amiga computers. The paper was presented on XII IEEE-SPIE Symposium on Photonics and Web Engineering, held in Wilga near Warsaw, on 22 to 25 May 2003. Then it has been published in Proceedings of SPIE in 2004.
- Non-uniform kernel sampling in audio signal resampler, Kraszewski G. (2005). This is my first paper on using AltiVec SIMD unit for digital signal processing. I've investigated a possibility to lower the size of the sinc() kernel table for an audio resampler without decreasing resampled audio quality. Published on Signal Processing 2005 Conference organized by IEEE in Poznan, 30 Oct 2005.
- Fast FIR filters for SIMD processors with limited memory bandwidth, Kraszewski G. (2006). The paper demonstrates how reorganization of order of computations in a FIR filter can increase computational efficiency without reducing the number of arithmetic operations. As a FIR filter is usually a memory bound task for a SIMD processor, lowering number of memory accesses per output sample increases the speed of processing. I've published a theory behind it, as well as results of practical experiments. Presented on XI AES Symposium: New Trends in Audio and Video held on Białystok University of Technology (20 to 22 Sep 2006).
- Performance analysis of alternative structures for 16-bit integer FIR filter implemented on AltiVec SIMD processing unit, Kraszewski G. (2006). While the previous paper described floating point FIR filters, this one is a study on fixed point FIR filters implemented with AltiVec. Theoretical analysis of 3 alternative structures of such filters is presented and backed up with results of benchmarks of their implementations. Paper presented on Signal Processing Workshop organized by IEEE in Poznan, 29 Sep 2006.
- Fast implementation of 16-bit FIR filters for AltiVec architecture, Kraszewski G. (2007). Extension of the previous paper with new experimental results. Published in Elektronika journal, issue 4/2007.
Webpages I've developed and manage
- morphos-files.net, the MorphOS software repository. I've programmed the site, I'm also the maintainer. Graphic design is mine too, except of the upper banner graphic, which has been drawn by Przemysław Tkaczyk.
- elektrownia.pb.edu.pl, a monitoring site of a hybrid power plant (wind and solar). I've also written large parts of data acquisition backend.