Behind it all is the Scripted Amiga Emulator. What is more interesting is that there has just been a MASSIVE update/rewrite to the project and it is now boasting far more features!
Looking at the features page, there has been quite a number of updates since the last version. The big ones (to me) is that the CPU core has been rewritten, and now supports not only the 68000, but the 68010, 68020, and 68030 (only with fake MMU). OCS, ECS and now AGA as well! Preset models include the 1000,500,2000,500+,600,3000 and 1200. IDE disk files can even be mounted for the 600 & 1200!
The Amiga was one of the most powerful and wide srpead computers in the late 80’s. This talk explains its hardware design and programming.
The Amiga 1000 appeared in 1985 and was followed by the Amiga 500 a few years later, which had the same design concept but was a little bit more powerful. The hardware design was highly sophisticated and powerful and was years ahead to other computers at the time then.
Equipped with the Motorola 68000 Microprocessor as the CPU which was internally a full 32 bit processor and several additional co-processors for various complex DMA tasks it was perfect for graphics-intensive software.
This talk explains the hardware in detail, how all those processors interacted and how it was programmed.
➤Event: 32th Chaos Communication Congress [32c3] of the Chaos Computer Club [CCC]
➤Location: Congress Centrum Hamburg (CCH); Am Dammtor; Marseiller Straße; 20355 Hamburg; Germany
➤Begin: Sun, 12/27/2015 18:30:00 +01:00
I found this repository by accident, cbmbasic which is a ‘portable’ version of the old Microsoft Basic for the Commodore 8bit computers in C which can run on any manner of machine.
Really cool, right?
So for the heck of it, I fired up the x68000 toolchain, and in no time after gutting the file open operation as some stuff isn’t defined, and I wanted to see it run, I had a working executable.
All the commands MUST BE IN UPPERCASE… Then again the Commodore did default to upper case, so I guess that isn’t a surprise. There is no ‘system’ command to take you out of basic, but Control-C works just the same.
So on my last adventure through some disk corruption on my Amiga, the natural thing to do is find some kind of MD5 checksum program to then compare signatures of files being copies to ensure that they are being copied correctly.
While there were several great C compilers for the Amiga when it was a viable platform, the one left standing today is GCC. Which is fine and all, but it is rather large, and unwieldy. And won’t run on a computer with 2MB of RAM (In the off chance that I want to run it on the 600). But that is when I found out that the source code (dice.com has moved!) to old DICE compiler is available! DICE, was originally a public domain compiler then turned commercial then finally turned freeware. For its time it was thought as a highly capable compiler as reviewed here. Also of note is that is was written by Matt Dillon, who later went on to DragonFLY BSD fame.
So I thought I’d try something completely different.
So after extracting the 3.15 binary distribution (which also included cross compiling from linux/i386), and following the install notes I tried to build a md5 program that I had found into an AmigaDOS binary. And it didn’t work. It turns out that it is missing include files related to AmigaDOS. And I was further unable to build DICE C from within DICE C.
So after a lot of searching, I came across this, a cut down “Mini DICE” that was bundled with Amiga Shopper, meaning it has the following limitations:
Only small library modules are included.
No floating point
No register variables/arguments
The maximun executable program size is 40K
Each source file can only have up to 4 procedures
Wow that is.. limiting. But it does have several of the needed include files, and a nice setup program to get going. At first I tried doing a full-sale overlay of the ‘3.15 binary’ version but I broke something to do with REXX and how DICE links. So instead I just overlaid the core compiler, namely dcc, dc1, dccp, das, dlink, dmake, fdtolib & fdtopragma.
I was then finally able to compile md5. I went ahead and started to build some of the source, and so far using a combination of dmake & vmake I was able to rebuild das, dcc, dlink, dc1 and dccp. I went ahead and created backups of my somewhat improved dice, and dice with source code. Some programs build fine from the command line, others you need to invoke the visual build tool.
So how is the environment? I tried to build Dungeon (dung27s.zip) for the heck of it, but the visual makefile tool couldn’t handle a project with 33 files. I suppose I could have made a library and gone through with some linking hell but that seemed like work. Instead I just typed in all the C files from the command line, and compiled it that way. Taking care of a warning and a few errors and I actually got a binary!
And on the same kick, now that Frontier Dangerous got its funding, I ordered a copy of the awesome Elite II: Frontier. And there is another site, amr.abime.net which includes just about every review of the game, along with some page scans! I do look forward to being able to play this game again.. It just isn’t the same with analog sticks, or the PC version.
And speaking of a Commodore overload, they are still doing the “World of Commodore” shows, here is the last from 2012..
It would be cool to go to this in 2013, I would assume it will be held in Toronto, again by the TPUG?
Ah, yes who doesn’t love the old world of the mid 1980’s that was dominated by the Commodore 64? Naturally I had one, and like many people in North America, I had the incredibly “fast” and reliable 1541 floppy disk drive. Unfortunately, in Europe it seems that the floppy drive addon was actually quite rare. Many of the systems opted to go with the substantially cheaper, and slower 1530 tape drive.
My only real exposure to the Commodore tape drives was with old PET computers in my grade school library where I’d write meaningless BASIC programs, and save them to tape. But at home I had a floppy drive, so moving programs around never was possible. Not that it really matters.
So while on vacation in Europe, Lorenzo managed to find this awesome score, a Commodore 64 with a tape drive, joysticks and BOXES, yes boxes of tapes! All for €20!
20€ of Amazement!
So we get the Commodore home, fire it up and.. none of the tapes work. Well completely many have these turbo boot loaders that load up, but from then on the screen flashes, the tape runs out and nothing happens. Now granted all of this equipment has been stored in a garage for a decade (or two?) so it does look like the entire lot has bit rotted. Going through some major effort we did find out that there were a few programs written to let you visualize the tape data to adjust the read/write heads, or even just determine if the tapes were just plain bad.
Then looking around some more online we pretty much come to the conclusion that we will need some kind of special cable to connect to the Commodore 64, and a Pentium 150-200Mhz class machine (no faster, no slower) to emulate a tape drive and feed the programs to the computer.
With everything looking down, we suddenly have a breakthrough by finding a Windows program that can convert a tap file, to an audio WAV(e). Luckily Lorenzo has a working tape deck, new tapes, and a CD Player, so we burn the WAV to a CD-ROM, then record the CD Audio to a Tape, and amazingly, it worked!
So was it worth it? For 20 Euros it was cool, it is kind of neat being able to play it on the old ‘iron’ again. And a joystick was kind if a fun throwback vs the modern era of gamepads, I guess since we wound up using tap images converted, emulation would just be plain easier. And it is worth noting that the majority of the joysticks that we got didn’t work properly. Old things eventually die out.
But just as there is companies out there still making floppy drives, I’m sure someone is out there making a digital USB Joystick..