2003 News

WiNGs gets time and date functionality!

Upon bootup WiNGs is now capable of reading the time from an RTC in the CMD SmartMouse, and using it to set the system clock. Reading the RTC from a CMD HD, and an IDE64 should be coming soon.

The system time now adds a time and date stamp to every file that is created. And ls -l displays that stamp when listing files. This functionality can be used by any application for searching for files, or filtering files or ordering file listings etc.

Merry Christmas.

Fileman upgraded to version 1.3!

Under the hood: No longer uses XML as the base structure. It was not necessary to use XML in the first place and this only resulted in some overhead that makes everything slower and actually more complicated to program. Now it uses WiNGs' special "circular, doubly-linked list" routines and a custom structure. WiNGs makes creating and using linked lists super easy.

New Features: Can now automatically mount and use .d64 and .d81 disk images. simply pretend that a .d64 file is a directory that you can navigate into. Navigate to it with the fileman, and press return to go into like any other directory. The image will be automatically "mounted" and you can then interact with its contents DIRECTLY. You can load files directly out of the image without the need to extract them or write them to a floppy. You can in fact do anything you want with the contents of the image (copy, move, delete files. Create subdirectories). This is very similar to what Maurice Randall is planning on adding to the CMD HD DOS. However with WiNGs, We already have that functionality. Also, with WiNGs you don't need a CMD HD to have that functionality. You can mount any disk image to anywhere in the wings filesystem, even if your primary drive is an IDE64, or a Ramlink, or a 1581.

The Version 1.0 Movie Player and Conversion/Creation tools are now available for download! With some testing done by the hardy folk who hang out in #wgs on EFNet.

This small page of downloadables also includes 4 Sample Movies. I'll try to get the XMen 2 Movie trailer, and the stick fighter movies uploaded soon. It would be nice to have a whole library of movies for Commodore Users. We've got 4 available so far, with 2 more to upload. We're well on the way to having the RIAA tear down my site.

Mr-Museum has used the video tools to create 2 movies. Clearly demonstrating that these tools are usable, and give everyone the ability to convert and create their own movies. It was always a concern of mine with movie players in the past that there was no easy way to create new movies, and More Movies! Media players are only useful if there are media files to play. With a growing library of movies to download, I hope the WiNGs Movie Player will really catch on.

This shot shows new Mailwatch functionality just recently added. Allows you to start and stop Mailwatch from running on specific accounts. With an indicator in the inbox selector, and contextual menu bar.

Mail v2.x now has support for multiple accounts from one server.

Added "trim" and "add". Inspired by the Mac's Trim and Add finder scripts. These let you trim a string off the beginning or ending of all files in a directory, and add a string to the beginning or end of all files in a directory. These can be used together as very useful mass file renaming tools.

Eg. I unzipped the jpegs that would be converted into the enterprise.mov, and all the filenames were longer than 16 characters. This cut off the ends, which made all the files ".j" instead of ".jpg". The movie converter requires that the files all end in ".jpg". Instead of manually renaming 478 jpeg images... I used the following two simple commands:

trim -a enter
add -z pg

Took the "enter" off "enterprise" on every file. And added "pg" to make every file end with ".jpg"

Put up a new page, Modern Commodore. It's only a title and some pics right now. But it may very well be expanded somewhat to include quotes and links etc. Like a bulletin board.

Mail's view capabilities are getting better. I've cleaned up a single, massive, monolithic, unmanageable routine into many small and properly named routines. The first result is that more email header combinations are supported, with fewer bugs. But for me, it makes things much cleaner in the code. I love clean code!

December 3rd! Wow, almost 1 year since I first began working on Mail v2.0.

Jolz and I spent many hours this past weekend trying to hunt for a bug in the GUI. And with great joy I can say that he found it and killed it! Some time ago, a new WiNGs library was introduced called wgsutil.so. This library had some functions in it that used to be part of winlib.so. The functions were written with the idea in mind that they would always be in the same 64k bank of RAM. As one library always is. However, once in two libraries, it became possible that the functions could end up in separate banks. This would only occur depending on what other programs were already running, or in what order things were loaded up in. It was a frustrating and nasty bug, but it sure feels great now that it's gone!

