• Fredrik Wikstrom (August 2009)

03.09.2009 21:31, autor artykułu: Sebastian Rosa
odsłon: 5428, powiększ obrazki, wersja do wydruku,

Thank you that you agreed to have this interview. In first words, could you please introduce yourself, tell us what you do in our society.

My name is Fredrik Wikström. I'm 24 years old and currently I'm studying physics at the university in Helsinki here in Finland.

The first time I came into contact with an Amiga was when my father and older brother went on a trip to England and brought back an A500. I think this was some time in the early 90s (I'm not so good at remembering years). We later got a 512 kB memory expansion for it and a 1085S monitor. My brother also later got himself a PC (75 MHz Pentium CPU) which meant that I had the A500 pretty much to myself later on. He is now a Mac user BTW and runs his own IT company.

Before the A500 we had something called a SpectraVideo which I didn't use so much (not as much as I would have liked anyway) because the only game that I could start on it on my own was a 2-player tank game. With the A500 you just had to insert the disk and the games would then usually run automatically.

All I see are games. When did you become interested in programming/coding?

My first interest in programming came from wanting to create my own games. Of course back then I didn't have any idea whatsoever of the work involved. I did manage to convince my brother/parents to get me a copy of AMOS. I wrote some pretty simple games/programs using this language, then later I got Blitz Basic 2.1 because AMOS had some limits like there was a limit on how many lines of code a program could have, and also Blitz had gotten some good reviews in the Amiga magazines.

Much later my brother got me a guide for programming Assembler ("Amiga assembler" by Paul Overaa) which I used to learn M68000 assembler programming. This was so I would be able to use the inline assembler feature of Blitz to produce faster code. I also got interested in programming using the OS functions directly, so I managed to get hold of the RKRMs in AmigaGuide format and converted some of the C examples into Blitz code.

What got me to move from Blitz Basic to C was when I wanted my programs to be able to work natively on the new AmigaOS 4.0 that I had just then read about on os.amiga.com. Since by that time my Blitz coding was very C-like (newtypes, pointers, almost no blitz commands used at all) the switch was not very hard for me and I haven't looked back since. To be honest I find C in many ways a much easier and more powerful language than Blitz. It has f.e. a much clearer syntax, you don't need to use Peek and Poke to access some pointers and it doesn't force you to use global variables for everything like Blitz does. Blitz does have some kind of functions/statements that can use local variables but the implementation of this isn't very well thought out in my opinion.

I've also dabbled in C++ a little but this OOP thing seems a little too complex for me and in my experience anything that can be done in C++ can be done in C just as well.

In what circumstances did you find your interest in AmigaOS 4.x?

After Amiga Format was closed down and my A1200 died I was pretty much out of the loop concerning all things Amiga. I did check amiga.com every couple of months on my PC though, which is how I found out about the development of AmigaOS 4, and I did have Amiga Forever installed on my PC so that I could run Amiga games and programs on it. After finding out about amigaworld.net, which had more active forums and more news on OS4 not to mention less PC trolls, I eventually stopped visiting os.amiga.com.

What interested me the most about AmigaOS 4.0 was that it was being (and still is) developed and improved unlike OS3.x on WinUAE which was/is pretty much a dead end.

You are very productive programmer. You created many different and needed software just to mention SRec, AmiSoundED, diskimage.device, ISO-o-matic, Battle for Wesnoth. Some of them are your concepts and are being developed fully by you while others are ports. Are you particullary proud of any of them? In your opinion which of your works were the most needed for Amiga and amigans are happy having them?

Some programs that I'm particularly proud of are diskimage.device, SRec, CDXLPlay and AminetReadme. Out of all the programs I've written the one I've spent the most time working on and improving would have to be diskimage.device.

As for usefulness the one program that I myself use the most would have to be AminetReadme because it makes the job of creating readme files for programs a whole lot easier. From feedback I've received and comments on forums I would say the programs that people use the most would have to be Battle for Wesnoth, AmiSoundED, diskimage.device, ISO-O-Matic, SRec and TD64Patch. I haven't actually used TD64Patch myself but there are many people who do and say it works perfectly for them.

Some of the ideas for programs (f.e. SRec, TD64Patch, ptreplay.library, medplayer.library) I've gotten from reading threads on forums, other programs I've written because I've needed such a program (f.e. diskimage.device, AmiSoundED, AminetReadme) and/or just to fill a niche (f.e. CDXLPlay).

You mentioned something that I am particulary interested. How is it to develop a tool you are not using yourself?

TD64Patch was actually simple enough to write that it didn't require much testing. The only difference between TD64 and NSD64 commands is the command codes used. For the most part I do test my programs that they work correctly and don't crash even if I do not use them personally.

Apart from the occasional paid work I do for my brother, programming for me is mostly a hobby. I probably do more programming than pretty much anything else on computers. For the most part I write programs that are either useful to me or are simply interesting to write for some reason. F.e. writing SRec was interesting for me because prior to that I'd never done any work involving video codecs and the CDXLPlay had the planar to chunky conversion which needed to be written which I ended up writing in PPC assembler.

Stuff like ptreplay.library, datatypes and tunenet plugins are also fun to write because you can get working results quite quickly with these types of programs. It definitely isn't fun when you've spent several hours writing some 1000 lines of code to find out that it doesn't work because there is a bug and you have to spend some more hours debugging for it.

Your recent achievement SRec is progressing quite well. The same goes for diskimage.device. What is the roadmap for these tools? What else do you plan to implement into them?

For SRec I would definitely like to work on improving the audio recording part but this is more or less impossible at the moment. On the uA1-C I have problems because the CMI8738 driver while recording keeps overriding the Mixer volume settings. Because the method I use is to connect audio out directly to mic in it's very important that the mic in volume stays muted. As for the SAM440EP I'm still waiting on the i/o extension board so that I can get an audio in port of some kind. Otherwise it's mostly general optimisations and maybe support for some other output formats (I've considered adding mkv support f.e.). Configurable zoom would probably be nice too but would need some kind of feedback mechanism so that you can tell how zoomed in you are.

