Apollo Vampire V4+
guillaume.tello@orange.fr

Retour aux machines
Back to My Machines


Français
English


Hardware
Connectors
Boot
Real Time Clock
Desktop in colors
Adapted software

The Hardware



Cet ordinateur est basé autour d'un FPGA 68080 intégrant l'équivalent d'un 68060 amélioré avec notamment des instructions AMMX.

La mémoire est de 512 Mo.

Un port IDE donne accès à une carte CF comme système de stockage de masse.

Pour ce qui est des périphériques USB, l'émulation est spécifique et ne supporte pas tous les modèles. De ce fait, j'ai acheté leur souris et leur Joypad afin d'avoir une compatibilité assurée.

Pour le clavier, j'ai un PRO-K5 rétroéclairé en AZERTY, modèle CLA-PK5 qui fonctionne parfaitement.

L'écran lui est un Asus VP228HE 21.5" Full HD qui a l'avantage d'embarquer des hauts-parleurs. Le son HDMI est donc accessible sans autre périphérique.
This computer relies on a FPGA 68080 that is basically an enhanced 68060 with AMMX instruction set.

There are 512 MB RAM.

An IDE port gives access to a CF card as mass storage.

Concerning the USB peripherials, this is a specific emulation and you can't plug everything you want. So I took their mouse and joypad for a perfect compatibility.

I plugged a backlit keyboard PRO-K5, AZERTY (model CLA-K5) that works perfectly.

For the monitor, I got a Asus VP228HE 21.5" Full HD that comes with integrated loud speakers. The HDMI sound can be heard without any extra sound system.



Connectors



Du côté droit, on trouve deux ports pour les anciens joysticks ou souris 9 broches.

Deux entrées USB, l'une pour le joypad, l'autre pour la souris.

Deux leds:
  • la rouge lorsque la Vampire est allumée
  • la verte pour l'activité du disque
On the right panel, you can find two old joystick and mouse connectors in DB9.

Two USB specific ports, one for the joypad and the second for the mouse.

Two LEDs:
  • a red one when Vampire is ON
  • a green one for disk activity


Du côté gauche, on trouve l'alimentation qui a la bonne idée d'avoir un interrupteur sur le câble. S'adapte au 110V et 220V et aux différents connecteurs internationaux.

Le port MicroSD pour une carte bien utile aux transferts avec l'extérieur. Il n'est pas idéalement situé pour une introduction facile...

La sortie vidéo/son HDMI capable d'aller jusqu'à 1280x720 en 32 bits.

Le connecteur USB pour le clavier.

Le port Ethernet.
On the left panel is located the power plug that comes with the essential switch on the cable. Can be plugged to 110V or 220V and has various adapters for international use.

The MicroSD port for a very useful card to transfer files from/to the external world.

The HDMI video/audio output that support up to 1280x720 in 32 bits.

The specific USB connector for the keyboard.

The Ethernet port.



Boot



La Vampire intègre deux bootloaders:
  • Le premier pour lancer ApolloOS, dans ce cas, la carte CF est celle fournie lors de l'achat avec une collection d'utilitaires et de jeux Amiga.
  • le second pour EmuTOS. Dans ce cas, vous devez avoir une carte CF intégrant les logiciels Atari.
Pour obtenir EmuTOS; il nous faut appuyer sur le bouton de tir du Joypad pendant l'allumage.
The Vampire integrates two bootloaders:
  • the first to load ApolloOS, in this case you must use the CF card sold with the computer with tons of utilities and games for the Amiga.
  • the second to load EmuTOS, in this case you must use another CF card with the Atari software.
To run EmuTOS, you must press the fire button on the Joypad at start.


EmuTOS est en ROM, mais, si on veut bénéficier des dernières mises à jour sans flasher la Vampire, on peut utiliser cette astuce.

Le dossier AUTO (ou AUTO2 selon les versions), contient un simple programme MAPROM.PRG (écrit par Thorsten Otto!) qui charge l'image EMUTOS.ROM se trouvant sur le disque à la place du système en ROM.

Par contre, partout où se trouve la chaine "AUTO" dans EMUTOS.ROM, il faut remplacer par "AUT2".