Jolz has also switched the files from "Make" to "Jam." These systems are both used to control the construction of a multi-filed, multi-programmed, project. Make used to be responsible for compiling all the WiNGs components with all the right attributes, and then putting the files all together into the correct directory structure, and finally zipping it all up for a single downloadable distribution. But "Make" had it's shortcomings and was not adequate for needs that WiNGs has evolved over the course of it's development. But JAM! does meet those needs. So these past few days the switch over was made. For developers, this means creating multi-file, .app packaged programs becomes a lot easier.

This upcoming Christmas holiday season is going to be an active one! Keep watching for more great things.

Yay for con_getkey()! it returns a number for every key combination, so it's super easy to use all kinds of keys. Like C= + some other key. or the <- back arrow (Escape in WiNGs). I have done a few things with Mail recently, optimized the address book name selector list. So the scrolling is faster, and has less lag. Also, if you call up the address book selector, you can press escape, (<- back arrow) and the list disappears without disrupting the address that was previously in the field.

I've finally left my SX and it's headache creating instabilities behind. I just bought a new 56k modem (so I could leave the 33.6k in the SX case) and I un-hardwired the DigiMax from the SX, and gave it a standard user-port edge connector so I can move it easily from one Commodore Computer to the next. The IDE64 and T232 are extremely easy to remove from the SX, so I have moved both of them to the 128. It feels great to be using a system that is really stable! With my SX64, it was cool that it was so compact, but if you bumped the table, the whole computer would crash. Then I'd end up corrupting the IDE64 during one of the crashes... and needless to say it was SUCH a headache. And I feel I can be much more productive now that I've got myself fixed back up. :)

The Movie Player and the two creation utilities are not yet available for download, as I am working on making them better. When I demoed the Movie Player at the Expo the audio and video was not synchronized properly. As of this weekend, it is! I have also added in a button to allow you play both the video and the audio in reverse. And I am currently working on a fast-forward and rewind button. These options have given me reason to rethink the structure of the player. So I'm currently working on changing a few things internally that should make it much cleaner and much more capable of handling advanced features. Please be patient. I think everyone appreciates a good product.

Built a GUI front end for the Threaded Wave Player. The player has a simple resizable window which offers a play/pause button, and a display which lists the filename of the currently playing song. As well, the display shows a countdown in minutes and seconds of play time remaining.

I believe I've uncovered a bug in either the thread code or the mutex code, but Jolz' new crash report system should be very useful. ... WOW! This is amazing! WHILE I Was writing this news post, Jolz sent me an email saying he'd looked over one of my wings.report crash files. And it turns out, I am misusing Mutex's. A mutex can should only be gotten and released by the same thread. So one thread gets and another thread tries to get. And then the first thread releases, and then the second thread continues... then the second thread releases. I was getting in one thread if a flag was set. And then at the press of a button in another thread I was setting the flag low and releasing. This is great news! I will convert the threaded wav player to use messages instead, and it should have no problems.

Thanks Jolz!!

Demoed to the North American World of Commodore Users at the SWRAP Expo 2003, is the Brand New Movie Player v1.0 for WiNGs!

Another first in the history of Commodore 64 Computing, The WiNGs Movie Player is capable of playing back movie files with digital audio, and variable frame rates, upto ~25 fps full screen. New Movie files can be created with the combination of "video converter" for WiNGs, "video composer" for WiNGs, and a format exported by QuickTime™ Pro for Mac or Windows. The export is a one-time preprocessing, after which the C64 is responsible for doing the vast majority of the frame decoding, Rendering, Compressing and packing. The end result is a complete movie file which can be distributed and traded amongst commodore users. These movies can be downloaded and played without the assistance of an intermediate PC.

Let this start a new era of Commodore Independence.

