******************
* Issue Number 7 *
******************
April 2007
Free to Download Magazine for 
Commodore Users


NEWS
 
Lotek64 #20 is out 10:15  

New issue of the German language 
magazine Lotek64 #20 is finished
Content of Lotek64 #20:

Interview with Yogibear / Protovision 
Hobby+Elektronik 2006 report 
Religious gaming 
Fighting game marathon 
20 issues of Lotek64 
Keyrah and Competition Pro 
Beast (synthesizer) 
Handhelds, part 7: GP32 
The Last Ninja family
...and a lot more!

The pdf version is now available at 
www.c64-mags.de. 

-=-=-=-=-

 Winvice 
The Versitile commodore emulator 
receives an 
upgradehttp://www.viceteam.org/

This file lists the most important user-
visible changes for eachofficial release 
of VICE.  See `src/ChangeLog' for a 
more detailedlist of all the changes in 
the code.

* Changes in VICE 1.21
======================
** General
- Added sound recording support.
- Added aiff, iff, mp3 and wav sound 
dump drivers.

** C128 changes
---------------
- Added digimax support.
- Fixed some minor VDC graphics 
bugs.
*
* C64 changes
--------------
- Added MMC64 support.
- Added digimax support.
- Added Action Replay III support.
- Improved compatibility of TFE 
emulation.

** PET changes
--------------
- Added SID cartridge support.
- Extended the PET REU emulation to 
include 512/1024/2048KB.

** PLUS4 changes
----------------
- Added SID cartridge support.
- Fixed some minor TED graphics bug.

** VIC20 changes
----------------
- Added SID cartridge support.

** Drive changes
----------------
- Added support for Dolphin DOS 2 & 
3 and Professional DOS 1571.
  The GUI is partially missing, 
command line switches have to be 
used.


** Unix changes
---------------

- New Hungarian translations.
- Fixed some bug in the XAW file 
selector.

- New fullscreen mode based on 
XRandR - although restriced to 
XVideo  HW scaling. See also BUGS.
- Raster synchronization based on 
openGL extension
  `GLX_SGI_video_sync'. See 
openGL-sync.txt for details.
- Fixed colormap handling on certain 
Gnome systems (sporadic black  
menus, e.g. reported by some FC 
users).
- New fullscreen mode based on 
XRandR - although restriced to 
XVideo HW scaling. See also BUGS.
- Raster synchronization based on 
openGL extension
  `GLX_SGI_video_sync'. See 
openGL-sync.txt for details.
- Fixed colormap handling on certain 
Gnome systems (sporadic blackmenus, 
e.g. reported by some FC users).
- ffmpeg support should work again.

** MS-Windows changes
---------------------
- Added Hungarian translations.
- Added giflib/libungif dll support.

** OS/2 changes
---------------
- Fixed a video resource bug that 
prevented VICE from running.

** Mac OSX X11 changes
----------------------
- Added Gtk+ Port
- Introduced single "smart" 
Application Bundle VICE.app
- Added command line launcher for 
Terminal.app and xterm
- Added build scripts for all external 
libraries and universal buildsof VICE

** AmigaOS changes
------------------
- Fixed some UI dialog bugs.
- Added Hungarian translations.
- Added more (previously missing) UI 
elements.
- Added native MorphOS icons.
- Fixed for native AmigaOS4 compile.
- Added VBCC build scripts.
- New experimental ppc-warpos port.
- New experimental ppc-powerup port.

** BeOS changes
---------------
- Fixed to also run on ZETA.
- New ppc-beos port.
- Added (previously missing) UI 
elements.

** Miscellaneous changes
------------------------
- Fixed the setting of illegal filenames.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
   

Readers Comments 

Commodore Machines Additional 
Information By Viktor Varga

I have read all the issues of your 
magazine, and in the 4th Issue I read 
an article about the machine types.

My additions to these:
1) The SX-64 dies, because the 
Commodore markets the SX-64 and 
DX-64 together (sx-64 with two drive) 
and lot of people waited for the better 
version. (This  resulted in poor sales of 
the SX-64.)

(if you search the net for the same 
stories, this vapourware-like condition 
killed the company, who manufactured 
the enterprise computer. They 
advertised a computer together with 
the Enterprise, so the sales was not 
good, and they did not get enough 
sales to release that.)

2) The Plus/4 and C16 has more sales 
in east Europe for two reasons:

- the modern computers like Motorola 
chiped Amigas were on the COCOM 
list.

- they were sold on discount prices, 
when the western market said no for 
these types of machine.

These were my comments.
About design question :I have read, 
what is with the design of the 
Commodore. A design was not 
covered by the copyright law 
nowadays, but it should be a registered 
product design like patents. So you 
should check the local patent office, is 
there any Valid patent about it.

About your magazine
Sometimes I miss the referenced 
pictures from the page, and sometimes, 
I cant understood, why is missing 
something. (for example: in the last 
issue, there was an armalyte copyright 
in the middle of an article. Some of the 
articles are only philosophing, which 
sometimes seems tobe agonising. :)

If you want to extend your article why 
not the Commodore is the popular 
computer nowadays, there are some 
simple reason:

1) Pc was modular, you should not get 
the whole thing, if you don't have 
enough money for it

2) By the time, regarding to evolution 
of peripheries, easy to replace the old 
part with a new technology

3) There are concurrent manufacturers, 
so there are market competition, which 
is pushes the price down.These reason, 
why cant Commodore stay on the 
market, and why Applegoes to the X86 
platform.

It enough for today. :) Viktor

COMMODORE FREE
Victor Thanks for the information, but 
some of the screenshots from 
Commodore free were threatened 




with Copyright infringement, even 
items I had copies with Vice emulator, 
the copyright holder still owns the 
images. 

JOHN
Hi,
    I just found your website and 
downloaded issues 4 & 5. I see 
mention that you had to take off issues 
1-3. I just wanted to ask if you still 
have them and if you could email them 
to me? I'd love to read the earlier 
issues and I'm also sort of a collector 
so having the entire set in pdf would be 
great. :) If you don't have them, do you 
know if they are found elsewhere on 
the web? Thanks John

COMMODORE FREE
Again I have had lots of requests for 
the earlier articles, but as agreed with 
the copyright holders I cant send them 
out or have them for download.


Jocelyn
 I just discovered your magazine and i 
want to thank you very much for this 
great piece of art.  I'm a huge fan of the 
commodore 64 (i programmed a lot in 
the 80's!) and i'm glad that i found your 
magazine.  I was searching for a 
Commodore 64 dedicated magazine 
and this is the only one i found.Thanks 
again! Regards, Jocelyn

Commodore Free
Hello thanks for the Comments, you 
know what I am going to say, why not 
write about your programming 
experiences from the 80`s and send 
them to the magazine 

Stephane
First off, awesome idea materialized 
into an excellent reading experience. 
I've enjoyed it beyond my descriptive 
abilities. :-).  Truly brilliant work. I 
have two questions.
 
1, Since I just noticed 
commodorefree.com (via a forum post 
about your issue 5 being out. I read 
issue 5 then issue 4. There are 
copyright at stakes for issue 1 to 3 and 
that's really too bad as I would have 
loved to read them as well 
tremendously. There's no way to get a 
copy of those 3 first issues is there?  I 
would really appreciate that alot out of 
my own personal interest and curiosity.
 
2. I've read what you accept for 
submissions.  Though it didn't quite 
seem like an official list of article types 
per se ;-).  So my second question is if 
you would accept a tutorial on some 
programming practice on any 
commodore computer. 
 
   For example: how to program sounds 
on the commodore 28 in BASIC 7.0 
among other ideas I have. Stephane

Commodore Free
Any articles would be welcomed, 
especially articles related to 
programming, but even experiences 
with Commodore machines would be 
welcome. 
 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
Interview with Wills Patten 
By Commodore Free Magazine
 
Q.  can you introduce yourself to our 
reader

A. I am 79 years young and a passion 
for Commodore beginning with a Vic-
20 in 1984. I am married to a 
wonderful saintly lady (Phyllis) who, 
while not a Commodore user herself 
(uses an emachine) supports me and 
encourages me with my devotion to 
Commodore.
 
Q Wills can you tell us about your 
magazine

A. My Journal is called GEOS 
Publication. Currently it has been a 16 
page publication, the first 8 pages of 
which are devoted specifically to 
Commodore Computers and 
Commodore GEOS predominantly. 
The second 8 pages (maximum 
allowed by geosPublication) is a 
conglomeration of humor, 
Documentations on history, trivia, pee 
cees, cartoons, self-esteem, etc. One of 
my obstacles was I began getting 
further and further behind in keeping 
up with getting issues out on time due 
to various obstacles 
related to keeping my Commodore 
system operative.  At one time my 
subscriptions were almost 200 strong, 
but currently has reduced to just under 
50, which tends to be the story of many 
Commodore publications.

Q. I understand you have now closed 
the magazine can you explain why

A. The above explains some of the 
reasons.  Beyond this, due to lack of 
revenue, and trying to keep it going 
with money out of my wife and my 
joint bank account, the margin of profit 
has been zilch for several years.  I do 
not have the cash to invest in my 
business as I should be able to.  
Another reason is an inexcusable fault 
of my own, somehow I lost my mailing 
list, and due to a mix-up in up-grading 
my HD I lost a file of my current 
mailing list.  If I find a fairly current 
mailing list (my good wife correctly 
tells me I am a poor housekeeper in my 
office) I intend to put out one more 
issue, which will give my currently 
paying 
subscribers (I have more than I should 
complimentary subscriptions) some 
options on future alternatives they will 
have.)

Q. Tell us about Commodore what 
machines do you own 

A. My system consists of A 
Commodore 128, 1571 drive, FD-2000 
drive (currently inoperative), a 
RAMLink, 2 gig HD, Zoom Modem, 
and a Commodore 1802 Monitor.  I 
also have a pee cee, an emachine with 
40 gigs, 3 1/2" drive, HD, monitor, 
external zip drive; all of which I 
consider supporting hardware for my 
Commodore.  I obtain and download 
for my Commodore my graphics and 
documents for use in my Journal. 
While my first love has and and 
always will be my Commodore 
system, finally succumbing to accept 
as a gift a pee cee from my 


son and wife, I have never been sorry.  
I now have a lot of respect for what my 
pee cee can do for  my 
Commodore. 

Q. What is your favourite Commodore 
magazine 

A. At present I subscribe to no 
Commodore magazine, since my 
predominant love in the Commodore 
world is for GEOS.  I used to take the 

CMD Magazine, and before that RUN 
and one or two others. 

Q. Do you have any other projects on 
the go with the closure of your 
magazine

A. Well, at first a thought I would just 
re-retire (I am a retired minister) from 
the desktop publishing business, and 
just dabble in basic programming and 
maybe either machine language or 
GEOS programming.  I may still do 
some of this.  But then I got the 
inspiration that I do not yet wish to be 
put out to pasture... yet.  I am having a 
dialog with Gaelene 
to see if I can convert my present 
GEOS Publication website to a 
predominantly personal website with 
perhaps a little information and 
promotion of another publication with 
8-16 pages, probably not copywrited 
as GEOS Publication is.  It will be 
partly a family website, partly to 
publicise this new publication. It will 
be financed partly by me and  freewill 
contributions.  It will be a 
conglomeration of documents, 
including Commodore, pee cees, 
humour, self-esteem and moderate 
Christianity, cartoons, and God only 
knows what else.

Q. Why use Commodore what was the 
pull of the machine

A. My continuing devotion to 
Commodore is today as it was in the 
1980s, the comparatively ease of use 
and learning how to use it. Pee Cees 
are so much more complicated, but I 
have not found them to difficult to use 
for my own needs.  But as I have 
always insisted, I have always loved 
my Commodore system first and 
foremost, and primarily use my pee cee 
system to support and enhance my 
Commodore work.

Q. What do you think Commodore 
failed to do in its history 

My thinking on this may have some 
disagreement with other Commodore 
users, and I respect that.  However here 
is my thinking on this:

(1) I think Commodore executives 
were too afraid to spend money for 
advertising more and often venturing 
out and manufacturing for sale some 
other brainstorm upgrades and 
improvements etc.  (for example, the 
C65) Perhaps they were afraid they 
could not do this and maintain their 
high salaries.  But irregardless they 
eventually went bankrupt from poor 
management.
 
(2) I feel both CBM and Commodore 
users (for the most part) have always 
been too smug and isolated from the 
whole computer world. The concept 
and reality of IBM compatible 
computers (PCs) was the right idea and 
became a great advantage for the pee 
cee world of computers. Commodore 
did of course dabble in this, but did not 
push and promote this properly with 
their compatible IBM computers.  I 
believe I am correct that the Amiga 
also had compatibility slots. We should 
have recognised that we can still 
maintain our independence and yet 
work cooperatively and congenially 
with the pee cee world community of 
computers.  The success of the United 
States has always been using the 
concept of both 
competition and cooperation in a 
balanced manner.  Perhaps CMD had 
some intensions in these concepts since 
their hardware copied to some extent 
the pee cee hardware. 

Q.  how do you feel seeing 
Commodore name on new devices like 
MP3 players etc 

A. I use Windows Media players and 
have not yet acquired a MP3 player so 
I know little or nothing about this.  

Q. everyone has what I call a Dumb 
day when everything goes wrong what  
was your dumb day and what went 
wrong

A. I believe I covered this also at least 
somewhat.  I have had hardware 
breakdowns and at first Maurice was 
excellent at meeting my needs.  Him 
buying out CMD was a brainstorm, but 
I guess was more than he could 
sufficiently chew.  But now I have 
problems getting my Super CPU 
repaired and if necessary find a source 
for a new one I can afford.  Part of this 
whole thing is mental, and I have faith 
in the Commodore hardware and 
programming and utilities, etc.  

I still do, but may not live to see what 
the future holds.  For me it is amazing 
how we have survived and continued 
to hold together in spite of our 
difficulties. Homestewad is a 
wonderful bond for Commodore users, 
Gaylene and Rod a tremendous 
Accessories and facilitator, etc.  We 
have many pillars of our Community 
and a few are options that depend on 
the nature of the individual 
Commodore operator and what his or 
her objectives are. 

Q. what did you learn from the Dumb 
day

A. That there is always a better day 
coming. 

Q.  have you anything you would like 
to add

I think I probably have said enough, 
except I owe much of my motivation to 
my wife and of course most of all to 
Almighty God.

 Willis Thanks for your time Good 
luck Take care 

