WinUAE
an Amiga in your PC 
 
 
 
[WinUAE's workbench with  Picasso96  Display]
 
Below WinUAE surfing France Telecom's LAN with IBrowse (Web Browser) and WebVision ( Webcams Browser) 

This page explain my new experiments that i've done in 1999 with WinUAE : The win95 version of UAE , it go further my two pages on DosUAE and Advanced UAE   
Mots of those softwares are sharewares with demos version available on Aminet (Aminet) some should really be buy cause they are cool. 
Some new links 

 
UAE Version en Français ma nouvelle page WinUAE .  
Alain Thellier, Paris, France 
Janvier 2000 
 
 
bsdsocket.library

WhatZat  ? 
This is the library of Networking fonctions used by Network Cards for real Amigas. 
On WinUAE when allowing BSDsocket.library emulation then a native AmigaOS call for Networking Fonction will be converted to the same Network funcion call forWin95. 

So better tahn emulate the serial  port winthin UAE for using a modem to acces internet, WSe will first connect Network (Internet, LAN) on obtiendra la connexion réseau du coté PC/Win 95 comme d'habitude (par modem, carte réseau,etc ...). On pourra alors lancer les applis Web Amiga du coté Win UAE. 

So if  your Pc is connected to a LAN with an ethernet card you can surf with IBrowse, chat with AmIRC , follow the webcams of your society with WebVision (see Screen Dump below) 
But i don't succeed to make  works softwares that need a device (like Miami) or a network volume name like TCP: like Apache or others Web Server.  
 

 
 PC Drives & Co
 

Within UAE exist an option that allow to mount PC drives on the Amiga side. So all the defined drive become availables at WinUAE boot like C: D: A: (if a floppy was inside) and even Network volume or CD-ROM 
It's easy to add an Amiga Icon to those volumes by copying a "disk.info" to the root of those drives. 
Amiga CD-ROMs at the "RockRidge + Iso 9660 " are directly readable and usable on WinUAE. 
So bootables CD-ROM can be used as a System disk it was the case for the old ones from the "Amiga Format" magazine. 
If you got a CD-ROM burner on your Amiga you can directly copy Amiga Volumes and Workbenc h System to a CD-ROM in "RockRidge + Iso 9660 Amiga" format so you can boot with it within WinUAE. A single CD-ROM can contain several Amiga Volumes each in directory if you don't forget to specify an image path and copy also the disk.info of each volume. 
So all you need is to mount those CD-ROM directories as drive/directory within WinUAE and then boot on your Amiga like at home. 
Beware if you use international characters they wont be recognized so it's better to put your workbench in an hardfile. 
Beware if you use a graphic card : the graphics card settings and prefs won't be usable on WinUAE   
 
 

 
Mac and ShapeShifter
 

ShapeShifter It's THE Mac Emulator now the version 3.10 is freeware with unlimited functionnalities. 
It still need a Mac System but as old Macintosh System 7.xx are freely available for download at Apple Web site. 

So bad you still need an image of a Mac ROM (512 Ko or 1Mo). 
But you don't have to modify this ROM file to be usable for emulation as the "PrepareEmul" option of WinUAE correct it directly. 

Nullser.device is a Null Modem Liaison emulator. So it should  allow to use a Serial Liaison existing on the Amiga Side. 
So it should allow to re-use a Network liaison already existing: 

MAC <-(ShapeShifter)------> Amiga <-(UAE)-------> PC 
So theorically (don't have tested yet) after installing nullser.device in the DEVS: directory of the Amiga side. You should configure ShapeShifter Network preferences for using "nullser.device" as the Network device driver. 
The more difficult will be to configure on the Mac side a Network liaison using a (fake) Null Modem cable.
 
All the WinUAE settings

  
About give you some links about UAE : 

http://www.cloanto.com/amiga/forever/ 
http://www.freiburg.linux.de/~uae/ 
http://www.picasso96.cogito.de/ 
http://www.amiga.com/ 
http://www.codepoet.com/UAE/ 
And also the name of those Genius who create UAE 
(THANX & RESPECT) 
Bernd Schmidt - The Grand-Master 
Mathias Ortmann - WinUAE Main Guy 
Brian King - Picasso96 Support, Integrated GUI for WinUAE, AHI (Working on it) 
Toni Wilen - AGA, NTSC/PAL modes, chipset switching, track-displays 
Gustavo Goedert/Peter Remmers/Michael Sontheimer/Tomi Hakala/Tim 
Gunn/Nemo Pohle - DOS Port Stuff 
Samuel Devulder/Olaf Barthel - Amiga Port 
Krister Bergman - XFree86 and OS/2 Port 
A. Blanchard/Ernesto Corvi - MacOS Port 
Christian Bauer - BeOS Port 
Ian Stephenson - NextStep Port 
Peter Teichmann - Acorn/RiscOS Port 
Stefan Reinauer - ZorroII/III AutoConfig, Serial Support 
Christian Schmitt/Chris Hames - Serial Support 
Herman ten Brugge - 68020/68881 Emulation Code 
Tauno Taipaleenmaki - Various UAE-Control/UAE-Library Support 
Brett Eden/Tim Gunn/Paolo Besser/Nemo Pohle - Various Docs and Web-Sites 
Special thanks to Alexander Kneer and Tobias Abt (The Picasso96 Team) 
 
Configurations give a list of saved settings. So don't forget to save (with a name) all your change to WinUAE and also to always load a config at startup if not crashhhh  :-P 
A smart thing is to have a saved config  for old school gaming 
 "GAME" and a serious Workebenc one "WB" for productivity softwares 

RAM give the memory size settings of the emulated Amiga 

GAME (Old  one) Chip 512 Ko 
GAME Chip 1 Mo slow 512Ko 
WB Chip 2 Mo fast 8 Mo Z3 8 Mo 
WB (with picasso 96) Chip 4 Mo Z3 16 Mo RTG 4Mo
ROM give the ROM settings 
If you use a ROM from the  "Amiga Forever" CD you also need key file. Check the box "Shapeshifter 
support" for allowing this Mac emulator to work with non-modified Mac ROMs. 
GAME (old one) ROM 1.2 
WB ROM 3.1, "Shapeshifter support" 
CPU give you the settings for the CPU 
GAME (old one)  68000 
GAME (recent) 68020/6881 
WB 68020/6881 
WB (with picasso 96) CPU/Chipset 2 
 
Game and I/O ports give the settings for the joystick and the mouse 
Keyboard Layout A, B, C emulate a joystick with the keyboard clavier with differents keys combination. 

Misc give some other settings 
When calling this config within the emulation with F12 there is also 
a button " reset " for the amiga and one to " quit " UAE 

Immediate and 32Bits change the way the (emulated) blitter works 
so it normally accelerate but it's lesser compatible . 
BSD socket to re-use a Network Connection that acces to a LAN or Internet 

Run at lower priority allow the Amiga to still be running after basculing to Windows with Ctrl Escape 
Very useful to continue to compress/decompress/compile on the Amiga Side when you are in Windows side 
 
 

WB Immediate+32Bits+BSD socket+Run at lower pri.
Display give the settings of the screen résolution. 
GAME (old one)  OCS, 800*600, Correct Aspect, Centering Hor. et Vert, refresh 4, full screen 
GAME (recent) idem + AGA 
WB Idem 
WB (with picasso 96) full screen RTG
 
 

Sound give the sound settings 
Better is to set  " disabled " if you don't have a sound card 
or " disabled but emulated " that is more compatible for games. 

Amiga sound is  stereo 4 tracks 8 bits at something like 40000 Hz maxi  but with the volume control some softwares reach  12 bits (AHI , démos) so better to select 16 bits in those case. 

Floppy allow to select the place where are the disk images (created with transdisk) 
You can change a floppy during a game with F12. For software installation you could select 4 disk image like you got an Amiga with 4 floppy drives. 
" Create Blank floppy " create a blank floppy image file that could be formated and used for (games) backup on the amiga side 

Hard Drive define what will be see has an hard drive within the emulation 
" Add PC drive " mount all the PC drives (CD-ROM, Network,etc...) 

You can also mount each individually , or you can mount directories 
They are usable like an amiga drive. So you can copy on it an hard drive icon  " disk.info " 

that a few dangerous to mount your c:\ drive on the Amiga side cause it can trash all your Windows System with an Amiga virus 
So it's better to mount directory for only swapping data between the two OS like C:\TEMP. 
You can also rename the PC drives with classical Amiga names that can be usefull 

PC0 for A : 
WORK for C:\UAE\WORK 
CD0 for E : if it's a CD-ROM
 
C Programming within UAE
UAE can offer a TRUE VIRTUAL MACHINE ! 
That is very usefull for developping software as it's nearly impossible to trash or crash the host machine during the test/debugging stage. 
As several version of UAE exist (Mac, Beos, PC, Linus,etc ) it's offer the same Virtual Development Environment on each host machine. 
The Amiga OS offer more functionnality than other virtual machine like Java. 
And ... it's posssible to compile programs that are source compatible with Linux. 

Cause you can Install "Geek Gadget" on UAE ( but NOT Linux that need an MMU) 
that allow to install the famous GNU C (GCC) or better EGCS that is more recent. 



Installing EGCS 
Get from Internet or here the BOOT.lha archive , unpack it ... 
Get all the EGCS archives (listed bellow) 
 and stock it on a directory mounted like a "WORK:" Amiga volume (it can be on CD-ROM) 
 
binutils-2.8.1-bin.tgz 
egcs-1.0.2-bin.tgz 
fd2inline-1.11-bin.tgz 
fifolib-38.4-bin.tgz 
fileutils-3.16-bin.tgz 
GG-docs-0.7-bin.tgz 
GG-misc-bin.tgz 
groff-1.11a-bin.tgz 
gzip-1.2.4-bin.tgz 
hunk2aout-2.0-bin.tgz 
ixemul-47.3-bin.tgz 
ixemul-47.3-env-bin.tgz 
ixemul-47.3-inc-bin.tgz 
junk-bin.tgz 
less-321-bin.tgz 
libamiga-bin.tgz 
libm-5.4-bin.tgz 
libnix-1.1a-bin.tgz 
make-3.76.1-bin.tgz 
manutils-2.1-bin.tgz 
patch-2.5-bin.tgz 
pdksh-4.9-bin.tgz 
ppctools-bin.tgz 
sh-utils-1.16-bin.tgz 
tar-1.12-bin.tgz 
textutils-1.22-bin.tgz 621590 
 
Create a directory called "GG" with a subdir called bin 
Put gzip , sh, tar in this GG:bin. 
Mount this directory as an Amiga volume called "GG:" 
Start UAE 
Put the the ixemul.library in your SYS:libs/ 
Run an Amiga shell and type 
 cd GG: 
 path GG:bin add 
 assign bin: GG:bin 
 sh 
 for file in /work/*.tgz 
 do 
 echo "=== $file ===" 
 tar -xzf $file 
 done 
 
 
With  "ed S:user-startup" append to the end of your SYS:s/user-startup this line 
execute GG:Sys/S/GG-Startup
Others usefull archives ( copy their include files in GG:include) 
CGraphX_DevKitVI.lha 
FD2Pragma.lha 
YOU NEED the "include" files from Amiga Inc that you can find in the Developper CD especially the "Ndk_3.1" directory 

At less YOU MUST copy the content of Ndk_3.1\Includes&Libs\include_h\ 
in GG:include 



Compiling 

You start  EGCS with the "SH" shell so the simpler is to start one in directory whera are your sources programs. 
The simplest test is to make this old classical with typing  "gcc  -o HelloWorld HelloWorld.c " 

#include <stdio.h> 
main () 
{ 
prinf("HellloWorld\n"); 
} 

A better test is to recompile an Amiga OS specific program "HelloWorld.c" that follow with typing 
"gcc -noixemul -o HelloWorld HelloWorld.c -lauto " 
 
   #include <stdlib.h> 
   #include <intuition/intuition.h> 
    #include <proto/intuition.h> 

    int main(int argc, char *argv[]) 

    { 
        struct EasyStruct er; 

        er.es_StructSize = sizeof(er); 
        er.es_Flags = 0; 
        er.es_Title = "Message"; 
        er.es_TextFormat = "! Hello, AmigaOS World ! \n is a GCC example using AmigaOS call."; 
        er.es_GadgetFormat = "Ok"; 
        EasyRequest(NULL, &er, NULL, IntuitionBase); 
    exit(0); 
    } 

A very better test is to recompile the standard Amiga example given in 
\Ndk_3.1\Examples1\colorwheel\WheelGrad.c 

We will use  GCCOpts thta give an esay to use interface to GCC. 
 GCCOPTS1.3.LHA 
It install in GG: and in GG:BIN 
We call it from SH by typing "gccopts" so we can select all the settings of our c project like "Libnix" "traditionnal" for the Amiga OS programs and do after "save Makefile" 

 
 
We type "make" and all the project compile automatically 


FD2Pragma 
Is a tool for creating all the files needed by the differents Amiga Compilers. 
In fact GCC and EGCS need special files in the include/inline directory. 

Example from the Shell : 
"FD2PRAGMA cybergraphics_lib.fd CLIB cybergraphics_protos.h SPECIAL 40" 
that will create the inline fille called "cybergraphics.h" for using it with GCC or EGCS 
 

 
My Logo 
Fait sur un Amiga 4040 (et with MacOS)