My SWRAP Expo 2003 Speech Notes.
These are not the exact words I said. But they are the notes I had written down for myself, as my general guidelines, and presentation outline.


Mail, Filemanager, Addressbook.
Mail has received a number of new features.

1) Multiple accounts improved.

Support for multiple accounts improved. Each account has its own username and return address. Multiple SMTP servers improved. If it fails on one, it automatically switches to the next, and the next, until the message is sent. It warns yo uonly if it fails to send with all the SMTP servers setup.

2) Advanced features added.

Lots of user requested features have been added. You can cap the size of emails to be downloaded. You can freely adjust the start position of what it thinks are new messages. Delete messages from server after downloading them. Check total number of messages on server, and how many are new, without downloading any of them first.

3) MailWatch

The feature I personally wanted most, I'm calling mailwatch. Start mailwatch on any account, or more than one at a time, and it asks how many minutes between mail checks. For as long as mail is running, it will check for new mail in the background without you even paying attention to what's going on. If yo uhave new mail, it will play whatever sound file you have setup as "NEW MAIL".

4) Custom sounds interface.

Mail has had the ability to play sounds for various things that happen int he program, but it was only possible to setup these sounds by editing the configuration file manually. And they were turned off by default so as not to be annoying. Now we have a beautiful and simple interface for assigning sound files to the various events in the program.

5) Filemanager improvements

Filemanager has been improved in a number of user requested ways. Deleting files now asks for confirmation. The strange virtual directories that used to show up in the root directory are no longer there. Filemanager recognizes filetypes by extension making it easier to understand what some system files are for. Unzipping is possible from the filemanager. Press return on a Zip file and it asks if you want to unzip it.

6) Take addresses from Mail inbox.

The address book let you store the names and addresses and email contact info of all your friends and colleagues. Then when you are composing a message you get an easy drop down menu with all the names in there. Select one and boom, their email address is filled into the field. But adding names to the address book was a pain, so it wasn't very useful. So I've added, "Take Address." From the inbox, when the cursor is beside any email, simply press "t" to take address, and it asks if you want to add this to the address book. Then you type a lastname, then a firstname... and the address book now has them stored.

Wrap up Mail and Fileman, and Addressbook.

So, That's what is new with mail and the filemanager and the addressbook. I think every improvement makes it a more and more useful program. And one less reason to need anything but your commodore 64.

There is something else I'd like to show you today.

I was sitting around two months ago, and I was contemplating harddrive capacities. So, I'd lke to put harddrive capacities in perspective.

A 1 gigabyte IDE harddrive could hold 69 thousand 900 GeoWrite letters.
Could hold 11 thousand 600 full geopaint documents.

If I write a letter every single day, it's going to take me 190 years to fill up that drive. Doesn't seem like I can even USE a 1 gigabyte IDE harddrive.

But the IDE64 can take an 8 Gigabyte harddrive.

That is just over half a million GeoWrite Letters, or
92 Thousand, 800 Full GeoPaint Documents.

Well, actually, there is something that can make use of our harddrives. And I'm going to show you what that is now.

- Start Stick Fighter 3 Movie.

Maybe we want some music to accompany this.

- Start a SID Playing.

But that's not all. Now, remember this is a work in progress.

- Start Loading Xmen2 with Audio and Loading Preview. Let it play through

We have 3 new programs for WiNGs today.
- Video Converter
- Video Composer
- Movie Player

The video converter running on the C64 takes a sequence of jpeg still images, (these can be exported by any Mac or PC running QuickTime™ Pro) And converts the still images into a single "Raw Video Data" file. This file is essentially a series of RLE compressed C64 highres bitmaps, packed one after the next into a single file.

Next there is the movie composer. You use it to bring together a Raw Video Data file, and wav or sid audio file, it combines them together and puts a header ont he file, which specifies the dimensions of the frames, and the frame rate and framecount. And essentially makes a complete C64 Playable Movie File.

And the movie player plays them back.

