Aller au contenu

Générateur d’effets vidéo

    Projet de générateur d’effets vidéo, basé sur 4 consoles Master System. Destiné au VJing et autres artistes.

    Ojectifs:

    * Création unique, modifiable et documentée
    * Utilisation de surfaces tactiles et des joypads originaux comme entrées
    * Communication entre couches
    * Programme de taille inferieure à 32Ko

    Chaque Master System aura son BIOS remplacé par une EEPROM, contenant le programme générant les effets en fonctions des commandes de l’utilisateur.
    Ces 4 couches auront alors toutes les mêmes capacités.

    Un mélangeur vidéo réglable permettera de mélanger les sorties RVB de chaque couche en les additionnant et en limitant ou divisant la tension de sortie.
    Les signaux mixés pourront ensuite être convertis en signaux VGA ou composite.

    Afin de pouvoir mélanger les signaux de couleur sans avoir à prendre en compte les signaux de synchronisation, toutes les Master System partagent le même signal d’horloge et de reset, afin d’avoir une sorte de synchronisation “free running” dès le démarrage. Un seul signal de synchronisation sera gardé.

    Les sorties audio des Master System pourront être utilisées pour fournir un retour visuel en les adaptant pour piloter des LEDs (beat).

    Sur chaque Master System, un port sera dédié à un joypad normal, et l’autre à la communication avec un microcontroleur propre à la couche, qui sera chargé de gérer la communication avec les autres (Pointillés) et la surface tactile (ADC+Serial).

    Une alimentation à découpage sera utilisée pour fournir les 5V (3A) sans avoir à passer par les régulateur 7805 d’origine.

    générateur video

    Oscillateur partagé: ok, HEF4011, 1MOhms, 100pf en sortie (pas utile ?) et quartz d’origine. Même pas besoin de capas.
    Entrée sur le VDP depuis pastille de C3 (XIN).

    Reset partagé: ok, tester avec RC + comparateur à hysteresis.

    Ports DE-9:
    Power: 2
    Inputs: 5 (Haut, bas, gauche, droite, TL (Trig lightgun)
    I/O: 2 (TR, TH)
    Port $DD, bit4 “Reset button”, toujours à 1 sur SMS2 (dispo sur le controleur d’I/O ?)

    Port 1: joypad
    Port 2: comm 4bits (tactile)

    A chaque VBL, descendre TR (besoin d’un pull-up ?) pour demander les 4 LSB du touchpad.
    Remonter TR, attendre, lire HBGD.
    Attendre et le redescendre pour demander les 4 MSB du touchpad.
    Remonter TR, attendre, lire HBGD.

    Si le touchpad lit 0xFF, pas d’appui (ou données coincées).

    Timeout d’un peu moins de 1/50 (PAL) entre les detections de TR du côté µC, pour qu’après un long moment sans demande de données (entre frames), les LSB soient prêts à nouveau.
    Interruption sur changement d’état. Etat bas: préparation des données. Etat haut: mise des données sur HBGD, index des données suivantes incrémenté.

    Prévoir un +12V pour la sortie péritel et le VPP des EEPROMS (transistor pour commuter le 12V selon /WR dangereux ?).

    [img]https://www.zonetronik.com/images2/gene-e-s4.jpg[/img]

    Mise à jour du programme:
    Possible puisque le signal /WR est routé jusqu’au BIOS (qui est certainement NC à l’interieur), mais impossible de trouver 32Ko de flash en DIP28.
    Des EEPROMs 27C256 montés sur supports feront l’affaire en attendant. Il sera peut être possible de commuter du 12V sur leur VPP à la place de /WR, pour pouvoir les effacer et reprogrammer depuis un bootloader copié en RAM. Compliqué et risqué mais faisable.

    Pour chaque SMS2.
    A retirer:
    Prise DIN
    Régulateur 7805
    C2, R3, D1 (Reset)
    Power.Sw
    MPR-12808 (BIOS 32Ko)
    Quartz, C3, C4 (10.7386MHz)

    Entrées:
    Alim +5V à découpage si possible (prévoir 500mA)
    Reset
    Clk
    Joypad (reste une entrée), µC touchpad (reste une I/O)
    Pause
    HBGD

    Sorties:
    Rouge, vert, bleu, synchro
    Audio
    TR

    LMC6062: Rail to rail OK, mais beaucoup trop lent (slew rate positif trop élevé, négatif OK).
    LM358: Va presque jusque gnd, OK pour alim en +5V, mieux mais toujours trop lent.

    Cahier des charges pour les AOP: bande passante mini 4Mhz, slew rate mini de 5V/µs (, output swing jusque gnd, rail-to-rail si possible en alim simple 5V.
    Fréquence signal: 256*224*60 fps max = 2949120 pixels/s = 2.95MHz

    générateur video

    Essais de suiveurs sur la composante bleue, Alex Kidd in Miracle World:

    générateur video2

    LMC6062, quasiment rail-to-tail (à 10mV près), très précis mais super lent. Slew rate de 10V/ms (soit 0.01V/µs)
    Le slew rate négatif à l’air beaucoup plus élevé (retombe vite au noir)

    générateur video3

    LM358, comprend la masse et fonctionne en alim simple 5V, bande passante de 1.1Mhz, et slew rate de 0.6V/µs (toujours trop lent).
    Latch-up parfois (lignes horizontales noires).

    générateur video4

    LM318, fonctionne normalement en +/-5V, pas vraiment utilisable en alim simple. Bande passante de 15MHz et slew rate de 50V/µs (devrait être assez rapide)
    Beaucoup d’overshoot, qui dépasse les 1V nominaux qu’attend l’adaptateur RVB Sega (bleu clair sur les contours).

    générateur video5

    AD810, 30Mhz et 350V/µs. Spécialement conçu pour la vidéo. Samplé, attente de reception.

    Source: furrtek.orgCC

    Ne restez pas à la traîne des dernières tendances technologiques !
    This is default text for notification bar