My pleasure.... My very best to 
everyone :>)={=<
 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 

*********************
* Programming II *
********************* 
By Dave Moorman (LOADSTAR)
 
THE SHELL
When you have played with your 
program long enough -- and have some 
idea how variables and PRINT work -- 
type:

    NEW

We are going to now prepare a disk or 
disk image and save a program. As you 
certainly know, when you turn off a 
computer, anything in memory will 
disappear -- lost forever. To save our 
work, we have to SAVE our work. [If 
you are learning how to program from 
the VICE emulator on NICKEL 
GAMES, you won't have to do this 
until later. Your emulator is already 
"attached" to a disk image called 
MYDISK.D81."]    

PREPARING A DISK -- REAL C-64
Connect the disk drive to the computer 
and turn both on. Type (carefully and 
exactly)

    OPEN 
1,8,15,"N0:MYDISK,01":CLOSE1

And press <RETURN>. When the 
cursor reappears, Type:

    LOAD"$",8

Then LIST.

This will show your disk directory. It 
also erases whatever program is in 
memory.

PREPARING A DISK IMAGE -- 
VICE
   
 Press <Alt-8>.

Navigate to the folder where you want 
to keep your programs. You can create 
a new folder if you want -- just like 
with any Windows program.Type in 
the filename textbox:

    mydisk

but do not press <ENTER> yet. 
Instead, look down at the lower left of 
the dialog box. You will see the word 
VICE in a textbox. Change it to

    mydisk

Also change the ID to 01. Another box 
shows D64. This will be fine for now. 
Click on CREATE IMAGE. Then 
click OPEN. You have just created a 
disk image and attached it to VICE.

NOTE: 
Every disk or disk image should have a 
unique ID. We just used 01 in the 
above examples. Whenever you format 
a real disk or make a disk image, give 
it a different ID, which can be any two 
alphanumeric characters. When you 
launch VICE (other than with NICKEL 
GAMES), you will need to "attach" a 
disk image to it. This is just like 
putting a real disk in a real drive. Press 
<Alt-8>, navigate to the disk image 
you want (it  will have a .D64 or .D81 
extension) and click OPEN. 

Getting a disk directory in VICE is the 
same as with a real C-64:
   
 LOAD"$",8
  LIST

Now you are ready to create a Scratch 
and Save Shell. NEW your memory 
and type:

  59999 END
  60000 D = PEEK(186): IF D<8 
THEN D=8
  60001 OPEN1,D,15,"I0": 
N$="SHELL.RTN"
  60002 PRINT#1,"S0:"+N$:CLOSE1
  60003 SAVE N$,D
  60004 VERIFY N$,D: END

Be sure you have typed everything 
correctly. You MUST type out all the 
letters in "PRINT#1," on line 60002! 
Then Type:

    GOTO60000

When you are successful (IE, no 
errors), Type:

    LOAD"$",8
    LIST

    You should see

    0 "MYDISK          " 01 2A
    1 "SHELL.RTN"           PRG
    663 BLOCKS FREE.

(With VICE, the disk label 
("MYDISK") will look strange unless 
you typed in all capital letters in the 
textbox in the lower left of the dialog 
box. Press <CTRL-Shift> to make 
uppercase lower, and the strange 
characters upper case.) Now, whenever 
you begin a new program, load your 
Shell Routine with:

    LOAD"SHELL.RTN",8

then 

    LIST 60001

And change "SHELL.RTN" to 
whatever you are going to call your 
new program. For example:

  60001 OPEN1,D,15,"I0": N$="MY 
FIRST"  

Save your new program with

    GOTO60000

While you are working on your 
program, take a moment every so often 
to type GOTO60000 in Immediate 
Mode. Your latest version will be 
saved  to your disk. This technique 
guarantees that you will always save 
your program to the correct filename. 
Whatever name you LOAD will be the 
name that is scratched and saved. We 
won't go into all the particulars of this 
code, except to mention three things. 
First, you can put more than one 
command on a line. In fact, a program 
line can be up to two screen lines long.

Second, notice how the numeric 
variable D is used. It is set to the last 
used device number -- usually the disk 
drive from which you loaded the 
program -- which the computer keeps 
in location 186. Disks are always 
device number 8 or higher. By using 
D, we don't have to think about which 
device we are using, and the same 
value will be used every time. Third, 
by making N$ hold the name of the 
program, we know that the correct 
filename will be scratched (S0:) and 
saved. This is really advanced stuff -- 
but it serves any programmer so well, I 
wanted to get you started off right. I 
learned to do this after a tragic 
experience.

I was working on two programs that 
worked together. "B.PROG" set things 
up in the computer (called a BOOT), 
then loaded and ran "PROG" (the main 
program). All went fine until I 
accidentally saved "B.PROG" to the 
file name of "PROG". Suddenly, I had 
two files with the Boot program, and 
lost the main program (and some 30 
hours of work) completely. Salvation 
is not just a theological nicety when it 
comes to computers.

Check out John 3:16 to see what 
happens to "bad little programs!" 
(NOTE:  They "perish!") So I started 
using this scratch and save routine with 
every program. No matter what the 
name is, it is saved to the correct 
filename. I learned something else. 
That main program was getting clunky, 
with lots of fixes and fixes of fixes. 
When I lost it, I was about two-thirds 
through it. By then, I really knew what 
I needed to do. So recreating it took 
only a few hours. The result was a 
much better, faster, more elegant 
program. Sometimes when a program 
becomes too ungainly, I clench my 
teeth and delete it! It means rewriting 
everything. But often, that is a GOOD 
THING.

LOOPING
Computers are great at doing things 
over and over again. They accomplish 
this with a LOOP. The program that 
waits for keystrokes is a loop, asking 
"Has a key been pressed?" over and 
over.

    Here is an Infinite LOOP:

    10 GOTO 10

When you run this, nothing will 
happen! The program keeps jumping to 
line 10, over and over. On a PC, this 
would be called a "lock-up!" But you 
have the <STOP> key (VICE: 
<ESC>). Press it, and you will break 
out of the loop. For a more useful (and 
interesting) loop, try this:

    10 X = 0
    20 X = X + 1
    30 ? X;
    40 GOTO 20

Here X is set to 0, then the contents of 
X have 1 added, the result put back 
into X. This is called "incrementing." 
Line 30 prints X, and line 40 jumps 
back to line 20. X is incremented and 
printed, then the program loops again. 
Again, this is an infinite loop. The only 
way to stop it is to press <STOP>.
What we need is to stop the program 
when a certain "condition" is true. 
Hey! we have a Conditional Jump! 

    10 X = 0
    20 X = X + 1
    30 ? X;
    40 IF X<100 THEN 20
    50 END

In this case, line 40 asks a conditional 
question. Is the value in X less than 
100? If so, (THEN) we jump back to 
line 20. If not, we "fall through." We 
have several conditional operators that 
compare two 
values (or strings!).

    X < A   X less than A
    X > A   X greater than A
    X <= A  X less than or equal to A
    X => A  X equal to or greater than A
    X = A   X equal to A
    X <> A  X not equal to A

You might want to play around with 
the above program until you are 
familiar with how all these 
comparisons work.

Here is an example of two nested 
loops:

  10 Y = 0
  11 X = 0
  20 ? X; Y
  30 IF X < 5 THEN X = X + 1:GOTO 
20
  40 IF Y < 4 THEN Y = Y + 1:GOTO 
11
  50 END

Try to figure out what this will do 
before running it. One of the essential 
skills of a programmer is to be able to 
read code exactly the way the 
computer will. You might want to 
"desk check" this program. 
Write on a piece of paper:

     X    Y
    ---  ---
     0    0

Then, step through the program, 
changing the values as the computer 
would:

     X    Y
    ---  ---
     0    0
     1    0
     2    0

etc.

FOR-NEXT LOOPS
Conditional jumps work just fine, but 
we have a better way to do counted 
loops. If you want to count from 1 to 
10, you can use:

    10 FOR X = 1 TO 10
    20 ? X;
    30 NEXT
    40 END

X is set to 1 and when the computer 
encounters NEXT, X is incremented. 
When X is greater than 10, the NEXT 
"falls through" to the next line.

    We can count by values other than 
1.

    10 FOR X = 1 TO 100 STEP 5: ? X;
    20 NEXT: END

    We can count backwards.

    10 FOR X = 100 TO 0 STEP - 12: ? 
X;
    20 NEXT: END

    We can even nest FOR-NEXT 
loops.

    10 :FOR X = 0 TO 5
    20 :  FOR Y = 0 TO 5
    30 :  ? X*6+Y;
    40 :  NEXT
    50 :?
    60 :NEXT
    70 END

(I indented the inner loop so it is easier 
to read.) One important thing to 
remember whenever using FOR-NEXT 
Loops: Always, ALWAYS exit the 
loop through the NEXT command. 
ALWAYS! Whenever a  FOR 
command is encountered, information 
is stuffed away in a special place in 
memory called the Stack. If you do 
something like this:

    10 FOR X = 1 TO 10
    20 IF X = 5 THEN 40
    30 NEXT
    40 ? X
    50 END

You have jumped out of the loop 
illegally. The stuff on the Stack is not 
removed, and you can get OUT OF 
MEMORY ERRORs or other strange 
problems. If you need to jump out of a 
FOR-NEXT loop, use code like this:

    10 Y = 0: FOR X = 1 TO 10
    20 IF X = 5 THEN Y = X: X = 100
    30 NEXT
    40 ? X, Y
    50 END

The "found" value will be in Y. If Y is 
0, then the value was not found. This 
will become more important later. Try 
this routine using different values in 
line 20 -- such as IF X = 55 THEN....

GOSUB
We have mentioned GOTO, which 
jumps to a given program line number. 
Sometimes, you will want to use the 
same code at different times in a 
program. Rather than write the code 
over and over, you can write a 
Subroutine. This example is too 
simple, but here goes...

    10 FOR X = 1 TO 10
    20 GOSUB 100
    30 NEXT 
    40 GOSUB 100
    50 END
    60 :
   100 ? X
   110 RETURN

Line 100 - 110 is the subroutine. When 
GOSUB 100 is encountered, the 
program jumps to line 100. When the 
RETURN command is encountered, 
the program returns to the place where 
it did the GOSUB command. Be sure 
to keep the program from wandering 
into the subroutine without a GOSUB. 

You will get a RETURN WITHOUT 
GOSUB ERROR. To see how it 
works, remove line 50.

ARRAYS
Just one more thing before we get to 
the BASIC Bible -- our list of BASIC 
commands, functions, and operators. 
We have discussed how a variable is 
like a little box. But what if you have 
several boxes that are in some way 
related to each other? We have Arrays! 
If a variable is a box, an array is a  
chest-of-drawers. Imagine a file 
cabinet called V$ that has three 
drawers. The drawers are numbered. 
We can put string data in drawer 0, 1, 
or 2.

    10 DIM V$(2)

This DIMensions the V$ array with 
three "elements." We always have 
element 0, so DIM V$(2) has three 
elements.

    20 V$(0) = "DAD"
    21 V$(1) = "LAD"
    22 V$(2) = "MOM"
    30 FOR X = 0 TO 2
    40 ? V$(X)" - ";
    50 NEXT: ?: END

    Here is another way to "load" an 
array:

    10 DIM V$(3)
    20 FOR X = 0 TO 3
    30 READ V$(X)
    40 NEXT
    50 FOR X = 3 TO 0 STEP -1
    60 ? V$(X)
    70 NEXT
    80 END
    100 DATA "MOM","LAD"
    101 DATA "SIS","DAD"

Each time READ is encountered, the 
next item in the DATA statements is 
read into V$(X). Each string item 
should be set off with double-quote 
marks. Also, note that no comma is 
used at the end of line 100. 

The end of the line serves as a 
separator between "LAD" and "SIS" 
.Here is something else you can do 
with arrays. Add these lines to the 
above:

  80 Y = 0: FOR X = 0 TO 3
  85 IF V$(X) = "LAD" THEN Y = X: 
X = 3
  90 NEXT: IF Y = 0 THEN ?"NOT 
FOUND": END
  95 ? V$(Y)" FOUND!": END 

You can see why it might be important 
to exit a FOR-NEXT loop legally! You 
can use arrays to hold lists of 
information which you can alphabetize 
or search. While we are at it, here is a 
simple way to sort an 
array.

  10 DIM A$(3)
  15 REM READ IN THE ARRAY
  20 FOR X = 0 TO 3: READ A$(X): 
NEXT
  25 REM NOW SORT IT
  30 FOR X = 0 TO 2: LO = X: LO$ = 
A$(X)
  40 FOR Y = X + 1 TO 3
  50 IF A$(Y)<LO$ THEN 
LO=Y:LO$=A$(Y)
  60 NEXT
  70 A$(LO)=A$(X)
  80 A$(X)=LO$
  90 NEXT
  100 FOR X = 0 TO 3: ? A$(X): 
NEXT: END
  200 DATA 
"MOM","SIS","LAD","DAD"

This is not necessarily the most 
efficient way to sort, but you get the 
idea. Desk check this code to see how 
it works. Arrays can be numeric as 
well as string. Just don't use the dollar 
sign! Also, arrays can be any number 
of dimensions and any size -- as long 
as there is enough memory. Perhaps 
you can have a checkerboard with 8 
elements by 8 elements:

    10 DIM CB(7,7)

Or you can even do three-, four-, even 
five-dimensional arrays. For example, 
perhaps you want to make a database 
where you have 100 Last  Names, First 
Names, Addresses, Cities, States, and 
ZIPs -- all together in one array.

    10 DIM DB(5,100)

To sort by States, you would look at 
DB(4,X). Play with the idea!

C-64 SECRETS
I mentioned that BASIC 2.0 does not 
have commands for C-64 features such 
as screen color. But this is fairly easily 
remedied. Such things are controlled 
by "registers," certain bytes in memory 
that connect to the chips that do the 
video stuff.

  BACKGROUND COLOR  POKE 
53281,color
  BORDER COLOR            POKE 
53280,color
  TEXT COLOR                  POKE 
646,color

    The color values are as follows:

  0  BLACK          	8  ORANGE
  1  WHITE           	9  BROWN
  2  RED               	10 LT. RED
  3  CYAN           	11 DK. GRAY
  4  PURPLE       	12 MED. 
GRAY
  5  GREEN       	13 LT. GREEN
  6  BLUE          	14 LT. BLUE
  7  YELLOW 	15 LT. GRAY

    Another way to change the color of 
the text is to "embed" color codes in a 
string. When you type a double-quote 
<Shift-2>, the edit screen goes into 
"quote mode." Then you can press any 
keys -- including color, cursor, home, 
or clear screen, and the action will be 
embedded in the string. You can try 
this:

    10 POKE 53280, 0
    20 POKE 53281, 0
    30 ?"<CTRL-2>WHITE <CTRL-
3>RED ";
    35 ?"<CTRL-4>CYAN"
    40 ?"<C=-1>ORANGE <C=-
2>BROWN ";
    45 ?"<C=-3>LT. RED"

(CTRL means CONTROL. On VICE 
<CTRL> is <Tab>.  C= is the 
"chicken-lips" Commodore key. On 
VICE, <C=> is <CTRL>. That makes 
sense, right?)

You have a great collection of special 
graphics characters built into the C-64. 
On a real machine, you can see them 
printed on the keys. For VICE users, 
you will just have to do some 
experimenting. Try this:

  10 ?"<C=R> <SPACE> <C=R> 
<SPACE> <C=-R>
  20 ?"<C=-Q> <Shift-]> <C=-W> 
<SPACE> <Shift-Minus>
  30 ?"<C=-E> <SPACE> <C=-E> 
<SPACE> <C=-E>  

You should see HI in large letters. The 
most important keys are:

    <C=-Q> LEFT T
    <C=-W> RIGHT T
    <C=-E> DOWN T
    <C=-R> UP T
    <C=-A> UPPER LEFT CORNER
    <C=-S> UPPER RIGHT CORNER
    <C=-Z> LOWER LEFT CORNER
    <C=-X> LOWER RIGHT 
CORNER
    <Shift-]> HORIZONAL LINE
    <Shift-Minus> VERTICAL LINE

About the only letter you cannot make 
with these 10 graphic characters is an 
X.

Well, that pretty much covers the 
basics of BASIC structures and 
controls. Now we have a bunch of 
commands, functions, and operations 
to learn. You will want to play with 
each of these commands to get familiar 
with them. Then keep this book handy 
as you begin programming .But 
mostly, have fun!
 
 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 

**************************
* HEX FILES PART 2 *
**************************
Hello all and welcome to the second 
part of this course for budding 
Commodore 64 programmers. In the 
previous instalment we got to grips 
with the basics of the C64 itself and 
introduced a first batch of assembly 
language commands that, after they're 
converted to machine code, our C64 
can understand. 

This time around, I plan to bring a few 
more in to play as well as expand on 
what's gone before. To begin with, 
LDA and LDX have both been covered 
independently last time but they can 
also work together to much greater 
effect - so lets get things off to a start 
straight away with the first little 
example:

ldx #$00		; set X register 
to zero
lda #$01		; set 
accumulator to zero
sta $0400,x	; store contents of A 
into $0400+X
rts

If we were to run this, a letter A would 
appear at the top left corner of our 
screen. Nothing exiting so far, huh? 
Well, if we were to alter the first 
command to read LDX #$01 and re-
run it the results would be slightly 
different in that the A would now be 
one character to the right. 

So how does this actually work you 
ask. Well, the first command sets the 
value in the X register and the second 
sets the accumulator (A register) in the 
same way as before. But the STA 
command has been altered slightly so 
that instead of just putting the contents 
of A to a set place (in this case 
memory location 1,024) it adds the 
value in X to the location. So if X is 0 
then the A character appears at 1,024 
and if it were 40 then the A will be one 
line down because there are forty 
characters a line.This is the basics of 
loops in machine code, but before we 
can introduce them properly we need 
to first look at another facet of machine 
code. When writing code it is 
necessary to leap back and forth 
through the program in the same way 
that BASIC can with GOTO's and 
GOSUB's.

 Because we have no line numbers we 
need some way of identifying a piece 
of code to jump to which is what labels 
do. A label is not actually a command 
its a word, but it's like naming a piece 
of your program so that you can then 
refer to it by that name. Classic 
examples are calling a loop loop or 
your control routine readstick (for 
reading the joystick) but just about any 
word that doesn't have an instruction in 
can be used. Labels do have other uses 
which we will cover later but for now 
I'll leave this definition.

Time for another example I think, this 
time showing the use of a label and our 
next two commands. This next 
example would, if executed, put eight 
A's at the top left of the screen:

            Ldx #$00      	; set X register 
to zero
            lda #$01	; put 1 in the 
accumulator
loop     sta $0400,x	; our very first 
label!
            inx	 	; INcrement X 
(as before)
            cpx #$08      	; ComPare X to 
see if it's 8
            bne loop       	; Branch if Not 
Equal to loop
            rts		; exit
 
Why have I confused you and 
introduced two new commands 
together? Well, lets cover each 
command 

in turn. First, CPX is short for 
ComPare X and its job is to compare 
things to the X register (fairly obvious, 
eh?) In the example above we are 
checking to see if X has the value of 
#$08 but if we wanted to put say nine 
A's we merely change the command to 
CPX #$09. But when we have done 
this comparison we need to then do 
something with the results. And this is 
where Branch if Not Equal, or BNE 
comes in.

The basic flow of this loop goes like 
thus. We put a zero in X and a one in 
A (for character 1, which is the A we 
would see on screen). Then we hit the 
main loop which puts the contents of A 
into location $0400 + X, which is 
$0400 since X is zero. Then we add 
one to X and compare it to eight to see 
if it's reached the end, if not we branch 
back to loop and put another character 
down at $0400 + X (which is now 
$0401 since X is 1). This continues 
until X does reach eight. When this 
happens the BNE is ignored (after all, 
it is equal now) and we fall through to 
the end.

Some of you may be a bit confused by 
this logic, thinking that since we stop 
when X reaches eight then surely the 
eighth character wouldn't appear on 
screen because the loop would stop, 
but it makes more sense when you 
remember that we are counting from 
zero and not one.

So far we have been examining 
routines purely in theory but I'm sure 
we are getting to the point where all of 
you want to start seeing results from 
your code. From here onwards, we'll 
be using the C64Asm cross assembler, 
although the source is fully compatible 
with the native Turbo Assembler for 
now. To start you all off I'll just give 
you the basics of starting it up and we 
will enter the previous example as 
source code and show it working.

Because we are now moving into the 
"real" world of programming the 
listing is slightly different. First, open 
a copy of Notepad (or your text editor 
of choice) and enter the following 
variation on the code we've seen thus 
far:

		* = $0900
		ldx #$00
		lda #$01
loop		sta $0400,x
		inx
		cpx #$08
		bne loop
		rts

The only difference is the * = $0900 at 
the top; this is a command to tell the 
assembler where we want our code to 
go (in this case $0900 in memory, 
which is 2304 in decimal). Now we 
want to see our code going, so it's time 
to assemble it. First, save the file out as 
"test.txt" and then you'll need to 
navigate into the same directory in 
DOS and type c64asm test.txt 
program.prg and you should see the 
following appear:

Assembling TEST.TXT
PROGRAM.PRG created from $9000 
to $090c

Now that's a happy bunny, it can be 
fed to a passing emulator or moved to 
a real C64 and tested; to try it in 
WinVICE simply drag the PRG file 
over to the emulator's window and 
drop it, then type SYS2304 and voila - 
your very first machine code program!

Well, that's the second part over with 
but before you carry on to the next 
installment I'll leave you with a little 
challenge. Can you figure out how to 
change our example to put eleven 
characters on the screen in the listing 
above and change them from "A" to 
"C"? Why not play with the code and 
see what you can come up with! If you 
have any questions about this article or 
machine code in general, email me and 
I'll order an economy size tub of rice 
pudding and come round to yours. The 
source code for the routines above can 
be downloaded here for easier 
reference.

http://www.oldschoolgaming.com/files
/c64/hex_files/part_2_files.zip
Printed with owners pemission
[ Jason Kelk ]:. 
http://www.oldschoolgaming.com
 
 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


*****************************************
* JAVA emulation of Commodore *
*****************************************

JSIDPlay is Based on JaC64 - Java 
C64 Emulator. JSIDPlay is available 
on-line with the HVSC SID collection 
available from here. Go and have a 
listen to some of the classic SIDs (if 
you have not already done it)! 

Features
ADSR emulation including ADSR bug 
Emulation of combined waveforms 
using same method as re-sid (sample-
lookup) 
Filter (LP/BP/HP) with resonance 
Synchronization, ring modulation, etc. 
Interrupts from both vertial beam and 
timers which enable different play-
speeds (e.g. not only 50Hz tunes) 

Bank switching 
PSID sample play (Galway Noise, and 
ordinary samples) 
Supports .sid files (PSID, some 
RSIDs) 
Animation/Oscilloscope shows all SID 
voices, ADSR, frequency, etc while 
playing. 
Delay and Filter Effect units to get 
echos, flangers, chorus, filter sweeps, 
etc added to the SID music. 

How to use it!
If you just want to use it here at my 
site there is not too much to say about 
it, just click some of the songs from 
Hubbard and Galway and listen, or 
enter a HVSC song path and listen to it 
instead. Note that there might be some 
bugs in the player so not every song is 
working.  If you instead want to use it 
on your own web-site as a music 
player you need to know a bit more. 
First, you will need some HTML-code 
to embed the Java applet into your web 
page, this is some basic code that 
should work in most browsers (note 
that the codebase is up one directory in 
this case - if in the same, it is not 
necessary to specify codebase is used 
for finding the roms, etc which are 
shared with JaC64). 

<object  classid='clsid:8AD9C840-
044E-11D1-B3E9-00805F499D93'
codebase='http://java.sun.com/products
/plugin/autodl/jinstall-1_4_1-windows-
i586.cab#Version=1,4,1,0'
   width='285' height='420' 
id='jsidplay'>
  <param name=code 
value='com.dreamfabric.jsidplay.JSID
Play'>
  <param name=archive 
value='jsidplay/jsidplay.jar'>
  <param name=codebase value='../'>
  <param name=type 
value='application/x-java-
applet;version=1.4.1'>
  <param name='scriptable' 
value='true'>
  <param name='playsid' 
value='sids/Delta.sid'>
  <COMMENT>
    <embed   type='application/x-java 
applet;version=1.4.1'
       name='jsidplay'
       
code='com.dreamfabric.jsidplay.JSIDP
lay'
       codebase='../'
       archive='jsidplay/jsidplay.jar'
       playsid='sids/Delta.sid';
       width='285'
       height='420'
       scriptable='true'
       
pluginspage='http://java.sun.com/prod
ucts/plugin/index.html#download'

 alt='Your browser is not running the 
Java Applet, for some reason.'>
       <noembed>Your browser is 
ignoring the Java Applet! </noembed>
    </embed>
  </COMMENT>
</object>

There are a few important parameters 
that can be used to get different 
versions of the applet and to control 
which sid and song to be played. These 
are: 
playsid - which specifies the sid to play 
when JSIDPlay is loaded/started 
playsong - specifies the song number 
to play (if another than the default song 
should be played) 
viewmode - specifies what to show. 
Nothing gives the Normal mode and 
"status" shows the oscillators, filters, 
etc: Status Mode, and finally setting 
the value to "controls" will give 
Controller Mode. Setting the value to 
anything else ("none" for example 
gives a Label-only mode. When the 
applet is running there are a number of 
Javascript calls that can be used to 
control the applet. Some are (see them 
in action on the JSIDPlay page): 
playSIDFromURL(String url) - to play 
a SID from a URL,

 usage example:
<ahref="javascript:document.jsidplay.
playSIDFromURL('jsidplay/sids/Hubb
ard_Rob/Zoids.sid')"> Zoids</a> 
nextSong() - to play the next song of 
the SID, usage example:
<ahref="javascript:document.jsidplay.
nextSong()">Next song</a> reset() - to 
reset the SID player 
setEffect(int index) - to set one of the 
default effects. Where 0 is no effect, 
1,2,3 is flanger effect, 4,5 is phaser, 6,7 
is chorus, 8,9 is echo, 10,11,12 is 
feedbacked echo, and 13,14 is filter 
sweeps. 

Implementation
The implementation of JSIDPlay is 
heavily based on JaC64 since SIDs are 
basically C64 code playing a SID-tune. 
The CPU, CIA Timers, parts of the 
VIC emulation and the SID chip from 
JaC64 are used. 

Emulating SID in Java
Emulation of the SID chip have been 
done on several platforms (which of 
Amiga was the first, I believe). The 
challenge to get it working in Java was 
both performance and the Sound API, 
especially when I starded before 
J2SE1.3 when there was no JavaSound 
;-). Since JavaSound (javax.sound) it 
was a much easier task.

. JSIDPlay is available on-line with the 
HVSC SID collection available from 
here. Go and have a listen to some of 
the classic SIDs (if you have not 
already done it)! 

Features
ADSR emulation including ADSR bug 
Emulation of combined waveforms 
using same method as re-sid (sample-
lookup) 
Filter (LP/BP/HP) with resonance 
Synchronization, ring modulation, etc. 
Interrupts from both vertial beam and 
timers which enable different play-
speeds (e.g. not only 50Hz tunes) 

Bank switching 
PSID sample play (Galway Noise, and 
ordinary samples) 
Supports .sid files (PSID, some 
RSIDs) 
Animation/Oscilloscope shows all SID 
voices, ADSR, frequency, etc while 
playing. 
Delay and Filter Effect units to get 
echos, flangers, chorus, filter sweeps, 
etc added to the SID music. 

How to use it!
If you just want to use it here at my 
site there is not too much to say about 
it, just click some of the songs from 
Hubbard and Galway and listen, or 
enter a HVSC song path and listen to it 
instead. Note that there might be some 
bugs in the player so not every song is 
working. If you instead want to use it 
on your own web-site as a music 
player you need to know a bit more. 
First, you will need some HTML-code 
to embed the Java applet into your web 
page, this is some basic code that 
should work in most browsers (note 
that the codebase is up one directory in 
this case - if in the same, it is not 
necessary to specify codebase is used 
for finding the roms, etc which are 
shared with JaC64). 

<object  classid='clsid:8AD9C840-
044E-11D1-B3E9-
00805F499D93'codebase='http://java.s
un.com/products/plugin/autodl/jinstall-
1_4_1-windows-
i586.cab#Version=1,4,1,0'
   width='285' height='420' 
id='jsidplay'>
  <param name=code 
value='com.dreamfabric.jsidplay.JSID
Play'>
  <param name=archive 
value='jsidplay/jsidplay.jar'>
  <param name=codebase value='../'>
  <param name=type 
value='application/x-java-
applet;version=1.4.1'>
  <param name='scriptable' 
value='true'>
  <param name='playsid' 
value='sids/Delta.sid'>
  <COMMENT>
<embed   type='application/x-java-         
applet;version=1.4.1'
       name='jsidplay'
       
code='com.dreamfabric.jsidplay.JSIDP
lay'
       codebase='../'
       archive='jsidplay/jsidplay.jar'
       playsid='sids/Delta.sid';
       width='285'
       height='420'
       scriptable='true'
       
pluginspage='http://java.sun.com/prod
ucts/plugin/index.html#download'
       alt='Your browser is not running 
the Java Applet, for some reason.'>
       <noembed>Your browser is 
ignoring the Java Applet! </noembed>
    </embed>
  </COMMENT>
</object>

There are a few important parameters 
that can be used to get different 
versions of the applet and to control 
which sid and song to be played. These 
are: 
playsid - which specifies the sid to play 
when JSIDPlay is loaded/started 
playsong - specifies the song number 
to play (if another than the default song 
should be played) viewmode - 
specifies what to show. Nothing gives 
the Normal mode and "status" shows 
the oscillators, filters, etc: Status 
Mode, and finally setting the value to 
"controls" will give Controller Mode. 
Setting the value to anything else 
("none" for example gives a Label-
only mode. When the applet is running 
there are a number of Javascript calls 
that can be used to control the applet. 
Some are (see them in action on the 
JSIDPlay page): 
playSIDFromURL(String url) - to play 
a SID from a URL, 

usage example:
<ahref="javascript:document.jsidplay.
playSIDFromURL('jsidplay/sids/Hubb
ard_Rob/Zoids.sid')"> Zoids</a
> nextSong() - to play the next song of 
the SID, usage example:

<ahref="javascript:document.jsidplay.
nextSong()">Next song</a> 
reset() - to reset the SID player 
setEffect(int index) - to set one of the 
default effects. Where 0 is no effect, 
1,2,3 is flanger effect, 4,5 is phaser, 6,7 
is chorus, 8,9 is echo, 10,11,12 is 
feedbacked echo, and 13,14 is filter 
sweeps. 

Implementation
The implementation of JSIDPlay is 
heavily based on JaC64 since SIDs are 
basically C64 code playing a SID-tune. 
The CPU, CIA Timers, parts of the 
VIC emulation and the SID chip from 
JaC64 are used. 
Emulating SID in Java
Emulation of the SID chip have been 
done on several platforms (which of 
Amiga was the first, I believe). The 
challenge to get it working in Java was 
both performance and the Sound API, 
especially when I starded before 
J2SE1.3 when there was no JavaSound 
;-). Since JavaSound (javax.sound) it 
was a much easier task.

JaC64 - Java based Commodore 64 
Emulator
JaC64 is completely written in Java 
and can be run from a modern web 
browser like Firefox, Internet Explorer 
or Netscape Navigator. During the 
development I've been reading a lot of 
very good documentation on the 
commodore 64 on the Internet and I'd 
like to say thanks to all people that 
made those available ! (many of the 
documents can be found at 
ftp.funet.fi/pub/cbm). 

Supported features
CPU 6510, most of the 6510/02 
instructions 
RAM/ROM and Bank Switching 
(ROM - on / off, IO on / off) 
Interrupts (IRQ, NMI) from Scan, CIA 
timers, etc. 
VIC Graphics (text modes, hi-res, 
multicolor) - now line-based, sprites 
(normal, expanded, multicolor, 
collisions) 
SID (6581) Sound, with support for 
most of the SID features such as 3-
oscillators/4 waveforms + mix, ADSR, 
synch., ring-mod, filters, etc. 
CIA - timers 

Keyboard & Joystick 
Support for .c64 .prg/p00 and .t64 files 
(directly into memory, no real 
diskdrive or tape emulation) 
Known bugs Some instructions might 
be incorrect (some games and demos 
does not work)  CIAs is not 100% 
implemented  Some gfx bugs due to 
VIC implementatin 

Use it on your own page
You can use this c64 emulator on your 
own page. The only thing I want from 
you is a link to my c64 page 
(http://www.dreamfabric.com/c64/). 
Download a zip file with the c64 
emulator and an example web-page 
here. Remember that a lot of games 
does currently not work with this 
emulator so if you dont get your games 
started it can be because a bug in the 
emulator. The downloadable version is 
much older than the one available on 
Sourceforge (many more games work 
using it - I'll update the one here soon). 

JSIDPlay - a Pure Java SID Player
Based on JaC64 I have also made a 
SID-player (JSIDPlay) available from 
here. Go and have a listen to some of 
the classic SIDs! 

Features
ADSR emulation including ADSR bug 
Emulation of combined waveforms 
using same method as re-sid (sample-
lookup) 
Filter (LP/BP/HP) 
Synchronization, ring modulation, etc. 
Interrupts - IRQ (50 times per second) 
- soon support for other playspeeds 
Bank switching 
PSID sample play (Galway Noice, and 
ordinary samples) 
Supports .sid files (PSID, some 
RSIDs) 
Better "timing" than ordinary JaC64 
emulator (via sound-player) 
Animation/Oscilloscope shows all SID 
voices, ADSR, frequency, etc while 
playing. 
 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 

*****************************
* Interview with Joakim *
******************************

Commodore Java Emulation  
http://www.dreamfabric.com/c64/  and  
http://www.jac64.com
 
Q Please introduce yourself to our 
reader

I am 36 years old and work at the 
Swedish Institute of Computer Science 
with sensor network research and 
development. I have a wife and two 
sons (20 months and 1 month old). 
During my spare time I have spent 
quite a lot of time working with the 
JaC64 and JSIDPlay project.

Q Where do you live

I live in Solna, Stockholm, Sweden.

Q What introduced you to Commodore

I was introduced by a friend that had a 
Commodore C64. At the time I had a 
Texas Instruments TI99/4A but it was 
not as cool and feature packed as the 
C64.

Q what machines do you own and do 
you still use
Commodore machines 

I currently have a C64 and an Amiga 
4000. I am only using the C64 when 
playing some good old games with my 
20 months old son.

Q Your website features a Commodore 
Emulator
Implemented in Java and a Java sid 
player (amongst
other items) what is the java 
fascination

In the beginning I just wanted a nice 
performance test for Java and I was 
missing my Commodore computers, so 
I figured that writing a C64 emulator in 
Java would be a good performance test 
for Java.
Another important thing with Java is 
that it is quite easy to get it running on 
the web, in your browser. This makes 
it possible for people that developed 
C64 software, to show it live on their 
websites.

Q is the Java Commodore a full 
implementation

Not 100% full implementation, some 
details missing in the CIA chips and 
maybe some minor details somewhere 
else too. But it is close to a full 
implementation (but with some bugs 
left to fix).

Q Please tell our reader about the Java 
sid player

I am a fan of the SID chip which I 
think is the coolest chip in the C64 and 
there are so many nice SID tunes 
available so I just had to implement a 
SID player. This was quite easy since I 
had the emulation of the CPU and the 
SID chip implemented already. The 
first version was not playing all tunes 
very well (no NTSC support, many 
bugs, etc) but the current version uses 
the sidplayer routine by Dag Lemm, 
the same that is used in SIDPlay.

Q what are the technical requirements 
to use this item

A recent version of Java (later than 
Java 1.3).

Q This is a dumb question but I 
presume its only available online

Well, I have development versions that 
I am using. The GUI are very 
unpolished but it runs on my local 
computer from the command prompt. 
If anyone would like to run it "off-line" 
I'll polish the GUI and release one.

Q do Sids have to be in a certain 
format or can any be used on the 
player

Most Sids work, but Sids using basic is 
currently not supported, and some 
other Sids might not work due to bugs 
in the player.

Q How does the player work - does it 
support drag and drop

The player is basically a Java applet 
which you either give some initial 
parameters or you call some methods 
with Javascript. This will cause the 
applet to do things such as load a Sid 
song from the Web - site, play next Sid 
song, or set the volume. It has no 
support for drag and drop, but for a 
downloadable version that would be a 
good feature to have. I guess that using 
Javascript and clever programming it 
would be possible to have some kind 
of drag and drop even in the applet.

Q Do you have any other plans for 
Java Commodore
applets? - maybe a image browser

I think the plan is the make the JaC64 
and JSIDPlay applets as good as 
possible before going for the next 
project (an Amiga emulator maybe).

Q what problems did implementing a 
Commodore emulator and a Sidplayer 
in Java present you

It is a lot of work getting all the details 
right, but luckily there are very good 
documentation on the C64 on the 
Internet. I think that the VIC chip is the 
hardest chip to get right; the timing of 
every detail needs to be very precise to 
avoid getting strange graphics bugs.

Q From a personal point of view 
"where did commodore go wrong"

I believe that they missed out on a few 
important things:

(1) The did not find ways to upgrade 
their successful computers. They never 
released anything with C64 
compatibility, and never really 
managed to make the Amiga powerful 
enough.  (This was what the PC-
platform actually handled very well).

(2) They were killing themselves with 
odd marketing tricks - like trying to 
sell their (low-end) computers as 
business computers even when they 
knew that it was the entertainment 
market that was their main market

And from reading "On the Edge" it 
seems like the management of 
commodore did not get the chance to 
everything the liked to do.

Q What sorces are available if 
someone decided to
produce there own Java applets

All sources are available at 
sourceforge! Just search for JaC64 and 
you will find it!

Q Is there any question you would like 
to have been asked

Maybe one of the common questions I 
get from my site: * Will there be a 
mobile version of JSIDPlay?
Yes hopefully, but currently the 
implementation I have is too slow even 
for my SE P990 so I guess it might 
take some time before I have a fast 
SIDPlayer in Java for mobiles.

 
Interview with Luigi 
 
Q please tell our reader a little about 
yourself

A. I'm a 29 years old electronics 
engineer with a master degree in 
computer networking and network 
security. I like computers, informatics, 
vintage hardware, reading and 
cooking.I have been working as a 
software engineer for quite some time 
now. 
Having to spend so much time in front 
of computers to write software is not 
what I dream, so I'm still searching for 
an occupation that fits my needs of 
professional growth and satisfaction. I 
like to spend some time looking at 
software and disassembling C64 
loaders and games. I belong to the 
Hokuto Force cracking group, even if I 
haven't been working at any of our 
C64 releases for a long time now.

Q where do you live

A. Currently I live in Italy.

Q what was your first experience of 
Commodore machines

A. My family bought a Commodore 64 
when I was 12. A few friends of mine 
had one too, so we used to share and 
copy tape games. It was really exciting 
to have a home computer with which 
to play but also to learn how to 
program. I think I typed in all the 
BASIC code listed on the C64 User 
Manual at least once ;)

Q what was you first machine and do 
you still use Commodore machines

A. Before buying a C64 I owned an 
Atari 2006 with lots of cartridges. I 
also own an Amiga 500 with a 512 kB 
memory expansion.Yes, I still use my 
Commodore machines, e.g. to play 
some classic 
titles I like very much. Recently I spent 
quite some time testing my latest 
project on my Commodore 64, so I've 
been playing a lot and I converted 
some of my tapes to TAP files as well.

Q Your website has many items listed 
can you tell us a little about each item

DC2N - This is the latest project of 
mine. It is a Commodore Datasette 
emulator with which one can load 
C64/C16/VIC20 TAP files from a SD 
Card 
to the real machines, duplicate tapes, 
and even produce TAP files from 
tapes.

Tap icon - Well, I thought it was a pity 
the TAP and T64 formats hadn't their 
own icon. It was developed using 
Deluxe Pain IV on an Amiga and later 
retouched with some PC software. 
Browsing my TAP folders looks nicer 
now :)

Tap clean front end - Another of the 
pieces of software on which I'm 
actually working at. I think many 
readers know Final TAP from 
Subchrist 
Software UK. In short, for those who 
don't know it: It aims to be the ultimate 
TAP check and clean tool and 

it is really appreciated by the TAP 
community. The source code of the 
console version has been recently 
published under the GPL license and a 
sourceforge project, TAPClean, was 
derived from it. I belong to its 
development team and I received a few 
requests by its users for a GUI version. 
They used the GUI version of 

Final TAP before, but the latter is not 
supported anymore afaik. I guess that, 
as we went on adding support to 
decode tape loaders to TAPClean, the 
GUI version users felt a bit annoyed by 
the fact there weren't new updates. So 
that, I decided to write a graphic front 
end for TAP Clean, with the basic 
features available in the GUI version 
of Final TAP. The latest beta, available 
for download, includes almost all the 
previously missing features and adds 
some new ones a few users and I felt 
the need for.

Tap Moni - This is a "remake" of the 
old "tape justage" tool, aka "head 
tester". I used the console version to 
inspect the TAP files I produced some 
years ago since it runs without 
problems under plain MS-DOS too. I 
could spot tape problems and correct a 
wrong alignment of the datasette heads 
using this tool.Only the GUI versions 
are actually supported and updated. 
There's also a DC2N edition that reads 
DC2N TAP files directly.

C64 basic lister - Along with typing in 
the programs listed in the C64 user 
Manual, I produced some good 
software using CBM BASIC. So that I 
thought it would have been nice to be 
able to cut'n'paste the listing into a few 
electronic documents.The additional 
features (e.g. nested cycles indentation 
and alignment of line numbers) came 
at a later time, together with support 
for a few extended BASIC sets. I think 
I will make a library other people may 
use to untokenize BASIC programs, 
being then free to list them as they like 
(with colors, syntax highlighting, and 
so on).

6510 Dasm 2 - The same 
considerations done for C64 BASIC 
Lister apply here, more or less, I'm 
working at a new engine written from 
scratch for 
TAPClean Front End, which together 
with some new additional features will 
be the starting point for CBM Dasm v3 
(the GTK+ version of this tool). I will 
make a library other people may use to 
disassemble 6510 
binaries too.

BMP2koala - I admit this was born to 
save to a C64 file format the pictures I 
produced with a demo program I had 
once. It was a PCX->C64 image 
converter supporting various formats, 
iirc, but the save option was disabled, 
of course.

Tapwav - When I made this tool there 
was no easy way to save TAP files 
back to tapes, but the one that 
consisted into producing a wav file and 
recording it to tape. I was really 
involved into the TAP file research 
at those times, so I decided to make 
one such tool.
Inspect win32 - it's just a demo 
program. Its console counterpart can 
extract binary data from TAP files and 
the GUI version aimed to be very 
configurable and easy to use. I never 
found the time to complete it and I 
don't think there's the need to do so, 
since TAPClean does that too, and it 
does that pretty well :)

Q i came across you site while looking 
for a way to print out Commodore 
basic listings on an emulator, the 
application is perfect easy to use fast 
clean and even indents code, my only 
real problem is when printed to a laser 
printer the text keeps reverting back to 
ASCII although its right on screen 
would you like to comment.

A The problem is the lack of a proper 
fontset to print those listings. I could 
not work at any but the two that come 
with the archive. I'm confident 
someone with the required knowledge 
will do that sooner or later.

Q DC2n this looks a very interesting 
project can you give our reader more 
information on this project

A. In the beginning I just wanted to 
make a datasette emulator, without the 
FAT-16 filesystem support, and 
without the TAP production feature. 
Then I realized DC2N would have 
been much more user-friendly and 
useful with those additional features. 
In fact, I know some Linux users are 
not wanting to use MTap/PTap 
because they require a FAT partition 
on the HD and MS-DOS to run. I 
didn't know about any effective 
alternative to those tools when I started 
working at DC2N, so that these 
features were implemented as well.I 
designed the hardware, the onboard 
fimware and the PC software to 
convert the 16-bit format supported by 
DC2N to the legacy TAP format. A 
few net-friends of mine gave me some 
help with other tasks and a lot of moral 
support.

Q Are all the projects produced by 
yourself - or do you work with other 
coders

A. I received hints and suggestions 
from friends (mainly net-friends), 
consulted online manuals and technical 
documents, and so on. All the code 
was written by me from scratch, but 
the UART and LCD drivers in DC2N 
which are an excellent work of Peter 
Fleury, available on his webpages.

Q Your site weems to have had a large 
number of hits 14945 on the 
webcounter - Have you had many 
comments or suggestions

A. I haven't received so many 
comments since I created those 
webpages, but the ones I received 
helped a lot.I seldom receive 
suggestions. I'd like to receive more to 
improve the software and complete the 
information available from my pages. 
Recently 
I received one from a guy who asked 
me to add a new feature to TapWav. I 
will be happy to work at that when I 
get some time.

Q I am still a fan of tapes, because for 
me they recreate my Commodore 
experience and memories, dashing 
back from the shops with a game and 
waiting - watching the flashing orders, 
then the bitmap graphics and maybe a 
loading screen then into the game - the 
build up of excitement still gets to me, 
although now with tapes and tape 
machines failing due to age - i spend 
more time cleaning heads and waiting 
than actually game play, would you 
like to comment

A. I am a fan of tapes as well, so my 
suggestion is to wait for a DC2N, then 
save 2 thousand TAP files to a 4GB 
SD Card and forget about having to 
clean and hope before being able to 
play ;)

Q Do you have any other applications 
indevelopment

A. I can think mainly of Graphix 2006 
that was not yet mentioned here. 
Basically I go on working at every tool 
of mine, updating it whenever its users 
and I think something should be 
changed/improved, if I have got 
enough time to do so.I'm also wanting 
to write my own game engine after 
having disassembled The Last Ninja on 
the C64. I started disassembling it with 
my own tools and I had lots of ideas to 
improve/speed up the task. Those ideas 
are a guideline while writing the 
disassembler in TAPClean FE, as I told 
you before. Finally, I'm working at 
libtap, a multiplatform static library to 
encapsulate files inside TAP files that 
load using one of the supported turbo 
loaders along with the standard CBM 
loader. The library and a test 
pogram will be soon published.

Q If our reader is thinking he may like 
to help what should he do to help you

A. Comments and suggestions are 
really welcome here. Also some 
help/comments about the PCB design 
of DC2N is welcome. Some help with 
the 
visualization and printing of C64 fonts 
with CBM BASIC Lister would be 
welcome too :)