These Movie files, once created, can be shared or distributed. And any Commodore User with a SuperCPU and WiNGs can get them and play them any time without the need for any other computer. And we can simply and easily convert ANY movie file that is out there onthe internet, with only a minimal, one-time, preprocessing of the file, with free and simple to use software like QuickTime™.

We've had video playback on the C64 in the past, but it was always weird linux tools that created the movie. And then it would usually be a standalone executable with only SID sounds at best. OR, it would take 10 minutes to load a file that would playback for 2 minutes. That's not a very good ratio.

This movie player uses advanced multi-threaded pre-buffering. Which is made possible by the power of WiNGs. One thread is reading and decompressing the frames into memory... This is called buffering, and the ther thread is in a time-delayed loop displaying the frames back from that buffer.

A movie without audio can start almost instantly and playback for 10,15,20 minutes! THAT is a ratio to rally around.

Still not convinced that this is AMAZING?... Check this out.

- Start playing both Xmen2 and Fight3 at the same time.

- Start dragging the windows around, resizing them, scrolling them, Laying them over top of eachother, Show that this is AMAZING.

THANK YOU VERY MUCH! My Demo is Complete.
Rumour has it Jim Butterfield will be at the upcoming SWRAP Commodore Expo. I've been hard at work putting together what I want to show off. Integration of the apps continues. Mail and addressbook now work better. And some hints...

We've always been able to... Just not so many in a row. And never has it been so easy to get more.

See you at the expo.

Regarding the post made on the 20th of September. As of lastnight when I checked, #wgs was accessible again on EFNET, with a CBM Bot... and Jbev hanging around. :) So that's good.

Fileman Rocks! Added some cool new stuff to make it much better. It now recognizes filetypes by file extension... Still contemplating how to make the extensions read out of a configurable XML file, but for now it recognizes 20 or 25 common WiNGs file types. Listening to Sid tunes now works better, unzipping from the fileman works now. Just press return on any ZIP archive filetype, and a dialog box asks if you want to unzip the archive. A little easier than GeoZip if you ask me. :-P Opening text files with ned from the fileman had a bug that has been fixed. And the fileman now recognizes .app folders. Properly listing their filetype as an "application" instead of a directory. And renaming a .app folder will only allow you to specify 12 characters, to which it will always append ".app", so Application Folders cannot be broken by casual ignorance. :) I've also hidden the /dev, /sys, and /boot directories from the root directory for very much the same reason.

And lastly for this news posting. Mail v2 has finally received a feature that I personally have wanted in it for a long time. It's called MailWatch. It was originally going to be a standalone program that would be spawned by Mail if you gave it the right command line option. How lame would that have been? Now, I've kept the same name... MailWatch... But it is a thread, or several threads, since you can have a MailWatch going per account, that is started from the advanced options of an account. Start mail, select an account press 'e' to edit settings, press 'm' for mailwatch, it says, how many minutes delay between new mail checks? You press the desired number of minutes... lets say I type 2, then a MailWatch thread is started which checks new mail every 2 minutes until the Mail Application is quit. When a new message comes in, it plays whatever .wav file you have configured as NEWMAIL. If new mail comes in and you haven't read it, it won't keep warning you every 2 minutes... but if new-new mail comes in since the last warning, it WILL warn you again. The concept is well thought out, very useful, very practical. I hope you will use it!

It appears that someone or some group has taken possession of the #wgs channel on EFNET. They have set it up as Invite Only. This was not our doing... We would never make #wgs invite only. I guess we'll have to find a new home. Perhaps #wings ??

Merry Mabon Everyone. :)

Learned something important about HTTP. Sometimes a single IP address can be a virtual host for many websites. So what happens is that several domain names are all assigned to the same IP. When your browser or other HTTP program opens a connection to that IP, it sends in the domain name as a header variable called "Host". Upon thinking about it... This is brilliant! One Server, with one IP address just reads the Host variable passed in and serves out from a different webroot for that request. What an amazing solution to the problem of not enough IP addresses.

Expect soon a post on c64.sk from WiNGs.