C'est donc dans AUT2 qu'on aura nos véritables programmes de lancement.

On y trouve en particulier FVDI.PRG qui donne accès aux résolutions étendues avec l'ensemble de ses drivers dans le dossier GEMSYS.

EmuTOS is located in ROM, but if you want to get every update without flashing the Vampire, you can use this trick.

The AUTO (or AUTO2) folder contains only MAPROM.PRG, a little tool written by Thorsten Otto that loads EMUTOS.ROM in place of the internal system.

You just have to patch EMUTOS.ROM that every AUTO occurence is replaced by AUT2.

So, your real starting programs are located in AUT2.

There you'll find in particular FVDI.PRG that allows you to use extended rezolutions using the drivers located in GEMSYS folder.


L'utilisation de XBOOT permet d'avoir différentes configurations.

Ici, j'ai trois systèmes avec chacun leur programmes AUTO et leurs accessoires.
  • EmuTOS: ma configuration avec un bureau de base
  • EmuTOS + FVDI: bureau de base mais résolutions étendues
  • MyAES: une configuration multitâche avec Mint 1.19 et MyAES 0.98
Lorsque vous installez un accessoire ou un programme AUTO qui fait planter le système, XBOOT est bien pratique pour le désactiver!

Là encore, il a fallu patcher XBOOT afin qu'il cherche ses programmes dans AUT2 et qu'il gère EMUDESK.INF au lieu de NEWDESK.INF.


Download my Boot files

FVDI and drivers are not included as I can't provide sources together with binaries (GPL licence)
Using XBOOT allows you to launch various configurations.

Here, I have three of them with their own auto-PRG and accessories.
  • EmuTOS: a basic config with Emudesk.
  • EmuTOS + FVDI: basic desktop but with extended graphics
  • MyAES: multitasking with Mint 1.19 and MyAES 0.98
When you are testing an AUTO-PRG or an accessory that freezes the system, XBOOT is really useful to deactivate it.

Here again I had to patch XBOOT to make it look into AUT2 instead of the standard AUTO folder and manage EMUDESK.INF instead of NEWDESK.INF.



Real Time Clock



On peut ajouter une horloge sur le connecteur interne I2C.

J'ai écrit un petit logiciel (FORTH+Assembleur) pour régler l'heure et la date. Il s'appelle V4SETRTC.PRG.

Au boot, EmuTOS ne reconnaît pas encore cette horloge. On peut donc installer mon petit programme V4_RTC.PRG dans le dossier AUT2 qui va chercher la date et l'heure dans l'horloge pour régler le BIOS/GEMDOS.

Remarquez que la RTC intègre également un senseur thermique qui vous donne la température dans votre Vampire.




Download V4_RTC
You can plug a clock into the internal I2C connector.

I have coded a little tool to set time and date (FORTH+ASM), it is called V4SETRTC.PRG.

At boot time, EmuTOS doesn't give access to this part of the hardware. You can use my little tool V4_RTC.PRG in the AUT2 folder to get time and date and correctly set the BIOS/GEMDOS clock.

Notice that this RTC comes with a thermal sensor that informs you about the temperature inside the Vampire.



Color Icons and background



Le bureau standard de EmuTOS n'affiche que des fonds unis ou tramés avec des icones monochromes.

Je suis en cours d'écriture d'un patch COLOR_V4.PRG afin de donner de la couleur aux icones et au fond d'écran et de fenêtres.

Pour l'instant:
  • 16 bits EmuTOS + FVDI: OK
  • 32 bits EmuTOS + FVDI: OK
  • 24 bits: devrait marcher, mais pas de driver FVDI...
  • 4 bits EmuTOS: OK


The standard desk of EmuTOS only displays simple backgrounds patterns and uses monochrom icons.

I am writting a patch COLOR_V4.PRG to get color icons and more elaborated backgrounds for desktop and windows.

For now:
  • 16 bits EmuTOS + FVDI: OK
  • 32 bits EmuTOS + FVDI: OK
  • 24 bits: should work but no FVDI driver...
  • 4 bits EmuTOS: OK