Q Can any tapes be copied and used on 
the DC2n or have you found versions 
that refuse to load

A. DC2N can reproduce any TAP file: 
Even those loaders that rely on very 
short pulsewidths load fine on a real 
Commodore 64. The DC2N timer used 
for PLAY and RECORD runs at 2 
MHz, so it's very accurate.

Q Has anyone meantined Copyright to 
you or given problems

A. I never received any complain in 
that sense. I respect intellectual 
property so that I would do my best to 
solve any such problem.

Q Do you intend keeping a tape 
archive or are you leaving that to 
others 

A. I know about online tape 
preservation archives with 1600+ 
verified and cleaned TAP files, and a 
new one is going to show up. I do 
know the guys who work at the latter 
and I trust they will do a very good 
work, with lots of tape information and 
crystal-clean verified TAP files.

Q DC2n what major problems did you 
have to overcome with the evelopment 
of this application

A. Honestly one of the major problems 
was to find the tape port connector that 
connects DC2N to a real C64. Peepo, 
who is supporting this project and 
going to build his own prototype, 
found out Nicolas was the right person 
to ask for it, so that I was able to order 
those to build my prototype and, 
hopefully, a few others soon. I would 
order quite many connectors, but 
actually there don't seem to be enough 
persons interested in this project to 
place such an order. Another problem 
was the production of the PCB, for 
which I thank Bo and Francis who 
offered their help. Two PCBs were 
produced thanks to their  interest in 
this project.