Regardless of the massively uncomfortable poison ivy rash all over my face, neck and upper body, I've done a little work on the address book utility. It now has a much easier interface, and has several checks and limiters to prevent a user from modifying the data in any way that might break the addressbook as a whole.

Looking forward to the expo. I hope to see Vanessa and David Wood this year. It's been a good year for WiNGs development.

The NewsPortal News posting utility has taken a back burner for a short time while I get Mail and the filemanager cleaned up and ready for the Expo. Mail and fileman now have a simple line editor which limits what and how much you can type into dialog boxes. This has made the whole program more robust, ensuring that the user can't type in more characters than the program can take. I used to try to remember to cut off and filter text that had been input... but it was never clean. Now, you get 60 characters to type in your email subject line. If you can't do it in under 60 bytes... Too bad. I think this is just much better. before if you typed in too much, it would break through the side of the dialog box while you were typing it, and then it would wrap on the screen etc. It is much easier to handle now in code, as everytime I get a line, it requires that I specify the maximum number of characters the user can put in.

Expo gets closer daily. And I continue to work on some neat stuff I can't wait to show off!

Just quickly wrote a little utility for posting news to the C64 news portal at www.c64.sk. This site is updated by me, and I like the fact that I can update it with my c64! I didn't like the fact that the Open News Portal only had a web interface and therefore is generally only updatable with a computer that has a forms capable webbrowser. Unfortunatly we still don't have one of those on the 64. But at least "newsportal" will let users of WiNGs make posts without the need for a browser... Or a PC.
Long live independence.

The Chicago Commodore Expo is approaching quickly. It will arrive in just over a month. And there will definitly be a wings demonstration. Instead of just WiNGs this demo, I want to change how people perceive the demo. The Demo is not about WiNGs anymore. I'm not trying to push WiNGs on anyone. WiNGs is no longer just an interesting piece of software on its own. Now, it is the gateway to great new capabilities for the C64. With WiNGs we are presented with opportunities to exploit our hardware in ways that no other software has previously been capable of.

It was amazing to see WiNGs run 2 or 3 consoles and a GUI with mouse control at the same time. But I've demoed that 2 or 3 times already. And then I started to shift my attention towards what else WiNGs could do. Like playing back full length digital music files. And displaying many huge JPEGs on the screen, where the system would handle clipping and scrolling and moving them around.

Then I showed Mail V2, and the console file manager. Excellent tools that were relatively simple to write, but are enormously useful. Both of whose power and usefulness centres around the multi-tasking and other integrated features of WiNGs running beneath them.

Now that we are moving beyond the childhood years of core WiNGs development, the work Jolz has put into it can be used to progress the C64 into new arenas. This Expo is going to be fantastic! Another year for the history books, and for the people of the outside world to look in and see how alive and ambitious we are.

The Commodore64 Rules!

QuickSend64 has received the penultimate feature. The configurator lets you put in as many SMTP servers as you may have or ever use. Then when you go to send an email it starts at the first server, and tries to send through it. If it encounters any errors, no relaying being the most common error, it quietly moves on to the next server, until either the email is sent, or there are no more servers to try. This is Very useful for anyone, like me, who has more than one ISP to dial up to. I have an ISP that is free after mid-night, and an alternative ISP that I dial to during the day. Both ISP's have different SMTP servers, but with the newest QuickSend64 it will successfully send my emails regardless of which ISP I am dialed up to.

Began implementing the colour options in Mail. The console seems to have some color setting anomalies which I have no control over. So far, it looks good. And what ever colors you use on the console are preserved after you exit Mail.

Added some colour to fileman, and also set it up to preserve the colours of whatever calls it, be it the console shell, or another program like Mail. The fileman now also hides the /dev /sys and /boot virtual directories. Many people were confused when they tried to copy some of these "Files" or copy something into one of these "directories" and naturally encountered an error. These directories and their files are part of the filesystem, and for good reason, but fileman and it's functionality can't make use of them, so now, they don't even appear in the list.

Jolz has rebuilt ja, file65, and jl65, the main 3 developement tools for writing WiNGs programs and assembling them all on your C64. I was giving them a test workout last night. Yay, I made a fancy hello world in 16bit 65816 Assembly for WiNGs!

I've updated QSend to take from name and from address on the command line. And I've updated Mail to allow you to set From Name and From Address unique per mail account. Mail passes these to QSend when you send something from within Mail. This allows for each Mail account to have it's own return profile. A much needed feature. Fixed some minor bugs in the skip size code.

Implemented Skip Size in Mail v2.1. And it works a charm! It's very nice to be able to set that you don't want to download files over some specified number of kilobytes.

Delete messages has been implemented, but not tested. Messages skipped are not deleted.

Been working on mail the past week. Adding in advanced options. There have always been a number of "features" that were part of mail v2 from the start, but they required that you use the console to go into the app folder, and find the correct XML settings file, and change some values. That sort of thing is great if you are an explorer or a hacker, but now I've made a panel that will make many of them much easier to change, and actually use them!

When you start Mail v2.1 for the first time, and you add an email account, you are only prompted for the most basic information. The display name of the server, for your personally reference, such as "Work account", and then the Incoming (pop3) address, your username and password. This is all mail Needs to be able to access the account. After the account has been added, you can now select Edit from the main screen. This presents you with a split screen. The top half are the basic options, the 4 items you put in when you added the account, and the bottom half has Advanced options. The advanced options let you set message sizes above which should not be downloaded. Delete messages from the server after downloading them. And it also lets view how many messages are currently on the server, and adjust what number mail thinks is the last one it downloaded. For example if there are 30 messages on the server, and you have it set to leave them on the server after download, then when you are finished downloading, mail will set its next message to download to 31. It will only "see" new mail, when the server actually has 31 or more messages. At which point it would download those, and set it's number up in preparation for more new messages. Now the advanced options allow you to set that number back, or forward as you please.

So imagine you walk away from your commodore for a month, and come back and want to get your mail. You can quickly check how many are on the server, and you can see how many mail is about to download if you tell it to get new Mail. If it is going to download Way More than you have the patience to wait for and all you really want is the latest 10 or 20, you can set that number ahead... and mail will think the messages in the middle have already been fetched. Or if you accidentally delete a message or two you didn't want to, if you're not deleting messages from the server after download, then they are still there! You can set the number back some, and redownload messages you already have.

More to come later!

The Autumn Commodore SWRAP expo has recently been announced. It has been pushed back by about one month, from the usual September weekend, to October. While I am not entirely sure of the reason for this slight change, I can assure you that there will be a WiNGs presence at this highly anticipated upcomming event. Stay tuned.

Just as a note, my WiNGs webserver which I had intended to keep online as much as was humanly possible, has been down now for a couple of weeks. This is unfortunatly due to a faulty telephone line that I recently had installed in my house. The line has since been repaired and I will endeavour to keep the webserver up as much as possible, as I had previously intended.

Happy Birthday! wings.webhop.org has been up for 1 year today!

Since it's inception on June 10th, 2002, wings.webhop.org has grown to become a center for many useful WiNGs related resources. It now has links to all the source code for the WiNGs project, as well as technical documentation, programming tutorials, downloads, and help documents. New pages have been added such as the very popular screenshots page. wings.webhop.org links to the the log files for our WiNGs development related conversations in IRC, on EfNet. And this News Page is also a key page in keeping the Commodore Community uptodate with the development progress of WiNGs.

wings.webhop.org now has a link to a Live C64 webserver hosted by the WiNGs operating system running JWeb. I hope you'll catch it online, and sign the guestbook. Let us know that you visit this site.

Over this past year, the wings.webhop.org has joined with the ProtoVision website to help forge the union of CLiPs and JOS further. So, Happy Birthday Wings.Webhop.Org!!

New C64 Webserver is online!! I'll try to keep it online as much as possible. However, it is running off a 33.6 modem. The phone line it's connected to is a dedicated C64 internet line, so that's not a problem. If it disconnects when I'm not around then it may be down for a short while. If I take it down for a while purposely I'll remove the link from the main page of wings.webhop.org. Otherwise you can get to it via the link on the main page of wings.webhop.org. The SX64 that this webserver is running off of is also my WiNGs development machine... So if I'm working on something that crashes me, that'll also bring the server down. Please try it out. Sign the guest book, leave your comments about WiNGs... Maybe we should make the C64 the host of an official WiNGs message board.

Jolz has been working on the Table Layout widget, and it's almost finished. It allows you to write an xml file with table code very similar to HTML table code. A WiNGs application can read in that xml file and layout the widgets on the appliction window accordingly. The application (internally) accesses the widgets by looking them up by the name given to them in the XML file. This should make it fast and easy to design application widget layouts. And what's even better? The widget layout of the application is figured out at Runtime, instead of at Compiletime (or assembletime). So you can change or customize the layout of the widgets in the application without needing to actually change the application's start file (binary executable).

Added a copy of the i65 files. These are 65816 assembly code includes that are used by WiNGs. If you are interested in programming for WiNGs in Assembly language, you can peruse these to get a feel for the depth of functionality that makes up the environment WiNGs provides. And of course for complete sources, you can look further into the online CVS browser. There is also a link to this in the programming WiNGs Section.

I've added a link to the SourceForge web based CVS browser. It lets you see all of the developers comments, the dates of all the CVS submissions, and view all of the most up-to-date source code, in your browser, with excellent syntax highlighting.

See the Downloads Page (note: This downloads page has been removed. All downloads are now direct from the main page. Here) for information on updating your Mail v2.0 application for the bug fix. Details about this bug can be found in a news post made earlier today as well as on the downloads page.

I have posted the current C Header files to the WiNGs programming section. These will likely be added to more often than they will be updated on the site. Keeping the website up to date with the current software builds is a full time job.

The C Headers here are to give you an idea of what sort of functionality is available right at your finger tips before you even type one line of code.

For example, if you want to compare two strings of text case insensitively, it is not necessary for you to painstakingly write out your own routine to do this. You can simply call strcasecmp(); The header files being posted on the site just let you know that such a function exists. The header files tell you how many and of what types of arguments to pass in, and also what type of variable is returned by the function.

The Expo in Louisville USA 2003 was an excellent success. I brought with me 20 pre-configured boot disks, and brought 10 extras that were ready to be formatted setup and labelled. In all, I gave out 26 WiNGs Bootable 1581 Disks! That is not bad at all. The interest in these disks was Radiant. One man said the reason he came to the show was because he knew there was going to be a demonstration of WiNGs.

That is excellent news.

There is a new Document on the How To Use WiNGs section. It is the updated and complete document on how to dial up to the internet and connect with PPP using the console commands.

There is a bug in Mail v2 that is on the boot disks handed out. It happens when you try to continue a message saved in the drafts box, if that message has at least one cc, or one bcc or one attachment, but NOT all three. This bug also shows up when you try to re-send a message from the sent box. It is possible that this bug could lead to the corruption of your inbox's index file. There is an updated version of mail with the bug fixed that should be on this site with update instructions by the end of the day.

NEW C programming tutorial! Part 2. Is up on the main wings website, under the Programming section. Check it out. It took a long time to get it up and edited. I lost my first attempt in a harddrive crash. If you read it and are interested in programming for wings and are relatively new to C, I'm sure you will find it useful.

The LUCKY Spring EXPO 2003 is coming in less than 2 weeks. Don't miss it.

The Spring Commodore EXPO is quickly approaching, and I'm sure everyone is excited to be going. I'll be giving a Demo of the latest happenings with WiNGs on Sunday morning at 9am. Right after the Panel Discussion about the future of Commodore Computing.

I'd like to think that WiNGs is the future of Commodore Computing. Applications that run on Commodores with SuperCPU's as well as the new Commodore One, and presumably all iterations of more powerful Commodore 64 based hardware in the future.

I have a few things to show off, and have been working to get Mail V2 ready for the show. The GUI is in a slight state of disarray after having undergone enormous changes in layout. But there is lots to discuss at the Expo ranging from end user functionality to technical details about programming WiNGs.

I will have Boot disks in 1581 format available to hand out, which will contain a pre-setup configuration of WiNGs and most of it's applications.

Requirements for using the boot disk and it's contents: A Commodore 64 or 128 Computer. Any SuperCPU with SuperRamCard and at least 1 megabyte of SuperRAM. And either a 1581 or FD2000 disk drive. Optional but extremely beneficial additional hardware, a mass storage device, such as the CMD HD, CMD RamLink or the IDE64 harddrive.

See you at the show.

New Screenshots of a few new things!

Check out the Excellent new screenshot of the GUI File Manager Tree/Column mode. With selected directories open, the column titles can now be clicked to re-order the column contents.

Also, a brand new File Manager Utility for the Console. Two screenshots of that. Has two panels similar to the IDE64's built in filemanager. Can copy, rename, delete, and move selected files and whole directories from one panel to the other. Plus a few more handy features to help you use WiNGs from the Console.

And finally some screenshots of the New Version of Mail. Version 2.0. The title screen/account selector, the inbox list screen with a popup message box. And the compose new messsage screen showing the popup address selector. Mail v2 dynamically links to the new global address book.

Widgets that get layed out on GUI Window, are now positioned by placing them inside nested "Container" widgets. There are two types of containers. Cards and Containers. Two or more cards stack up on top of eachother like playing cards in a deck. While containers place widgets in a sequence either from left to right, or from top to bottom. You can specify the orientation of a container. By nesting these containers and cards together, you can create any desired layout. The advantage is that pixel dimensions are no longer being hardcoded into applications. So resizing a window better handles where the elements will end up. And higher resolution screens like the commodore one has to offer are not crippled by code designed for a Vic II chip.

Stay tuned for more information.

The GUI has undergone a lot of structural changes. These are now available in the latest builds. Many of the gui programs have yet to be converted to the new structure. But fortunately the conversion is painless. And it makes future GUI programs much more dynamic.

When building a GUI Application.

New Programming articles! Check them out, learn how to program. Support what you know is good. :) The new articles cover,
New Screen Shots page is finally up. I've taken several recent GUI screenshots, and I've asked Jolz about how to take Console screenshots. The new shots show some of the new widget work Jolz has been doing (the tree/hierarchy Column View), as well as a couple of utilities I've done (search and wordservices). And a handful of other cool Gui Shots. Check them out!

I know not much news has been posted here. Not since January. About 2 months. But the work continues, and WiNGs continues to grow. Jolze is working on the GUI, and I am working on Mail V2. I think it's better to do programming work for the C64 and for WiNGs than to just sit around and socialize. That is the best explaination for my recent IRC absense.

Special thanks to Colin for always being around to help find bugs.

You may have also noticed that there is now a ProtoVision Bar on my Site. That is because WiNGs and ProtoVision are one in goal, and my site is becoming an extension of the ProtoVision site. I will still be the webmaster for the WiNGs section of the site, but we're working together to link-integrate and look and feel integrate the two sites. This is a good thing for ProtoVision And for WiNGs. Together we can generate more visitors and more interest, and better serve the Commodore Community.

Keep the Faith. C=

The neverending expansion of C knowledge. It's much easier to just strdup(buf) to get an allocated for copy of what the buf had. This way you never have to worry about what getline is actually Doing with buf and size.

Sorry for being quiet on this page. There has been LOADS of activity. YOu can see all this in the logs. Joz is working on the GUI. and making excellent progress. We almost have a working Columned Tree Widget. Which will be the basis for many many programs to come, including it's first usage. The Most anticipated GUI filemanager for WiNGs.

Jolz has recently implemented FULL XML support. And all programs are being converted to use XML for config files. The gui will also use XML to determine what files are opened by what programs.