Pour l'installation, il vous faut avoir le dossier COLOR_V4 avec les fichiers ci-contre absolument sur le disque de lancement C:.

Le fichier COLOR_V4.SND n'est pas obligatoire mais permet d'avoir une musique de démarrage.
To start setup, you must have the files shown next into the folder COLOR_V4 located on the boot disk C:.

The file COLOR_V4.SND is not required but allows you to hear a music at start.


Les deux fichiers RSC doivent contenir les mêmes icones dans le même ordre.
  • EMUICON.RSC : les icones monochrome dont les sept premières (entourées en rouge) sont une obligation pour EMUTOS.
  • EMUCICON.RSC: les mêmes, mais en couleur !
The two RSC files must contain the same set of icons and in the same order.
  • EMUICON.RSC : the monochrom icons witch the very seven first are the minimum for EMUTOS (those circled in red).
  • EMUCICON.RSC: the same set, but in color !


Lors de la première utilisation ou à chaque modification de ces fichiers, vous devez lancer EMU_RSC.PRG qui copie vers C: une version marquée des icônes afin d'en détourner l'affichage dans le fichier C:\EMUICON.RSC.

Ci-contre, l'exécution du programme qui a détecté 23 icones.
When installing the files for the first time or everytime you modify those RSC files, you must run EMU_RSC.PRG that copies to C:\EMUICON.RSC a marked version of the icons to detect them and intercept the display to put colors.

On the left, the execution of the program that found and marked 23 icons.


Le programme COLOR_V4.PRG doit être installé comme programme Automatique, il se lancera au démarrage du bureau.

Dans EMUDESK.INF, vous devez avoir cette ligne commençant par #Z.
The program COLOR_V4.PRG must be installed as Automatic, it will be run when the desktop starts.

You must have this line starting with #Z in EMUDESK.INF.


Pour finir, lorsque vous avez redémarré votre bureau, allez dans "Définir fond..." et réglez pour le bureau et les fenêtres vos préférences.
Pour obtenir l'un des motifs, il faut régler la couleur sur blanc et choisir l'une des cinq trames. Validez.

N'oubliez pas de sauver le bureau.
Last, when you have rebooted, go to "Define background..." and set your preferences for desktop and windows.
To get one colored image, you have to set color to white and select one of the five patterns marked in red. Validate!

Don't forget to save the desktop.


Sous EmuTOS sans FVDI, le bureau se lance en 16 couleurs.

Dans ce mode, le programme amène encore les icones couleurs, mais ne gère pas les fonds.

Note: la fonte système est changée si vous avez COLOR_V4.FNT dans le dossier!


Download COLOR_V4
EmuTOS without FVDI boots in 16 colors.

The program still manages the color icons, but not the backgrounds.

Note: the system font is modified if you have COLOR_V4.FNT in your folder !



Adapted software