Q DC2n does this need a special cable 
to work

A. It has to be connected to the C64 
tape port, just as if it was a real 
datasette. No special additional 
hardware / software is needed to use 
it.Actually I'm working with a test 
firmware and I interact with DC2N by 
means of its console port, also for 
debugging purposes, connected to my 
laptop. The final product won't require 
the connection to a PC for it has the 
required onboard buttons and a LCD to 
interact with.

Q is there any question you would 
have liked to have been asked ?

A. "Why do you do that?" It's my way 
to preserve the glory of Commodore 
homecomputers and encourage people 
to develop new projects on those 
machines by means of cross-platform 
development tools. I'm not interested 
in my personal glory or money.

Q personally what do you think 
"commodore did wrong"

A. Marketing and hardware design, but 
I'm not experienced in any of those 
topics neither ;) It's been a pleasure. I 
look forward to reading the next issue 
of the Commodore free magazine :) 
Cheers, Luigi.

Commodore Free
For more information and to download 
these excellent tools visit the website :
http://digilander.libero.it/tcengineer/c6
4/index.htm#BL
 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 

*************
* xu1541 * 
*************

The xu1541 is the modern way to 
connect CBM IEC bus devices to 
todays USB equipped PCs and it is 
meant to replace the printer port 
solutions based on the so-called 
original x1541 cable. The xu1541 
interface allows you e.g. to attach a 
VC1541 disk drive to your desktop PC 
as depicted below. This allows for easy 
transfer of disk images from and to the 
old units and helps you preserve your 
ancient data. The xu1541 is a 
proprietary interface. It does not 
transform the vc1541 into a standard 
usb mass storage compliant device. 
Instead it provides a means to send low 
level IEC commands forth and back 
via the USB. PC software developed to 
support this interface may then directly 
access the disk drive and the contents 
of a disk inserted. It should also be 
possible to access other IEC devices 
like printers. Currently e.g. the CVS 
version of the opencbm software 
supports this interface.

Intended audience
This project is still under development. 
It works with my own 1541-II and my 
SX-64's internal floppy drive. As a PC 
only two machines have so far been 
used which are my Sony Vaio TX3 
notebook and my XCube barebone 
based desktop. First tests by other 
people have shown that there's still 
work to be done and e.g. none of the 
157X drives currently works. And 
there's also a problem with an old 
Pentium based Laptop computer.

At least the 157X part should be 
fixable in software, although i don't 
own a 157X myself. So i currently 
recommand this for people who are 
willing to cope with glitches and will 
perhaps even do some testing and bug 
hunting. We hope to have a end-user-
proven version, soon. Stay tuned!

Design goals
The xu1541 was designed to be made 
of easily obtained parts, easy to 
assemble and cheap. In order to avoid 
having to write all the necessary PC 
software the xu1541 was designed to 
easily integrate into existing software 
developed for the original x1541 
parallel cable family. The xu1541 is 
not meant to be the all-in-one cable. It 
is meant to connect the PC to CBM 
IEC serial periphery like the vc1541 
floppy disk drive. It cannot act as 
CBM IEC client and can thus not be 
used to emulate a floppy disk drive 
with the PC. Furthermore it does not 
support the so-called nibbler, meaning 
that the cable cannot be used to 
transfer copy protected disk images 
from and to the vc1541. These 
limitations are due to the simplicity of 
the design. A CBM IEC floppy 
emulation requires an interface to 
respond faster to incoming requests 
from the C64 than the xu1541 
currently can do with the software 
USB implementation. Nibbler support 
requires a 8 kilobytes (one vc1541 disk 
track) buffer which exceeds the 1 
kilobytes RAM present in the Atmega8 
used on the xu1541. These options are 
left for future and more complex and 
more expensive USB to IEC 




solutions. The xu1541 is fully 
compatible with all tools delivered 
with the opencbm package. It therefore 
fully supports  e.g. the tools cbmctrl, 
cbmcopy, cbmformat and d64copy. It 
allows to control the disk drive (e.g. 
read the drive status or the directory), 
it allows to format a disk, to copy 
single files from and to the disk, and to  
copy entire not-copy-protected disk 
images (d64 

images). The xu1541 was developed 
on and for a Linux PC and the 
cbm4linux toolset, the linux version 
and predecessor of opencbm. But the 
xu1541 has also been designed to work 
with Windows/cbm4win as well and a 
port of opencbm to MacOS (cbm4mac) 
is being planned and should finally be 
able to bring cheap and simple c64 file 
transfer to the MacOS platform.

Implementation
The xu1541 is based on some other 
projects. These are: lcd2usb, a project 
of mine which i have based the first 
xu1541 prototype on, opencbm, 
formerly cbm4linux, a framework for 
accessing the CBM IEC bus under 
linux and windows, cbm4win, the 
windows incarnation of opencbm, 
AVR USB, a great software 
implementation for the AVR, usbtiny, 
another software USB implementation 
for the AVR,  AVRUSBBoot, a USB 
boot loader for the AVR, 
libusb, a user space USB interface 
library, and 
libusb-win32, the windows port of the 
libusb. 

The firmware of the xu1541 device is 
based on the software USB solutions 
for the AVR cpu. It also includes parts 
of the source code from opencbm, 
namely parts of the linux kernel driver 
for the x1541 cable family. This 
includes generic CBM IEC routines 
following the communication style of 
the stock c64 as well as the special 
"speeder" modes supported by 
opencbm.

On the PC side the opencbm 
framework has been updated to be able 
to redirect the IEC communication via 
USB. It thus now uses the libusb to 
access the USB based xu1541. Other 
software intended to make use of the 
xu1541 cable thus needs libusb support 
as well. This e.g. means that very old 
DOS programs like Star Commander 
cannot easily be updated to support the 
xu1541 since there's no USB support 
for DOS. On the other hand the 
platforms that lack a printer port driver 
for the old x1541 cable family but have 
libusb support can be equipped with 
the xu1541. This is e.g. true for 
MacOS X, Solaris and some freeBSD 
platforms which weren't able to 
support the x1541 printer port cable 
family and thus weren't supported by 
opencbm so far.

CBM IEC support
The current xu1541 can act as a CBM 
IEC master only. This means that it 
can play the role of a C64 and control a 
floppy disk or printer. It can not be 
connected to a C64 in order to act as a 
virtual disk drive. This is due to the 
fact that the software USB solution 
used in this project prevents the AVR 
from being able to react fast enough on 
incoming requests (the USB stack 
requires that no other hardware 
interrupts are being used). This very 
interesting application is left for the 
successor of the xu1541. 


In order to support the CBM IEC 
protocol at a reasonable speed, some 
aspects of the protocol are handled 
inside the xu1541 itself. The downside 
of such an approach is that "speeder" 
support has also to be hardcoded into 
the firmware of the xu1541. The 
speeder support routines present in the 
current xu1541 version are the 
"serial1", "serial2" and "pp" (d64copy 
and cbmcopy versions) routines from 
the opencbm package. The latest 
version of the xu1541 firmware 
package includes a boot loader to ease 
the implementation of new speeder 
routines and to help the xu1541 to keep 
pace with the ongoing development of 
opencbm.