As for diskimage.device what I would like to add is mounting of disk images through .cue files and support for CD audio tracks. The latter feature would require adding support for some additional direct SCSI commands like READTOC and READMSF commands to get OS4's CDDA tracks as .aiff files feature working as well as my PlayCDDA program. For PlayCD some additional (now obsolete) SCSI commands would also have to be supported. After this I will probably look into adding support for .ccd files as well which work similar to .cue files but store the information differently.

Do you have some plans for some new innovative tool for AmigaOS 4.x or maybe you are planning to port something what amigans might have waited for a long time?

Not really. For the moment I mostly have planned some small (but hopefully still useful) tools. F.e. I'm considering creating OS4-native replacements for some old 680x0 APIs like cd.device, streplay.library, playsid.library, rtgmaster.library, etc., and some tool(s) to help edit videos created with SRec are also a possibility. I've also considered writing a graphics program similar to DPaint but with more modern interface and features (ReAction GUI, loading graphics with datatypes, truecolour, alpha channel, etc.) but that would probably require more time and motivation than I have at the moment.

Changing the subject, in your opinion what is the future of AmigaOS and AmigaOS like systems? Are we going to be surprised with something? What are your wishes concerning Amiga and AmigaOS?

I don't expect AmigaOS to take over the world or anything or to even reach user figures comparable to even Linux or Mac OS. I do hope that AmigaOS will be able to survive as a niche/hobby OS though. Whether that is realistic or not I don't know (or care for that matter).

Given how many times that Hyperion have already surprised us with new developments (all the OS updates, screendragging, shared objects, compositing, OS4.1 for SAM, OS4.1 for Pegasos 2, ...) I don't think it's unreasonable to expect that this "ambitious project" that they are working on will prove to be a pleasant surprise as well.

As for my wishes for Amiga and AmigaOS. For AmigaOS it would probably be an improved Workbench (preferably a rewrite), USB 2.0 support and improved memory protection. For Amiga in general I think it would be nice if the Amiga Inc. lawsuit would go away even if only so that the trolls would have one less thing to post FUD about.

Fredrik, it was great pleasure to have this interview with you. Thank you for answering on all my questions. I wish you all the best with your projects. Your last three paragraphs looks like a good bottom line to me but maybe you would like to add something at the end?

Thanks for the interview. I would also like to thank everyone who has written feedback and/or bug reports on any of my programs. It's always nice to know that people are actually using them and are finding them useful.

    
dodaj komentarz
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem