Tuesday, January 29, 2008

Real Programmers don't eat Quiche

Well, it's January and you know what that means? Time to compile a new fortran Snoopy calendar!! I'm going to walk you through the process, but you're going to need a few things first:

1) read the article at the following link (don't worry, it's quite amusing)

Real Programmers Don't Use Pascal

2) download the IBM 1130 emulator here

3) download the snoopy calendar card deck here. Save this file to the IBM1130Software sub-directory created by the emulator under the name "snoopy.job".

4) *OPTIONAL* get yourself a dot matrix printer and do this old skool!


All set? Right, lets do this!

First you need to fire up the emulator. You'll see a GUI (which we won't really be using but it looks pretty), and a console window with a sim> prompt. At the prompt, enter the following commands:

attach dsk dms.dsk [ENTER]
att prt snoopy.txt [ENTER]
reset [ENTER]
boot dsk [ENTER]

This will bootstrap the system and create a text file called "snoopy.txt". This will be your calendar! Now type

attach cr snoopy.job [ENTER]
go [ENTER]

It'll run for a second, and afterwards, the Printer icon will change. Double click on it to see the output of your job.


If you scroll down, you should see a 1969 snoopy calendar! Now, as cool as it is to have a calendar from December 1969, you're probably thinking this would be a lot better if the calendar was for this year. Well don't fret, one simple change to the code you'll have an authentic Fortran Snoopy calendar that is current, usable, and will be the envy of all your friends! Open up SNOOPY.JOB in your favorite text editor and find the line that reads

12 1969 12 1969 1

(in my editor, it's line 319)

That line is a date range. What you are really saying to your trusty IBM1130 is "hey pal, print me a calendar containing all the months from at December 1969 to December 1969. So, for example, you want a calendar from January 2008 to March 2008, you would change that line to read:

1 2008 3 2008 1

With that, you should be able to print our own calendars. Enjoy!

Monday, January 7, 2008

More on the x37 Abend (read this one first!)

Well it turns out that there is, in some cases, a much simpler method of dealing with the x37 abend. As I mentioned before, any x37 means you've run out of space. So dig this, when you save members of a data set, z/OS saves the old copies. After a while, those copies can cause you to run out of space. When you browse the dataset, enter "/" at the command field,


then choose option 12 "Compress Dataset".



This will delete the old copies and hopefully free up some space. This will not work in cases where you've run out of directory space. In other words, if compressing the data set doesn't work, then go ahead and fix it the hard way as described in the previous Abend x37 post.