The xu1541 also allows to control each 
IEC control line seperately over the 
USB. This approach is only 
recommended for low performance 
things like device initialization etc. 
Using this approach causes a seperate 
USB transfer to take place for every 
single change of one of the IEC lines 
resulting in several USB transfers for 
every single bit to be tranferred. This is 
possible but nowhere near fast. This 
approach is therefore e.g. only being 
used during device initialization right 
before the accelerated "speeder" modes 
are being used. The data transfer phase 
itself then uses the specialized pre-
defined byte transfer routines 
mentioned before. This entire approach 
has the advantage of moving only the 
timing critical byte transfer routines 
into the xu1541 itself and thus 
reducing the probability of having to 
change these functions in the firmware 
once e.g. bugs in the current speeder 
protocol implementations are found.

Host support
Since the xu1541 implements a 
proprietary USB-to-CBM-IEC 
protocol only host software aware of 
the xu1541 is able to make use of the 
interface. The xu1541 cable is 
supported by the following host 
software: 

CVS version of opencbm 
opencbm version 0.4.0 needs a patch 
(this patch is quite old, buggy and for 
reference only, use the CVS version 
instead) 

The hardware
The hardware is designed to be as 
simple as possible. It therefore consists 
of through-hole components only. 
Additionally all components are cheap 
(less than EUR 5 total) and easily 
available e.g. from Reichelt. The entire 
device is powered from USB and 
doesn't need an additional power 
supply.

Version 1.0 of the xu1541 incl. its 
adaptor for 
firmware upload The xu1541 includes 
two IEC connectors (X2 and X3). Both 
are connected in parallel and can both 
be used at the same time. The parallel 
port connector SV1 can be used to 
connect one of those parallel speeder 
cables that once were a popular way to 
speed up the slow 1541 in these 
ancient days.

Version 1.1 of the PCB allows for two 
popular types of the DIN 6 sockets. 
The version sold bei Reichelt (see part 
list below) fits as well as the 
Hirschmann connector.

The parts:
Part Qty Name Reichelt Part No. 
Q1 1 12Mhz crystal, HC49U package 
12-HC49U-S 
R1 1 1.5k ohm resistor 1/4W 1,5k 
R2, R3 2 68 ohm resistor 1/4W 68 
R4 1 220 ohm resistor 1/4W 220 
R5, R6, R7 3 10 ohm resistor 1/4W 10 
C1, C2 2 22pF ceramic capacitor, 
2.54mm KERKO 22P 
C3, C5 2 100nF capacitor, 5.08mm 
Z5U-5 100N 
C6 1 10æF electrolytic capacitor RAD 
10/35 
SV1 1 20 pin parallel connector WSL 
20G 
SV2 1 10 pin ISP connector WSL 10G 
X1 1 USB-B print connector USB BW 
X2, X3 2 6 pin DIN sockets MABP 6 
LED1 1 LED 3mm yellow LED 3MM 
GE 
IC1 1 Atmega8-16 DIP ATMEGA 8-
16 DIP 
-- 1 socket for IC1 GS 28P-S 
D1, D2 2 3.6V zener diode ZD 3,6 

Firmware upload
The AVR CPU of the xu1541 requires 
a firmware to be installed in order to 
make it work. If no boot loader is 
installed (yet) on the xu1541, a special 
download cable/interface connected to 
connector SV2 is required to download 
either the firmware or the boot loader. 
Various download solutions exist from 
the simple STK200 compatible 
interface to devices like the stk500, the 
AVR-Doper, or the AVR Dragon.
Once such a cable is connected, the 
firmware is uploaded from a PC using 
programmer software like uisp (linux), 
avrdude (windows, macos and linux) 
or Ponyprog (linux and windows). The 
Makefile in the firmware archive is 
prepared to support the stk200 
compatible adapter using avrdude 
under linux. To use it just enter "make 
program". This should also work under 
Windows. The command required to 
manually flash the firmware 
(firmware-xxxx.hex in this example) 
using the stk200 compatible adaptor is:

avrdude -c stk200 -p atmega8 -U 
lfuse:w:0x9f:m -U hfuse:w:0xc9:m -U 
flash:w:firmware-avrusb.hex
or
avrdude -c stk200 -p atmega8 -U 
lfuse:w:0x9f:m -U hfuse:w:0xc9:m -U 
flash:w:firmware-usbtiny.hex

Two versions of the firmware (and the 
boot loader) exist. Both provide the 
same functionality but are based on 
different AVR usb implementations. It 
shouldn't make a difference which 
version you use. But if you encounter 
problems it may be worth giving the 
other version a try. Please report such 
incompatibilities.

Using the boot loader
The xu1541 includes an optional boot 
loader. This boot loader has to be 
installed once using the methods 
explained above. The command 
required to flash the boot loader 
(bootldr-xxxx.hex in this example) 
using the stk200 compatible adaptor is:

avrdude -c stk200 -p atmega8 -U 
lfuse:w:0x9f:m -U hfuse:w:0xc8:m -U 
flash:w:bootldr-avrusb.hex
or
avrdude -c stk200 -p atmega8 -U 
lfuse:w:0x9f:m -U hfuse:w:0xc8:m -U 
flash:w:bootldr-usbtiny.hex

Please notice the different fuse settings 
which are due to the fact that the boot 
loader is being installed and run in a 
seperate memory section than the 
firmware. Once the boot loader is 
installed, it can be used to easily install 
the firmware itself via USB. In order to 
install the firmware on a boot loader 
equipped xu1541 the following steps 
are required:

Unplug the xu1541 
Place a jumper switch between pin 9 
and 10 of the 10 pin header (SV2) 
Plug device in, the LED should go on 
and stay on (the boot loader is active) 
Use upload tool with latest firmware: 
./xu1541_update ../firmware/firmware-
xxxx.hex 
Unplug device 
Remove the jumper switch 
Plug the device into the USB, the LED 
should flash a fraction of a second (the 
firmware is active) 
Use the device as usual 

Downloads
Till Harbaum-Impressum
 http://www.harbaum.org/till
http://www.harbaum.org/till/xu1541/in
dex.shtml 

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 
 
Telarium forgotten software warehouse
By John Ingram
 

I have finally completed my 
"recollection of eight of the greatest 
adventures from the greatest adventure 
publisher this side of Infocom. 
(Shadowkeep, Below the Root, 
Dragonworld, Perry Mason and the 
Manderin Murder, Fahrenheit 451, 
Amazon, Nine Princes in Amber and 
Rendezvous with Rama.) 

Even amongst adventure gamers, 
Telarium is barely known. This is a 
crime of huge proportions and needs to 
be rectified. 

These games are celebrating their 21st 
birthday (more or less) and in this 
world of emulation really need to be 
played by more people. When I think 
of all the adulation Infocom has had 
over the years and yet never mastered 
person to person shenanigans like Nine 
Princes in Amber. Never ever managed 
any real life situations anything like as 
well as the court case in Perry Mason 
and the Mandarin Murder, and never 
created a totally true to the original 
follow on story for a great novel of our 
time like Telarium did with Fahrenheit 
451, that is as masterful as the original 
book and is the only computer game in 
existence that can proudly sit alongside 
a classic story held in such high 
esteem.It is so sad that these games are 
so ignored today, so sad they don't 
have 1/100th the comments of much 
lesser games on the various C64 
websites. 

No. They did not release dozens of 
titles like Activision or Firebird. No, 
they did not market their titles as well 
as they could have at the time. But to 
release eight titles of such consistent 
high quality within it's genre, to bring 
these titles to market with the care and 
attention to packaging they did and to 
put the effort and time (and no doubt 
money) to make sure these titles would 
stand up in every way to the famous 
books they were based on and the 
writers of such calibre of Earl Stanley 
Gardner, Ray Bradbury, Michael 
Crichton and Arthur C. Clarke, 
Telarium knew it was taking on a huge 
challenge to produce works of very 
high quality to stand alongside well 
loved books and author's - and it 
succeeded. 

With no other titles bought or D64's 
downloaded have I ever thought, like I 
did with these Telarium titles that I 
would have been so much happier 
giving my money to the programmers, 
etc. for these titles than to the owners 
of the games now. Never ever did I 
think so hard as when downloading 
Telarium D64's that those D64's would 
not be enough. That I would want and 
need the originals, that would be my 
way of supporting these titles that 
should have been showered with 
awards at the time and should be held 
in reverence as much as any Elite or 
Alter Ego or Deadline or Enchantment. 

So I say two thumbs way up for a 
brave software publisher that took a 
huge chance and failed, but 
nevertheless left behind these great 
software titles to us and to history. 
They deserve to be remembered 
amongst the great software houses of 
the day and their titles should be up 
there with the best of interactive fiction 
and gaming in general.

History
Up to 1984, the company was called 
Trillium and produced the big 10x8 
fold over folio packages. Then it 
became Telarium and went over to 
regular box 



Packaging. Then it was taken over by 
Spinnaker Software. Telarium also 
wrote for Wyndham Classics that were 
designed for younger people. 
Dragonworld was also written for 
younger teens, although I enjoy it as an 
adult and see nothing really childish in 
it other than the puzzles are easier. 
There are rumors that titles were 
dumbed down from Trillium to 
Telarium, but I haven't seen it. I think 
it just confusing because there are no 
age ranges on the packages, you are 
just supposed to know from the 
writers/books they are associated with. 
So Dragonworld for younger people, 
but Fahrenheit 451 absolutely for 
adults. Amazon for a wider range of 
ages, but Rendezvous with Rama 
probably for a more adult market. 

All I can say is I played Perry Mason 
Trillium version way back when, and I 
am playing the Telarium version now - 
and I am seeing absolutely no 
differences that make my mind go - 
"that ain't right!" 

Also Shadowkeep is just not out there 
anywhere that I have found. Not sure it 
was ever on C64, although some sites 
say it was. I found the Apple II version 
and downloaded an Apple II emulator 
for it. Only game for that emulator I 
want - so far! But don't forget 
Shadowkeep is an RPG rather than 
typical Telarium adventure. Also 
forgot to say I am searching for Scoop 
to round out my Telarium titles, 
although not generally known as a 
Telarium game but rather a Spinnaker 
one, so didn't include it in my 
"Tribute".

Telarium went defunct sometime 
before 1989, but some of the games 
continued to be marketed by Spinnaker 
a while after that. Their excellent 
games and their beautiful packages 
make TELARIUM-products worth 
collecting.

President speaks
"Welcome to Telarium"
By C. David Seuss, President of 
Telarium, Fall 1984
"I've been a game player for years, and 
as you might expect, I've been 
interested in computer adventure 
games for just about as long as the 
computer has been around. Ever since 
the original Adventure, I've eagerly 
tried every new game that's come 
along. And I've always been frustrated. 
It's no fun when the "story" suffers 
from a distinct lack of plot and 
character development. I wanted real 
character interaction, a chance to 
encounter new worlds, deal with new 
situations. Instead, I often spent hours 
playing "guess what word the parser is 
looking for" and solving trivial 
puzzles.

Puzzles are fine, but lots of 
meaningless puzzles and the frustration 
of getting terminally stuck just don't do 
it for me. In each TELARIUM game, 
you are the main character. All the 
puzzles you encounter are ones that 
would be encountered if you were 
really there. TELARIUM is the 
expression of a would-be adventure 
game player. We've worked hard to 
produce games that aren't filled with 
the frustrations that have plagued so 
many other games, and to build in real 
plots and characters. We're not all the 
way there yet. But we're trying. Let me 
know what you think."

Links
http://www.if-
legends.org/~adventure/Telarium_Cor
poration.html
 

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 
 
Interview with Christian Vogelgsang
Creator of Diskimagery64
By Commodore Free Magazine
 

Q Please introduce yourself to our 
reader

Hi, my name is Christian Vogelgsang. 
I am a 34 year old software developer, 
currently working in a small software 
company that I founded with 5 
Collegues after leaving university. We 
are developing CAD/CAM solution, 
mainly for the automotive industry.
 
Q Where do you live

I live with my fianc‚ Simone in 
Erlangen, Germany. Erlangen is a 
small university town located near 
Nuremberg in Bavaria in the south of 
Germany.

Q What introduced you to Commodore 
machines 

Back in 1982, my father introduced me 
to the wonderful world of home 
computers by buying one of the first 
Commodore 64 computer in our town. 
Actually, the only shop which sold 
them was located in Munich and that 
was a 180 km (per direction) journey 
to reach the store.

In the first two years my dad mostly 
worked with this machine, but 
Fortunately he also bought a joystick 
and introduced me to computer 
gaming. Gaming 
Was real fun and showed what was 
possible on this fascinating machine. 
But I soon got bored with gaming 
alone and started to program with 
BASIC. That quickly lead me to the 
point where I found out that the small 
command set of version 2.0 was not 
enough to program something not 
totally boring... As a Christmas gift I 
got a Simon's BASIC cartridge that 
allowed me to start programming some 
graphics stuff. A few months later I 
bought myself the great C64 Reference 
Manual and a Sybex Assembler disk 
and book edition. This lead myself to 
assembler programming... and I still 
use this language as my favourite one 
on this machine - ok, now the tool is 
Style's Turbo Assembler or a cross 
assembler on my Mac...

Q what machines do you still own and 
what Commodore machines do you 
actively use 

I actively use a Commodore 64 setup 
with 1541 floppy. I own 5 complete 
configurations including all kind of 
different C64 models (Old Rev C., C64 
II,
C64G, "Aldi" C64) and 1541 types 
(old revs, 1541 II). I have a 1084 and a 
1084S Monitor. One setup is 


Actually connected on my desk; the 
other Ones are stored away. I use some 
modern hardware including 

the Retro Replay with RRNet adapter 
to connect my Mac to the C64 and I 
use a MMC64 cartridge To transfer 
data via SD Card.

Q Please tell our reader about 
diskimagery

DiskImagery64 is a disk editor for all 
D64, D71 and D81 image files used in 
all kind of C64 emulators and also in 
the MMC64 hardware. On my Apple 
Mac
there was always a lack of such tools 
and I initially started DI64 to fill this 
one. The disk editor allows you to 
copy files from your host (here 
Mac's)file system to a commodore disk 
image and vice versa.


I started to manage all my disk images 
I had on my hard disk with DI64. I 
added options to quickly mount such 
an image in my favourite emulator 
(here VICE) or run a selected program 
there with a single key stroke.

With the emerge of nice tools that 
allowed to transfer files or data via the 
RRNet ethernet adapter directly 
through your local home network to 
your good
old C64, I wanted to have these nice 
features directly embedded in DI64.I 
started to port code that was available 
for Windows or Linux for this task to 
my Mac and reversed engineered the 
missing network protocols by sniffing 
the network traffic between a C64 and 
the windows reference application.

Now the current release version 0.7 has 
all essential tools available: you can 
edit disk images, test the images in an 
emulator and quickly transfer the disk
images to real disks residing in the 
1541 connected to the C64 via 
Ethernet. Furthermore, you can 
directly transfer and run a single PRG 
on the C64 with a single mouse click 
on your host or share any number of 
files on your host system as a virtual 
network drive on your C64.

Q what makes this software unique? 

Its the first full featured C64 disk 
editor that is portable and runs on Mac 
OS X, Linux and Windows directly 
compiled from one source code. 
Furthermore, it has a direct integration 
of your favourite emulator on the 
system and last but not least an 
extensive set of network protocols 
implemented that greatly facilitate 
working with a real C64 connected via 
Ethernet.
Q Why would our reader wish to 
download the software what benefits 
would it give him 

If you own a Mac or Linux system, 
then you finally get a full featured D64 
disk editor for your platform. If you 
want to quickly test a large bunch of 
disk images in your emulator then you 
will enjoy the tight integration of DI64 
with e.g. VICE. If you own a network 
adapter and a real machine then DI64 
is a
Must have that contains all kinds of 
network data transfer tools from and to 
your retro hardware combined in a 
single easy usable GUI.

Q I see you released the source code as 
"open-source" does this mean our 
reader can download the code and 
make any alteration they wish?

Yes, the source is released as Open-
Source under the GNU Public License 
(GPL).This allows anyone to download 
the source, have a look at the inner 
Workings develop the source further 
and even release own work derived 
from this. In contrast to source that is 
in the public domain, the GPL 
regulates the distribution of derived 
work and for example requires each re-
user of my source to keep the 
copyright of my code parts intact and 
to release his/her source with the same 
GPL requirements. This helps me to 
have some protection of my copyright 
but also gives me the freedom to share 
my source and thus my ideas.
I greatly profit from all kinds of open-
source software, ranging from small 
tools running freely on my Mac or 
whole operating systems (Linux) 
running on my server. So releasing my 
source as open source is a way of 
giving something back to these 
generous software presents given to 
me.

Furthermore, releasing the source helps 
interested readers to better understand 
the inner workings of the software, 
gives developers a tool to identify bugs 
more quickly and to give more detailed 
bug reports. 
Finally, other developers might 
contribute new and interesting features 
that I have never dreamed of.

Q One comment/ suggestion, Would it 
be possible or is it already possible and 
I haven't found out how to
Read TXT and SEQ files from within 
the Application,
Maybe with the ability to copy the text 
and convert
PETSCII to ASCII and Vice Versa 

Currently, DI64 transfers all files as 
raw data from and to a disk image. 
You have to make sure that the file on 
your system's hard disk already have 
the
correct (PETSCII) encoding if you 
want to transfer it. That can be 
improved in future versions. DI64 
already checks the file extension and 
tries to map it
Automatically to a CBM DOS file 
type, e.g. a file named test. seq will 
resulting a CBM SEQ file called 'test'.
Q another suggestion Maybe a Geo 
write document
Viewer, extractor

Sorry, I never got really in touch with 
the whole GEOS thing. Maybe because 
I never owned a C64 mouse... joystick 
control is IMHO no way to really 
Control a GUI. Ok, I admit that I am a 
command line freak, too ;)