A partir de la version 4.25, M_PLAYER tourne sur la V4, autant au niveau du graphisme (jusqu'au 32 bits) qu'au niveau du nouveau système son assez semblable au système DMA des STE/TT/Falcon, bien que supérieur en capacités.

Voir M_PLAYER!
As of version 4.25, M_PLAYER supports the V4. The graphics up to the 32 bits mode and the new sound system very similar to the DMA sound found on the STE/TT/Falcon, but with better capabilities.

Go to M_PLAYER!


Programmation d'un son
  • start est l'adresse de départ du son, plus de limite sur 24 bits, le son peut être logé en fast ram
  • pairs est le nombre de paires d'échantillons. Pour du 8 bits mono, c'est le nombre total d'octets divisé par 2. Pour du 16 bits mono, c'est la taille totale divisée par 4. Pour du 16 bits stéréo, c'est la taille divisée par 8.
  • volumes contient deux octets représentant chacun le volume de chaque voie Gauche/Droite. Zéro étant le plus faible.
  • control est un masque de bits:
    • bit 0 : 0 pour 8 bits, 1 pour 16 bits.
    • bit 1 : 0 pour boucle, 1 pour one-shot
    • bit 2 : 0 pour 16 bits mono, 1 pour 16 bits stéréo.
    Note: le 8 bits stéréo n'est pas géré.
  • freq diviseur pour obtenir la fréquence. Il se calcule ainsi:
    3 546 326 / freq.
    Exemple pour une fréquence de 44100 Hz, on prendra:
    3 546 326 / 44 100 = 80 environ.
Une fois ces valeurs entrées, on lance le son en écrivant dans le registre $DFF096 selon les valeurs ci-contre.

On peut laisser le son se terminer seul( one-shot) ou l'arrêter en écrivant la valeur de stop selon le tableau.

Les adresses sont accessibles en mode utilisateur.
n = channel number (0-3)
Address Use
$DFF4n0 LONG start
$DFF4n4 LONG pairs
$DFF4n8 WORD volumes
$DFF4nA WORD control
$DFF4nC WORD freq


channel start value in $DFF096 stop value in $DFF096
0 $8201 $0001
1 $8202 $0002
2 $8204 $0004
3 $8208 $0008
Sound programming
  • start is the start address of the sound, not limited to 24 bits, can be located in fast ram.
  • pairs number of pairs of samples. For 8 bits mono it is the sound size divided by 2. For 16 bits mono, size divided by 4. For 16 bits stereo, it's the size divided by 8.
  • volumes contains two bytes for left and right volumes. Zero being the lowest.
  • control is a bit mask:
    • bit 0 : 0 for 8 bits, 1 for 16 bits.
    • bit 1 : 0 for loop, 1 for one-shot
    • bit 2 : 0 for 16 bits mono, 1 for 16 bits stereo.
    Note: 8 bits stereo is not supported.
  • freq divisor to get the frequency. You compute it like this:
    3 546 326 / freq.
    Example, for a 44100 Hz sample, you'll use:
    3 546 326 / 44 100 = 80 approx.
Once you entered those values, you can start the sound writting the start value at $DFF096 according to the selected channel.

You can let the sound run til the end (or repeat), to stop it write the stop word at $DFF096.

No need to use supervisor mode.
APOKE, écrire en mémoire

Un petit outil utilisé côté Amiga pour modifier une valeur en RAM. Il s'utilise ainsi:
APOKE adr,val,taille
  • adr: l'adresse mémoire décimale ou $hexadécimale
  • val: la valeur à écrire décimale ou $hexadécimale
  • taille: 1, 2 ou 4 pour octet, mot ou long.
Si vous tombez dans une zone protégée, le programme plante toute simplement. A vous risques et périls, vous pouvez utiliser le second outil, SAPOKE qui écrit en mode superviseur!

Si les arguments ne sont pas valides, une boîte d'alerte vous rappelle la syntaxe.

Ci-contre, les valeurs pour régler la vitesse de l'IDE. Si on désire avoir la vitesse maximale, on tapera:
APOKE $DD1020,$C000,2




IDE speed at $DD1020:

Word Value Meaning
$0000 Slowest
$4000 Slow
$8000 Fast
$C000 Fastest


Download APOKE/SAPOKE
with ASM source code.
APOKE, write into memory

A little tool that exists on Amiga to modify a value in RAM. Usage:
APOKE adr,val,taille
  • adr: decimal memory address or $hexadecimal
  • val: decimal value to write or $hexadecimal
  • size: 1, 2 or 4 for byte, word or long.
If you attempt to write to a protected location, the program simply hangs and quits. If you know exactly what you're doing, use SAPOKE that swaps to supervisor mode before writing!

If the arguments are not valid, an alert box reminds you of the syntax.

On the left, you can see the values to set the IDE speed. For maximal speed, you'll use:
APOKE $DD1020,$C000,2


Pure Debugger
Le debugger bloque l'ordinateur lorsqu'on tente d'ouvrir la fenêtre de registres du CPU avec Ctrl+C et s'arrête juste avant d'afficher les registres en virgule flottante du FPU.

J'ai modifié le programme pour qu'il ne les affiche plus. On peut maintenant utiliser le debugger.
Pure Debugger
The debugger freezes the machine when you attempt to display the floating point values of the FPU in the Register window that you open with Ctrl+C.

I modified the program so it doesn't display anymore the FPU values. With this concession, you can use the debugger.




15 décembre 2007