At this point let's hope that open 
source works as expected and an 
interested and more skilled GEOS 
developer will take my source and 
maybe add the
Requested features ;)

Q I notice you have a DTV hack 
yourself could you
Describe the design to our reader and 
what problems
you encountered in its assembly.

Yes, soldering and hardware hacking is 
also a hobby of mine. So building an 
own DTV mod really got my interest 
as it combines hardware and CBM 
hacking.

I used one of the numerous published 
build instructions available on the net 
and creating my version took only an 
afternoon. I chose to use a 
generic box case where I placed all 
connectors inside and integrated a 
small  circuit board with power 
conversion and pin outs for all 
connectors found in the case. I 
removed the main circuit from the 
joystick case and soldered wires to all 
points that need to be connected for 
power, reset, video and audio out,
Joysticks and PS/2 keyboard. 

That's the trickiest part as it requires 
soldering wires to very small contact 
holes found on the circuit board. A 
SMD soldering iron and no nervous 
hand is really of great use here. All 
wires got connectors soldered to it so 
you can now attach the main circuit to 
my connector board without any 
soldering. That allows to quickly 
remove or even replace the main 
circuit without any hassle. I own a 
PAL DTV 2 and a DTV 3, so I can 
quickly exchange them without 
soldering.

Recently, I found a very interesting 
add-on: an integrated SD Card reader 
that emulates a 1541 floppy 
(http://pontoppidan.info/lars/index.php
?proj=mmc2iec)
 and perfectly fits inside a DTV mod. I 
am currently working on its integration 
in my DTV mod, so stay tuned and 
have a look at my blog 
(http://www.lallafa.de/blog).

Q Do you read commodore Free 
magazine 

Yes, I do. I heard about your magazine 
in one of the Commodore Forum's I 
visit regularly and since then I always 
grab a PDF issue if it is released. Yes, I 
prefer the PDF version over the txt or 
disk version as reading a longer journal 
is much more comfortable with a 
decent font, a nice layout and a larger 
resolution - or maybe I am just getting 
older ;)

I always greatly appreciate all efforts 
to publish up to date information about 
our historic computing environment. 
Only this keeps the machine alive!
Q do you think there is any 
commercial worth left in
the Commodore range of machines 

To be realistic, the CBM machines 
including the Commodore Amiga 
computers are all now outdated 
compared to today's hardware and 
therefore not used in most professional 
applications. Nevertheless, with all old 
things there are few people that still 
share interest in these retro machines, 
are very enthusiastic about it and thus 
are often willing to spend money even 
today to improve their retro 
environment. This ensures the 
existence of a handful stores and 
hardware developers that still develop 
and sell new retro hardware add-ons 
(e.g. the RRNet or the MMC64). Well, 
yes it's a tiny niche compared to
the whole hardware industry, but its 
nice to see that those people actually 
can make a living from this.

Q do you have any other projects you 
are working on
Commodore or none commodore 
related 

Most computer related projects that I 
am still working on in my free time are 
either Commodore or hardware 
hacking related. My Commodore 
projects 
Include DI64 and maintaining the 
official Mac version of the VICE 
emulator. I do some experiments with 
networking directly on the C64 but 
there are currently 
No releases available.

One of my web-based projects is my 
blog, where I write up all my findings 
about Macs, the C64, VICE and its 
Mac Port and all combinations of these
topics.

My current hardware projects include 
the DTV modding and building small 
robots from construction kits. I am a 
great fan of the Lego Mindstorms kit 
and 
I am looking forward to its new 
incarnation Mindstorms NXT. 
Additionally, I built the robot that was 
presented in the german c't computer 
magazine and I am experimenting with 
different control software 
implementations.

Q From the website you seem to be 
more of an Apple/ linux user is this 
correct, and what is the benifit of the 
Linux or apple Mac operating system
Yes, definitely. I got my first 
experiences with operating systems on 
my Amiga 500 and Amiga 2000. Later 
on I switched to a PC with MS DOS 
and later Windows 3.11. It was like 
going back to stone age... no more 
large memory allocs, no more 
preemptive tasks, no flexible graphics, 
no nice shell, nothing! I was very 
disappointed and really about to sell 
my PC when I learned about Linux at 
the university. That saved my day and 
gave me back many of the things I was 
so desperately missing. From then on I 
use Linux on all my PC-based 
computers.

Later on I wanted to have a mobile 
computing platform and with the 
release of Mac OS X (the first unix-
based Mac OS) and Apple's really well 
thought 
Out portables design it quickly 
convinced me to buy my first 
Powerbook. Since then I absolutely 
prefer my MacBook Pro over every 
other modern 
Computer, because of its unique 
combination of a powerful unix based 
operating system with real multi user 
support, all the nice unix tools (shell, 
compilers,
scripting languages, ...) and all that 
wrapped up in a very elegant and 
comfortable user environment.

Q people have tried porting Linux to 
the Commodore
machines have you tried any of the 
versions and would you like to 
comment on them?

A few years ago, I played a little with 
Lunix on the C64. It was a nice 
approach to bring the philosophy of a 
unix system back on a 8 bit platform. It 
proved that bringing unix is possible 
but also showed that the 
Constrained memory poses extra 
difficulty in porting for example 
existing tools.

 As Lunix lacked real applications and 
only provided some OS tools, general 
interest was unfortunately not too high 
and soon faded away. Nevertheless, I 
nice  project
and it really gave a the great feeling of 
having a real shell on the  C64 ;)

Q is there any question you would 
have liked to have
been asked

Maybe, "Do you regret spending so 
much time of your life for free with 
hardware that is almost as old as you?" 
- That would be a clear: NO - je regret 
rien!

Q If you were given 1 million pounds 
what would you do

Puh, a difficult one at last! First of all 
I'd like to build a house for my soon-
to-be-wife, myself and my family later 
on. A larger part will be saved
and also charitable donations will not 
be forgotten. Finally, new and old 
hardware needs always to be updated ;)


Commodore Free
Thanks for the interview
 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 

********************************
* Mini Games Competition *
********************************
 
http://www.minigamecomp.org.uk/
 
FAQ
 
Q: What's this about a "moderator"?

A moderator is responsible for 
verifying that the program meets 
submission/size requirements, that it 
works in an emulator, and so on. If you 
would like to see a platform 
represented (or would like to 
volunteer! Yeah!) please email the 
organizer and we'll work something 
out!

Q: Can moderators submit entries?

Absolutely. As long as a submission 
meets the requirements, it may 
compete.

Q: I'm writing a game for multiple 
platforms. How should it be 
submitted?

The general idea is one game, one 
vote. Therefore, please pick a version 
that you'd like to compete, and place 
the rest in the "extras" area.

Q: I'm concerned about 24/7 voting. 
Will people vote consistently over 
time? What if someone updates an 
entry? As a competition, should we 
even be able to download games early, 
let alone vote?

The votesheet is just a piece of paper 
for keeping notes. You still have to 
submit it, at the end of the contest, 
when you're satisfied with it. If 
someone updates an entry -- well, after 
you play that updated entry, you can 
update your votesheet. Finally, as to 
being able to download, I believe that 
downloading games during the contest 
stimulates interest in the contest, and I 
don't believe it has caused any issues 
the last two years. And, of course, 
there are just too many entries. So, I 
suggest trying the votesheet this way, 
and if we find it causes problems we 
can do something different next year. 

Q: Please clarify the rule about starting 
with RUN.

The general idea is that the game 
should be started in the standard way 
for the platform, whatever that may be. 
On a Commodore machine and the 
speccy, it's LOAD followed by RUN, 
on a CP/M or MS-DOS machine you'd 
just type the name of the executable on 
the command line.

 So no loaders (they count toward the 
size), the user 


shouldn't have to type any special 
commands to start (like SYSxxxx on a 
C=), and so on. Autostarting 
executables are OK. This makes life 
much, much easier on those trying to 
run (and judge) the programs.

Q: My platform has a big header and is 
at a disadvantage.

Actually, the header losses are all 
about the same. More broadly, every 
platform has some dead weight in the 
executable, including differences in 
sprite 


sizes, bitmaps, screen clearing, CPU 
architectures, system resources, etc. 
The competition will never be 
"fair". The computers are so different 
in their capabilities that it's impossible 
to create a perfectly level playfield. 
The computers have different 
strengths, and different weaknesses. Be 
creative, 
use nasty tricks, and make as good a 
game as you can in 1K or 4k.

Q: But...

It's a nightmare. Consider the CPC 
AMSDOS header -- 128 bytes. Most of 
that, however, is empty, and 
programmers routinely store code and 
data in it. Checking that this header 
doesn't contain code/data is a truly 
awful prospect; by contrast, including 
headers gives around a 10-byte penalty 
-- just like pretty much every other 
platform. Let's say you take away the 
header restriction. Commodore 64 and 
Speccy files do not autoboot, so they 
need a BASIC program to start with 
RUN. 

Now you need to either not count the 
BASIC header, or else remove the 
RUN restriction. Now life is tougher 
on users, so maybe external loaders 
should now be allowed -- can we put a 
title or other information in the loader? 
Then, of course, C64 programs also 
store a two-byte load address in the 
file, so maybe that shouldn't be 
counted. And in the first contest MV 
stored the score in the BASIC line 
number, so maybe that should be 
counted after all. But if you want to get 
really technical, then the file structure 
includes... But then this obscure 
computer has... But compared to this 
other computer it... And remember, 
this makes life much, much easier on 
those trying to run (and judge!) the 
programs, especially on unfamiliar 
platforms.

Q: But...

It's like representative democracy: it's 
not that it's the best system, it's that it's 
the least worst system.

Q: How do I determine file size?

Commodore 64: Extract from a .d64 if 
necessary, then ls -l (unix) or dir (dos) 
-- i.e. memory plus two bytes. Speccy: 
the .TAP file can be at most 25 bytes 
more than the size limit imposed by the 
category (basically it's the memory 
used: the 17-byte header, data block 
byte, and checksum do not count, but 
the BASIC header etc. does). CPC: 
Use CAT. NES and 2600 cartridges: 
The .NES file header is NOT counted. 
The 6502 interrupt vectors are. 
Otherwise, all unused bytes must be set 
to zero. Apple 2: Files should be 
submitted on a DOS3.3 .DSK image. 
The file size is the 256 times the 
number of sectors minus one. For other 
platforms check the forum or ask the 
moderator. If there is no moderator, the 
organizer.


Q: I'd like to make an Atari 2600 VCS 
game, but the minimum cartridge size 
is 2K.

Use the last 1024/4096 bytes of the 
cartridge, fill the rest with 0s, and don't 
use the 0s as data (or code, but I don't 
know what a lot of BRK would be 
good for). (And we'll find you a 
moderator, if you really do want to 
submit a 2600 game!).

Q: Can I submit previously written 
stuff?

Yes, as long as you've written 
everything yourself. You are for 
obvious reasons not allowed to use 
other people's material without their 
express permission. This includes 
graphics and tunes (i.e. ripping is 
verboten). Standard things like 
compressors and assemblers are fine of 
course. 

Rules

All entries are welcome, the 3 size 
categories will be held seperate from 
one another, though they can be 
submitted at any time up until they 
closing dates.

The file size is the size of code+data as 
is natural for your system - i.e. 
emulator only data is not included.

The following is this years sizes

1kbyte (1024 bytes max)

2kbyte (2048 bytes max)

4kbyte (4096 bytes max)

Screenshots should be of the actual 
game, as there is no point in 'doctoring' 
the picture to make game look better, 
people will play them. 

Forum discussions that may influence 
votes are to be avoided.

Keep the games clean of porn, 
profanity etc. 

The games must be submitted using a 
common emulator format.

Any excess fileformat space should be 
filled with 0's - i.e. the NES's 
minimum INES fileformat size is 16k 
so for 1k, 15k is filled with 0's.

The Data+code must be in one 
continous block, not seperated in 
different sections of the Rom/Bin. 

It is your responsibility to submit a 
game screenshot and description for 
the webpage.

Entries should use standard 
hardware/software features of their 
system and not require extra 
hardware/software features, though 
something like ram expansion is 
allowed along as it is stated in the 
games instructions.

Compression may be used, as long as 
the decompressor is stored within the 
game. 

No FLASH/Web page based games are 
allowed in this competition. Last year 
we have had an entry which was done 
in Flash, which we could not accept. 
Any games like this will not be 
evaluated.

Most important of them all. Have loads 
of fun programming your game for this 
compo. 

1k category, this will run until 31st 
July 2007, 10pm GMT time
the 2k size category will run until 
August 31st, 10pm GMT
the 4k size will run until September 
30th, 10pm GMT 



-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-  
     
 
 
Interview with Robert Guite
From the "Mini games website"
 

Q - who are you please introduce 
yourself

I'm Robert Guite and have been with 
the competition since 2002, i took over 
running the site in 2005 and gave it a 
specific web address though its been 
available via the pointer address 
http://ffd2.com/minigame/  regardless 
of where it previously been hosted.

Q - how many people work to maintain 
the project

The actual site side, just me and 
Richard but there are platform 
moderators who's job is to check 
entries are valid.

Q - What machines are included in the 
competition?

Any 8bit machine can enter.

Q - What machine do you receive the 
most entries for

That fluctuates to the category and the 
year but Atari 2600, c64 and spectrum 
always have a healthy turn out.

Q - Is the competition purely the result 
of the
moderators or can anyone vote

The voting is open but the votes are 
checked for any suspicious 'vote 
rigging' before they are tallied up to 
give the final result.

Q - Obviously with this being a 
Commodore magazine  Ihave been 
looking at some of the older years 
entries for the Commodore 64 
versions, they are to say the least very 
impressive do you have any comments 
to the software quality

The quality of all games in general is 
good, though some platforms suffer 
more at low files so appear low quality 
or the programmer is new and not 
experience (or both) but I believe 
everyone tries well with their own 
particular entry.

Q - I looked at the 1k entries and they 
are very nice
games some with sound I don't like to 
single out one
game but I was impressed by Kilodium 
from "
Aleksi Eeben" the game is smooth and 
very nice on the eye

All the entries are nice, the computer 
systems in particular highlight  what 
can be achieved in this file size 
category.

Q - Are all the past years games 
available for
download

Yes since I've been running it, though 
currently the 2001 games is not but 
will be soonish along with the 2002-
2004 games (currently available on the 
previous years links).

Q - Come on you must receive some 
rubbish please
enlighten us

It is a matter of opinion of which are 
good and rubbish so I leave it to the 
people looking at the games to decide 
as everyone has preferences.

Q - How would our reader enter the 
competition?

They would simply write a game to 
one of the size categories (this year is 
1,2 and 4k) and then fill out the submit 
form and place the game in a zip file 
and submit it.

Q - Who are the moderators and how 
are they chosen currently they are:
Spectrum - Paolo Ferris
Sega - Maxim
Commodore 8bits - Richard
Nes, GB, Atari 2600 and MSX - 
myself.
Anybody can volunteer to be a 
moderator, they just need to be willing 
to do the job and within a reasonable 
time span to get back to me on 
Whether the game is valid.

Q - What does the winner receive in 
the way of a prize

There is no prize and never has been, 
the competition is run in the spirit of 
fun and the real competition can be 
seen as improving your coding 
skills and bettering your previous 
games if you've done one before.

Q- Does every entry appear on your 
website for
Download

Every game that is valid (which i 
believe all have been for the past two 
years) is featured for download.

Q - Can all the games be played on real 
machines - how is this possible when 
some of the machines are console 
cartridge only

In most cases yes, but in the cases of 
the consoles they may or may not as 
they generally require some form of 
homebrew hardware cartridge to allow 
them to be played on hardware which 
not everyone may be able to get/make, 
certainly i believe the atari 2600 games 
do as they have quite a healthy 
community and hardware is available 
to buy.

Q - in your opinion as the games size 
increases 1K 4K8K does the quality 
increase ?

It depends on the authors and what 
they're trying to do, they may 
concentrate on more levels than say 
making it more pretty or it maybe the 
same as a 
1k game, but written by a less 
experienced author, in which case the 
quality may be very good for that 
particular person.

Q - Why the file sizes of 1K 4K and 
8K?

The file sizes change from year to 
year, that was just the sizes picked for 
last year.

Q- what machines do you own and do 
you have any
Commodore equipment

Nowdays, a pc, a gameboy advance 
and a gamecube - I've never used a real 
commodore.

Q - Mini games? Why and whose idea 
was the project

I believe Matthew Westcott started the 
original idea as a competition between 
the commodore machines and 
spectrum ones, who I'm not 100% as 
the original site is no longer available.  
It was then taken on by MagerValp 
who opened it up to other 8bits in 
2002, 2003 to 2004 Steve Judd ran the 
competition and finally I took over, 
though the rules have stayed fairly the 
same.

Q- Have you any tips for programmes - 
and do you have any game that is 
overdone?

Try to be creative and try for a fun 
game, in most cases that will score 
better than a pretty but limited game. 
Tetris games have been produced quite 
a bit, and many scoring will be a bit 
negative towards 'another' one.

Q- Would you like to see more of a 
certain game for
Example more run and jump games

Myself, I prefer platform games, but 
they are not particularly easy I know to 
produce in the file size categories.

Q- Is there anything you would have 
liked to have been asked?

I think that probably covers 
everything.

Q - What would you do with 1million 
pounds :-)

I would buy a house, spend some and 
put the rest in the bank for savings and 
security :) house taxes aren't cheap!
 

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 

Mr. LOADSTAR's 
Introduction to Programming 
the Commodore 64 Part 1
By Dave Moorman
 

Introduction

The best place in the world to learn 
and enjoy the art of computer 
programming is on the C-64. It is an 
old machine, and therefore a lot less 
complex than today's computers. It has 
BASIC 2.0 built-in, plus many 
Machine Language (ML) routines that 
can be used from BASIC. 

The processor is the MOS Technology 
6510, a member of the 6502 family, 
which is very efficient. And the C-64 
was designed to be adaptable on many 
levels.

But mostly, it is inexpensive. A real C-
64 is always available on Ebay. Or, get 
the C64DTV and do some hardware 
hacking to add a disk drive and 
keyboard. Or download the Versatile 
Commodore Emulator (VICE) from 
the web for free. Whichever way you 
go, you have a great platform for the 
kind of programs one person can sit 
down and write. And you can write 
them just the way you want.

I am going to make some assumptions. 
First, I must assume you have a C-64 
and a disk drive or VICE. I assume you 
know how to format a disk (on a real 
machine) or create and attach a disk 
image (with VICE). I even must 
assume that if you are using VICE, you 
know the different keys you must press 
for certain characters.

I also assume that beyond knowing 
how to LOAD and RUN a program, 
you have no idea how to go about 
writing one.

That is what we will do in this series of 
articles. So, fire up your C-64. Get a 
new disk ready. Because HERE WE 
GO!

I DREAM OF GENIE IN A LIGHT 
BROWN BOX

On the blue screen, you see, in light 
blue, the word READY. Under it is a 
flashing block. This is the cursor. You 
are probably know what a cursor is, 
but just to make sure here is a 
definition. The cursor is the place 
where the next character you type will 
appear on the screen. 

Press [Home] and the cursor goes to 
the upper left corner of the screen. You 
can use the cursor keys to move the 
cursor around the screen. On the real 
C-64, you have two cursor keys -- 
[Down] and [Right]. Press [Shift-
Down] to go Up, [Shift-Right] to go 
Left. (VICE has it much better -- four 
keys!) I will refer to Cursor Up, Cursor 
Down, etc. You will get used to using 
the Shift!

Now press [Shift-Home]. This is [Clr], 
since it Clears the screen. Cursor 
around a bit to get used to it. Now, 
crack your knuckles, stretch, and 
prepare to meet the Genie!

Inside your computer is a magic genie 
who will perform any command you 
give it. Try it. Type:


DO MY TAXES

Nothing happened? That is because the 
genie doesn't know you are finished 
typing. With the cursor flashing on the 
same line, press [RETURN].

?SYNTAX  ERROR
READY
[]

Syntax Error" means "Huh? I don't 
understand." Fortunately, the genie is 
always forgiving. See, it is ready 
already.

The problem is that the genie 
understands only a few commands. 
You must spell the commands 
correctly -- because this is a stupid 
genie. So try this:

?5+9

And press [RETURN]. (I won't 
mention it again. Whenever you are 
done typing, press [RETURN].)

 14
 
Pretty clever. What should we call a 
magic genie that is really good at 
computing math problems? Anyway, 
the Question Mark means Print. You 
could type out PRINT instead, but why 
not just use the single character?

You might have noticed that there is a 
space in front of the 1. That is to leave 
room for a minus sign, should one be 
necessary.

?5-9
-4

We have multiply and divide as well:

?16/2*3
 24

The [/] is Divide, [*] is Multiply. 
When the genie does math, it always 
multiplies and divides first, then adds 
and subtracts. For example:

?3+2*5-1

does not equal 20.

 12

That is because 2*5 is calculated first, 
then 3+10-1, which results in 12. 
However, you can force one 
calculation before another.

?(3+2)*(5-1)
 20
There. Calculations in parentheses are 
always performed first. So, 3+2 = 5, 5-
1=4, 5*4=20.

So, you have a calculator. Big deal! 
But wait. [?] means PRINT. What else 
can we print?

?YOUR NAME
0

Ok, I fooled you again. Letters are 
used as VARIABLEs -- little boxes 
that contain values. The genie thinks 
you want to print the contents of a 
variable. But you want to print, 
literally, "YOUR NAME".

?"YOUR NAME"
YOUR NAME

I hope you used your own name! This 
time the genie printed out exactly what 
was between the double-quotes. If you 
did not use double-quotes [Shift-2] you 
probably got a SYNTAX ERROR. But 
if you were wrong, don't fret. The 
genie is always READY for you to do 
it right.

The characters between the double-
quotes are said to be in a STRING, 
because they are strung together. In 
this case, it is a Literal String. What 
other kind of string is there?

N$="YOUR NAME"

And when you pressed [RETURN] 
nothing happened? Do this:

?N$
YOUR NAME

N$ (pronounced "N string") is a String 
Variable. It is a box that contains a 
string. We also have Numeric 
Variables

N=1234

READY.
?N
 1234

N and N$ are two different variables.

?N$,N
YOUR NAME  1234

Variables always begin with an 
alphabet character (A-Z) and can be 
one or two characters long. The second 
character can be alpha or a number. A, 
AB, P0, S5, and RX are all numeric 
variables. String variables have the 
dollar sign after the characters. A$, 
AB$, P0$, S5$, and RX$ are all string 
variables. Remember to pronounce the 
dollar sign as "string."


IMMEDIATE 	vs. PROGRAM: The 
Battle of the Modes

All this is fine and dandy, but so far we 
have nothing much more than a fancy 
calculator. That is because we have 
been working in IMMEDIATE Mode. 
That is, when you press [RETURN], 
the genie responds immediately. But 
we have another mode. Try this:

10 N$="AMOUNT TENDERED"

Nothing happened, not even the 
READY. Actually, a lot happened 
inside the machine. 

Back in 1976, Bill Gates and Paul 
Allen wrote the first BASIC operating 
system for the Altair 8800 
microcomputer. Memory was 
expensive and at a premium. So a 
clever idea was developed to indicate 
whether what was typed was to be 
computed immediately, or put into 
program memory.

If the first character(s) of a line are 
numeric, the line is considered 
Program Mode. The text is placed into 
Program Memory, organized by the 
"line numbers." To look at what you 
have in your program, input

LIST

You will see...

10 N$="AMOUNT TENDERED"

Add two more lines (press [RETURN] 
for each):

5 N=35.75
20 ?N$;N

Now list the program again.

5 N=35.75
10 N$="AMOUNT TENDERED"
20 PRINTN$;N

You have just written a program! To 
watch it work, input

RUN

You should see:

AMOUNT TENDERED 35.75

This is just a beginning!


SAVING AND LOADING YOUR 
PROGRAMS

Now that you are an honest to 
goodness programmer, you will need 
to save your program to your disk 
(presumably in drive 8 and formatted). 
The quick way is to input:

SAVE"MYPROG",8

The filename is "MYPROG" and you 
are saving it on drive #8. File names 
can be up to 16 characters in length. 
You can verify that the program has 
been correctly saved with:

VERIFY"MYPROG",8

But this is usually not necessary, if 
your drive and disk are in good 
condition. Now you can turn your 
computer off, turn it back on, and load 
your program:

LOAD"MYPROG",8

then

LIST

and

RUN

Now for some tricky stuff. If you 
change your program, you cannot 
simply save it to the same file name. 
The file is already on the disk and must 
be scratched first. BASIC 2.0 does 
have a SAVE@ command, but this has 
proven to be buggy, so don't use it! 
You can save your changes to a 
different filename:

SAVE"MYPROG1",8

But we at LOADSTAR have a more 
excellent way. The following code will 
not make a lot of sense to you, but that 
won't be a problem. Once you type it 
in exactly as shown, you will have a 
SHELL program you can use for all 
your programs. Type:

NEW

To clear your memory, then enter these 
three lines:

60000 N$="SHELL"
60001 
OPEN1,8,15,"S0:"+N$:CLOSE1
60002 SAVEN$,8

Once you have entered these lines 
(Pressing [RETURN] after each), 
input:

GOTO60000

The program, named "SHELL" will be 
saved to your disk. Whenever you start 
a program, first

LOAD"SHELL",8

LIST it, and change the string in line 
60000. One of the neat things about the 
C-64 is its screen editor. To edit a line, 
all you have to do is list it,

LIST60000 

Move your cursor up to the place you 
want to edit, and type over the text. 
Pressing [RETURN] (regardless where 
it is on the line) will put the edited line 
in memory. So when you start a new 
program, make line 60000 read:

60000 N$="NEW NAME"

whatever the new name might be. Then 
do the GOTO60000.

A bit of history here. Long ago, I was 
working on three interrelated programs 
(I will call them PROG1, PROG2, and 
PROG3). I had just made some 
corrections in PROG3, but accidentally 
saved it as PROG1. Suddenly, PROG1 
was gone. Hours of programming went 
where all bad little files go. I realized I 
needed a better way!

My answer was to create a "scratch 
and save" routine, with the program's 
name embedded in the program itself. I 
chose line 60000 since BASIC only 
handles line number between 0 and 
63999. Being line 60000, the routine is 
always at the bottom of the program. 

If some mistake or glitch messes up the 
code, my line 60000 will be garbled 
and I won't be able to save the 
gobblety-gook. (There is nothing 
worse than accidentally saving 
corrupted code. You are very unlikely 
to revive it. It is an occasion for a 
grown man to cry!)

With this routine, every time I save 
every program, I use exactly the same 
"command:" GOTO60000. My fingers 
know this command by heart. Now as I 
write, I do a save after entering every 
few lines, and especially before I run 
my program. I later learned that the 
gurus at LOADSTAR had come up 
with the same trick, except they used 
line 10000. The particular number 
doesn't matter much -- just use the 
same line number all the time.

Here is what the routine does. First, 
you put the program filename in N$. 
Then, you use a disk command to 
scratch the filename. Lastly, you save 
the filename. Again, we will get into 
the specifics later in this series. For 
now, just use "SHELL" (and change 
line 60000) to begin all new programs.

READING THE DISK DIRECTORY

Corners had to be cut to put all the 
power of BASIC 2.0 in a minimum of 
memory. Once such corner is that there 
is no Directory command. To see what 
is on the disk, you must

1.	Save what you are doing (if 
anything)
2.	LOAD"$",8
3.	LIST

You will see something like this:

0 ["DISK NAME             " 98 2A]
1    "MYPROG"                 PRG
1    "SHELL"                  PRG
 
The top line (in reverse) is the disk 
header -- the name you gave the disk 
when you formatted it. The number to 
the left on the next two lines is the 
Block Size of the file. A disk block is 
254 bytes in size -- and a 1541 disk has 
664 blocks available. Following the 
block size is the filename. At the right 
is the type of the file. PRG means 
Program. The last line tells how many 
blocks are available on the disk.

Once you have looked at your 
directory, you can reload your 
program. Clumsy, yes -- but clever. 
The directory uses the same code as a 
program list, which saves memory. 
The only hassle is that looking at the 
directory destroys whatever you have 
in program memory at the time. But of 
course, you DID save it. Right?

BACK TO BASIC

It is time to get back to the task at hand 
-- learning how to make the computer 
do your bidding. Load up SHELL, list 
line 60000, and change the name to 
"HELLO". You must be as tired of the 
all-caps as I am of typing all-caps. 
Press [C=-Shift] (that's [Commodore 
Logo-Shift]) to switch to upper/lower 
case characters. Let's get to work!

10 ?"[clr]"
20 ?"[down]"
30 ?"Hello, World!"
 
run

There you go! If you list your program, 
you will notice that the "?" 's have 
become PRINT. And PRINT is a very 
powerful command in BASIC! When 
you press the double-quote, the 
computer enters Quote Mode. 
Anything you type (other than 
[RETURN] or ["]) will be embedded in 
the string. So, [clr] means [Shift-
Home], and it clears the screen. [down] 
is the Cursor Down key.

You can also insert text color changes 
right in the string.

30 ?"[ctrl-1]H[ctrl-2]e[ctrl-3]l[ctrl-
4]l[ctrl-5]o, World!"

With this, each character in "Hello" 
will have a different color. Here are the 
various color controls (which may be 
printed on your number keys:

CTRL			Commodore 
Logo
1	Black			1	
	Orange
2	White			2	
	Brown
3	Red			3	
	Light Red
4	Cyan			4	
	Dark Gray
5	Purple			5	
	Med. Gray
6	Green			6	
	Light Green
7	Blue			7	
	Light Blue
8	Yellow			8	
	Light Gray

While we are talking about colors, we 
must say we do not have any BASIC 
command to change the background or 
border color. However, we do have an 
all-purpose command that puts 
information right into memory -- 
POKE. And the color of the screen 
background and border are controlled 
by two locations in memory:

53280 - Border Color
53281 - Background Color

So, 

25 poke 53281,14
26 poke 53280,0

will change the background to light 
blue and the border to black. The 
numbers you poke for color are

0 - Black	8 - Orange
1 - White	9 - Brown
2 - Red	10 - Light Red
3 - Cyan	11 - Dark Gray
4 - Purple	12 - Med. Gray
5 - Green	13 - Light Green
6 - Blue	14 - Light Blue
7 - Yellow	15 - Light Gray

As in Immediate Mode, you can print 
strings (literal or variables) or values 
(constants -- the actual numbers -- or 
variables). Numbers are printed with a 
preceding space and followed by a 
cursor right. Strings are printed exactly 
as they appear between the double-
quotes. This is a good time for you to 
play around with the PRINT 
command. We can print several things 
on the same line by using the [;] (semi-
colon) as a separator.

29 n$="Dave"
30 ?"Hello, ";n$
31 age=57
32 ?"You are";age;"years old."

Normally, the PRINT command adds a 
"carriage return" at the end of each 
line. This means that the cursor moves 
down to the next line and to the left 
edge of the screen. A semi-colon 
"defeats" the carriage return. 

So, if you want to print several things 
on one line but with different PRINT 
commands, put a semi-colon after the 
first printed line. Change line 30 above 
to add a semi-colon after n$, and see 
what happens. You will have to insert 
a space on line 32 by placing the 
cursor over the Y and pressing [Shift-
Ins/Del] -- to add the space between 
the name and then next sentence. You 
can use a comma rather than the semi-
colon, and the cursor will be moved to 
the next "tab" column. Try it out and 
see how it works. Another way to put 
the text where you want it on a line is 
with TAB.

40 ?tab(15)"This is nearly centered"

Again, the only way to become 
acquainted with the commands and 
controls is to play with them. We have 
a whole slew of graphics characters 
available by pressing the C= 
(Commodore Logo) key and a letter 
key. Try them out. See if you can draw 
a box. Another fun exercise is to 
develop large letters:

50 ?"[c=-r][space][c=-r][space][c=-r]
51 ?"[c=-q][shift-*][c=-
w][space][shift-minus]
52 ?"[c=-e][space][c=-e][space][c=-e]

You can create almost any letter using 
[C=-Q], [C=-W], [C=-E], [C=-R], [C=-
A], [C=-S], [C=-Z], [C=-X], [Shift-*], 
and [Shift-minus] in three layers. The 
embedded graphic and control 
characters are incredibly difficult to 
write about, so I will leave such things 
up to you. I am here, after all, to show 
you how to program!
And program we will! So, play around. 
Have some fun. We will do some 
serious computing in the next episode!

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 

The New Dimension  Proudly presents
DMC Music Compo 2007
 

Introduction:
C64.SK had originally launched the 
SID compo which is every year. I 
thought it was about time that I done 
another competition. No SEUCK or 
Crap game competition this time. It is 
a cool music competition. If all goes 
really well, I might consider to do 
another compo of the same thing. Later 
on this year, but this time with JCH 
music editor :oD. 

So why is it a DMC compo, nothing 
else? Well it is mainly because I have 
used DMC in the past and present and 
still will use it as always. The DMC 
music composer tool really brings the 
heart to C64 music. You can compose 
cool types of style and sounds with 
DMC's varied sound settings. 

Plus it is also to bring back the kind of 
traditional style of C64 music. Using a 
C64 program instead of a cross 
platform music composer. :o) DMC 
has always been part of my pride of 
composing music on the C64. I've 
always loved it. 

Aim of Compo:
The aim of this compo is to arrange 
and compose a masterpiece of music 
for the Commodore C64 using the 
Demo Music Creator in any form of 
style you like

Compo rules:
Simple really. All you need to do is 
compose music in one of the following 
music editors, which are as follows (on 
this .D64):

Dmc V1.2 
Dmc V2.0 
Dmc V4.0 
Dmc V5.0 
Dmc V7.0 

or which other DMC music creator 
(The higher version the better) you can 
find to arrange and compose your 
masterpiece. You will have until 30th 
April 2007 to arrange and compose 
your track. It can be anything from 
C64 old school jazz to c64 
Techno / trance or if you wanted, death 
metal YEAAAAAH!. Chose your style 
and enjoy composing.

You are NOT allowed to compose any 
cover tunes.

Your tunes are NOT allowed to have 
rude names

Do NOT mix other people's demo 
tunes and call it your own. 

You are welcome to use any demo 
tunes that support the music editor 
(Best thing for newbies) else refer to 
my DMC tutorial on the TND web site 
:o)

The playing time of your tune does not 
matter at all although we will 
appreciate that your entry is at the most 
5:00 minutes long and at the least 2:00 
minutes. 

Submitting entries:
You can submit your entry in two 
ways. Either via email to Richard or 
through private message on the TND 
forum, CSDB or Lemon64. You entry 
can be as SID or C64 PRG inside a 
.D64. Although we will do 2 versions 
of the tune. When you submit your 
tune please include the following 
information:

Name of tune:
Author:
DMC version:
Playing time:
SID type: (Old or New)

Nothing else. 

Deciding the winner:
The winner will be decided by using a 
voting poll. The voting poll will only 
stay for 4 weeks after the closing date. 
Then the winner will be announced

Compo entries:
Will be available as we soon receive 
them

Compo dates:
Compo starts: 21st March 2007 and 
closing date is 30th April 2007
Voting will start on 1st May 2007 and 
close on 1st June 2007 where the 
winner will be announced and have a 
.D64 prize emailed to them.

http://www.redesign.sk/tnd64/DMCco
mpo.html

 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 
Commodore are Back!
Interview with Michiel Kroder 
from Commodore Gaming
 

Q - Please can you introduce yourself 
to our reader

'Hello Commodore Free readers. My 
name is Michiel Kroder. I'm a bit of a 
game fanatic that got his real start at 
gaming with the C64. I studied 
Creative Writing and graduated BA 
and now I am lucky enough to work as 
a Content Manager for Commodore 
Gaming.' 


Q - How many people work for 
Commodore gaming

'It might be hard to believe, but up 
until now Commodore Gaming 
consists of no more than 7 energetic 
young men.'

Q - What connection are you with the 
commodore of old

'Frankly, our only connection with the 
Commodore of old consists of our 
shared fond memories of playing 
Bubble Bobble and Ghosts 'n Goblins  
till deep into the night, waiting ages for 
cassettes to load and our love  for the 
brand overall.To our great pleasure, it 
seems like there are possibilities to 
form alliances with Commodore 
veterans, however.'

Q - Do your staff remember the 8 bit 
Commodore
machines and the Amiga, did you 
personally own one of these machines 

'Of course we do. If one of us did not 
remember the C64 or the Amiga or did 
not know what these pioneering 
machines were all about, then that
person would not have been hired. My 
own mom and dad did not let me have 
a C64 or Amiga, but I was good 
friends with the kid from the 
neighbours and would be over at their 
home all the time, to play.'

Q - At work I placed an A4 picture of 
the chicken head logon on the wall 
with the words Commodore, you 
would be surprised  out of all the staff 
how many people owned/ 
Remembered or recognised the name 
with comments like "are they still 
producing machines" and " i owned a 
XXX commodore it was a great 
machine" would you like to comment 

'Commodore has made a great impact 
on so many lives in a way that goes far 
beyond the regular experience of a 
brand. For so many people, the
C64 was their first introduction to 
computing and the Amiga was just 
really ahead of its time. It's 
intimidating sometimes, but we hope 
to live up to the Commodore legacy, in 
our very own way.'

Q - Do you own the Commodore name 
and chicken head logo C= 

'Yes we do, but only in relation to 
gaming. Everything else is  
Commodore International's terrain.'

Q - Commodore as a PC surely this has 
all been done before why are your 
machines different

'First of all, the mentality with which 
we enter the market is wildly different. 
All 7 of us are gamers, with 
different taste and expertise. Our cases 
and their internal parts are designed 
and configured in a way
that a true PC gamer would assemble 
and modify his or her own PC. This 
further extends to the degree of 

customization we offer, where a buyer 
can choose out of a never seen before 
variety of case designs that will be 
burned into the cases themselves, in an 
exclusive manufacturing process. We 
offer this service at a very low cost and 
there will be plenty of Retro C64 
designs to choose from! :) 
Furthermore, in a short time span we 
have developed good relationship with 
major players in the PC industry, and 
we have agreements that ensure we 
will have new top-level components 
(including CPU,
Motherboards and Memory), before 
anyone else has them. We also believe 
we should be easy on gamers' wallets. 
That's why we are confident we can 
outprice most, if not all, of our 
competition. And lastly, we'll have a 
few surprises and exclusive, innovative 
technology (Ice Cube cooling on the 
power supply) up our sleeves.'

Q- I notice you load a Commodore 64 
emulator on your machines, why not 
other emulators, like Amiga etc what 
emulator is  supplied with the machine 
and what games, how did you 
negotiate the Copyright for the games 
and emulator

'Well, unfortunately... Commodore 
does not own the rights to Amiga 
anymore, since, I believe, the mid 
nineties. Maybe in the future, we will 
be able to do something about that. I 
can't give you a final list of C64 games 
that will be on there, just yet. But I 
know that many Epyx and System 3 
titles are among them. We are working 
with a UK company named Ironstone, 
that owns the rights to this collection 
of  games now.'

Q - Please tell us about the machines 
what
Configurations are available and how 
would our reader purchase one, will 
the machines be sold in local electrical 
retailers

'The configurations can be found 
here...
http://www.commodoregaming.com/pc
shop/Game+PC/Gaming+PC+overvie
w.aspx From halfway through April, 
the webshop will be up and support the 
UK, France, Germany, and Benelux. 
Late may the Commodore Gaming PCs 
can be found in electronic shops and 
chainstores, even.'

Q - Commodore to our readers 
represents innovation, true some of the 
machines had various problems but 
they were innovative would you like to 
comment

'Oh... Oh... Oh..! I know what you are 
trying to say! You mean we aren't  
innovative? !:) In all seriousness, the 
old Commodore was not just 
innovative but pioneering. They played 
a large role in creating the home 
computer / pc business. Our current 
innovation, technology wise, lies in 
small things. But our real innovation 
lies with the mentality with which we 
approach the market. We are not some 
guys in suits employing gamers to 
make sure 
They have a cutting edge, trendy 
product, coupled with cutting edge, 
trendy marketing... We are these 
gamers ourselves.'

Q - Do you have further plans for the 
Commodore name -"portable TFT 
screened version fo the Commodore 
64/128 for example"

'It's our intention to revisit the old 
technology and build something new 
out of it, somewhere down the line. 
And when we will start our business 
and re-establish Commodore as a 
major force, we will have so many 
more possibilities to do so.'

Q - Many of Our readers still use the 
Commodore 64/
and 128 as there main machines web 
browsing and email are possible on  
these Computers, new games appear 
regularly, what would tempt these 
users to upgrade

'Well, to be fair, we are aware of the 
fact that many Commodore fans shun 
today's mainstream PC technology and 
really don't expect any of them to 
upgrade, if they are fine with using the 
old machines for day today activities. 
But, as fellow Commodore fans, it is 
important to us that the Commodore 
community appreciates and supports 
what we are doing right now: To bring 
the C= back in the limelight, which it 
so much deserves.'

Q - To many of our readers "ibm 
compatable" and
"microsoft" are words of the devil, did 
you expect
this attitude for Die hard users of the 
8bit range

'Oh yes. It was a reservation some of 
us had to overcome as well. We 
thought long and hard, but came to the 
conclusion that it would be instant 
suicide to come out with a home 
computer with its own architecture, 
chipset and OS in today's PC climate. 
To enter the High End Gaming PC 
market is the most natural and up to 
date way to us to bring Commodore 
back, right at this moment. And like it 
or not, most games run on Windows. :) 
Once again, though: If we will be 
successful in our efforts to bring 
Commodore back to the forefront (and 
things are looking good), it will give us 
much more space to revisit the old 
technology and give back to the fans. 
After all, they helped to keep the name 
afloat all these years.'

Q -one of the more striking items of 
the machine is
the Cases, Can our reader supply there 
favourite
Commodore picture to be used on the 
case or are the designs on the website 
"set in stone"

'Eventually, the number of designs on 
the website will be up in the thousands. 
We are still thinking of a good way for 
people to upload their own designs. 
And anyone can enter our upcoming 
competition and
have their design become a limited 
edition C=kin.'

Q - Who thought up the designs

'That's us. Our CEO and two of my co-
workers to be exact. :)'

Q - Would you like to give our readers 
the price of
the various configurations, is an 
alternate operating
System available for example Linux or 
are the machines Microsoft os only, 
also have you thought about say 
installing AMITHLON as an operating 
system, although we are well aware of 
the licensing
problems faced by such and operating 
system

'The prices have not been set yet. 
Expect them to be somewhere in the 
1200-5000 range. We will most 
probably offer alternative OS'es as 
well. Linux does not seem that 
probable right now, since it hardly runs 
any games. :( Amithlon might be 
interesting.'

Q- Do you think the old Commodore 
business model is still viable, is there 
still a market for something
like an updated commodore  64 or 128

'Oh, I certainly think there's a market 
for an updated Commodore 64, 128 or 
Amiga. Just less of a mainstream 
market and more of a niche market.
And it's certainly a market that we are 
dying to explore and find out more 
about.'

Q - Is your company purely designed 
to produce "ibm
compatible machines"

'No. It's designed to further solidify the 
relationship between Commodore and 
Gaming and to re-establish 
Commodore as a major force in the 
gaming - industry. We will be able to 
do more than 'IBM-compatible' 
machines.'

Q - how has the press treated the 
machines introduction to the market 

'Overall, overwhelmingly positive and 
we have been given an amount of 
attention that exceeded our already 
high expectations. There is some 
cynicism here and there but that is only 
natural and healthy.'

Q - What does "COMMODORE" say 
to you 

'A ticking cassette tape player, the 
bashing of buttons, pure, addictive 
game play and some catchy and 
memorable tunes.'

Q- How much customer interest has 
there been in the Machines

'At the CeBIT convention where we 
exhibited our machines, visitors that 
initially looked bored out of their 
minds stopped by our booths and we 
literally saw jaws dropping. That's 
retailers and consumers alike.  Every 
day I'm getting e-mails in with people 
asking me where they can buy one... 
Just as with the press attention, it truly 
exceeds our high expectations.'

Q- what question would you have liked 
to be asked, and why 

'You already asked them. About 
innovation, 'the evil of IBM 
compatible machines' and the viability 
of the old Commodore Business 
model. Because that gave me a chance 
to explain more about our thought 
Process, what we intend to do and how 
we might be able to give back to the 
community.'

Q - I wish you every success in your 
project, the
machines design looks great, any tips 
on convincing my wife to let me 
purchase one

'Well, show her a C=kin design that 
you know will be to her taste. :) The 
rest should be easy, since even though 
it's a PC that's especially configured 
for gaming, she will be able to use it as 
a regular
workstation and multimedia centre.'

Q - Will the machine be sold 
Worldwide

'YES It will be a worldwide operation.'

Q- lets imagine you were given 1 
million pounds what
would you do with the Money

'Wow... I will say now that I would use 
it to invest and fund some creative 
projects of myself and others and set 
up a charitable organisation. But I 
never had a million pounds in my 
hand, so I might just go crazy and 
spend it all on completing my record- 
and games
collections.'

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
FROM 64k to 64 BIT
Commodore Gaming Launches Range 
of Gaming PCs
 

CeBIT, March 14th 2007: A new breed 
of gaming PCs with the highest 
specifications available for gamers and 
featuring a level of personalisation 
never before seen is launched 
tomorrow at CeBIT 2007 by 
Commodore Gaming.  The new range 
includes four different models from an 
entry level gaming PC to an extreme 
specification model which is optimized 
to the highest level. 

Bala Keilman, CEO for Commodore 
Gaming, commented "The all new 
Commodore range of PC's will allow 
gamers of all levels to enjoy the best 
that PC gaming has to offer.  From 
beginners to professionals, 
Commodore Gaming ensures that only 
the very best components are provided 
to deliver the ultimate PC gaming 
experience.  We also wanted to bring 
something new to the market, in the 
spirit of our Commodore heritage, and 
have worked hard to design a fully 
personalized product"

Uniquely, each gaming machine can be 
artistically customized to match 
personal taste, with Commodore 
offering specially selected art 
including street art, photography, PC 
game artwork (such as that of GRAW 
2) and many other licensed images.  
Using a revolutionary painting process, 
the exterior of the Commodore 
Gaming PC becomes an open and 
inviting canvas just waiting to be 
experimented with.  Fans and artists 
alike are requested to present their 
creative works to become the next 
limited edition C=kin.

This focus on design and 
personalisation can even be seen in the 
small details: two multicoloured LED 
lights inside the fans can be 
independently controlled to change or 
enhance the mood with an ambient 
glow. Meanwhile, a new Ice Cube 
cooling system provides extreme levels 
of cooling, reducing the core 
temperature by up to seven degrees 
and ensuring optimum efficiency.

These new gaming beasts are titled the 
Commodore Cg (entry level), Cgs, 
Cgx, Cxx (extreme level), each 
running Microsoft Windows Vista 64 
bit operating system including the new 
gaming interface - DirectX 10.  To 
provide full flexibility, each model can 
be customized from a range of high-
end components before undergoing a 
full burn-in test prior to shipment to 
meet our quality commitment.  
Meanwhile, gamers can expect their 
systems to come equipped with only 
the best peripherals available from 
respected gaming 
brands including Raptor keyboards and 
Logitech speaker systems.

The new range of optimised Gaming 
PCs are now available to see for the 
first time at the CeBIT show in 
Hannover, Germany, offering people 
the chance to play the high 
performance purpose-built machines 
with the latest PC games, including 
graphics-heavy blockbusters such as 
Supreme Commander and Ghost 
Recon: Advanced Warfighter 2.

All Commodore Gaming PCs come 
with a full two year service and parts 
warranty.




For an example product specification 
of the Cxx please see below.  Full 
product retail and online availability to 
be announced during CeBIT.

Visit Commodore Gaming at CeBIT- 
Hall 21, Stand D08.	
- Ends -

For demonstrations and to arrange 
interviews with Commodore Gaming, 
please contact: Jools Moore	
Naked Ape Public Relations	
+44 (0) 771 773 4606	
jools@naked-ape.co.uk

Notes to editors:

About Commodore Gaming
Driven by a team of gaming veterans 
and enthusiasts across a broad range of 
disciplines Commodore Gaming is a 
passionate provider of products and 
services for the mobile, PC and Video 
game market.  Having acquired the 
Commodore brand in late 2005 as part 
of a joint venture with Commodore 
International Corporation, Commodore 
Gaming aims to re-establish the brand 
as a leader in its industry.

Specifications:
Commodore Cxx: Processor:	
Intel(r) Core(tm)2 Extreme quad-core 
processor QX6700, 2.66 8M Cache

Motherboard:
ASUS(r) P5N32-E nForce 680i SLI

Hard drive / Storage:	
2x 150Gb 10000 Rpm Sata Raid 0
1x 500Gb 7200 Rpm Sata

Memory:	
4 Gb Corsair Dominator twin2x2048-
8500C5D, 1066MHz

I/O.:		
7in1 cardreader; (Front) USBx2 
Firewire x 1 HeadPhone x 1 
MicroPhone x 1

Optical:	
Philips DVDRW

Power Supply:	
1000W ICE Cube PSU

Audio:
Creative(r) SoundBlaster X-Fi

Graphics:
2x nVidia 8800 GTX 768MB

OS:
Microsoft Windows Vista Ultimate

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

==========
Ebay News 

I found the item listed below for a buy 
it now although I question if the price 
was right- see what you think

=========================

Commodore 64 & 128 3.5 Disk Drive 
CMD FD 4000 RARE Sexy + 10 
FREE ED DISKS NEW
 
Item number: 280088994418  
 
This item has ended with Buy it Now. 
 price:  US $1,050.00   
-----------------------------------------------
------------------ 
Ended: 07-Mar-07 02:15:54 GMT 

Postage costs: Calculate 
Calculate 
Post to: Worldwide 
Item location: New Jersey, United 
States 
Buyer:  USER name removed by  
"commodore Free"

Description   Seller assumes all 
responsibility for listing this item.   
 
 Item Specifics - Video Game 
Accessories  
 Platform:  Commodore    Item Type:  
Disk Drive   
 Condition:  Used       
   
You are buying a CMD FD-4000 disk 
drive.  The CMD FD-4000 is a 3.5 
inch floppy disk drive designed to 
utilize the latest technology and 
provide greater storage capabilities for 
Commodore computers.  This drive 
uses high density (HD) 3.5 inch disks 
for data storage of up to 1.6 Megabytes 
while retaining backward compatibility 
with Commodore 1581 formatted 
diskettes (800K).  It also supports the 
Extended Density (ED) diskettes for a 
whopping 12,736 blocks free 
(3.2MB)!!  WOW!

>>>>>>   I WILL ALSO INCLUDE 
10 NEW ED DISKS!!!!!!!!!!!!!!!!!!!   
<<<<<<
<SNIP>
-----------------------------------------------
------------
COMMODORE FREE

Well someone got a bargin?! check out 
the full item information on the URL 
below 

http://cgi.ebay.co.uk/Commodore-64-
128-3-5-Disk-Drive-CMD-FD-4000-
RARE-
Sexy_W0QQitemZ280088994418QQi
hZ018QQcategoryZ74945QQssPageN
ameZWD2VQQrdZ1QQcmdZViewIte
m?hash=item280088994418
==========

