HAM & Overscan!

Riflessioni, eventi, curiosità

HAM & Overscan!

Messaggioda -TURRICAN- » sab nov 01, 2003 6:10 pm

Cosa ne pensate di queste 2,..io le chiamo "GENIALATE" ?!
Sapete come funzionano? :riflette:
By -TURRICAN-
-TURRICAN- is the best
Avatar utente
-TURRICAN-

Eroe
 
Messaggi: 1462
Iscritto il: ven gen 10, 2003 4:23 pm
Località: Avalon...(skerzo!)...Bologna

Messaggioda Tom Cruis » lun nov 03, 2003 12:03 pm

L'Overscan non è altro che la reale e massima risoluzione dei modi video Amiga AGA (e qundi delle nostre TV).
Per quanto riguarda il PAL ad esempio, arriva a 720x576, questa risoluzione è la vera risoluzione dei nostri televisori di casa, in Amy è stata portata a 640x512 per lavorare in schermo ma è possibile utilizzare tutta la risoluzione per lavorare al TOP su segnali diretti a TV, VHS, ecc, riempiendo tutto lo schermo visibile.
Con l'AGA è possibile anche centrare lo schermo per ottenere risultati ottimali! :ammicca:

Un solo dubbio ho sul SuperHires PAL (su Amy 1280x512 non Overscan)!
Nel mio manuale di Elettronica si parla di Standard PAL televisivo massimo di 720x576 e non parla di questa risoluzione!
Su monitor PAL si vede bene, su televisori 50Hz si mangia un po' le lettere e non l'ho ancora provato sul mio televisore a 100Hz!
C'è da dire che ho collegato l'amiga al televisore sempre tramite cavo RCA analogico e mai via RGB, quindi via RCA si perde sicuramente molto in qualità! :riflette:
P.S. Qui ci vorrebbe uno specialista dei segnali TV :mah:

Per l'HAM ti posso solo dire che sta per Hold And Modify, ossia che il metodo è di bloccare un colore e modificarne il registro per crerne un altro, in questo modo si possono visualizzare tutti e 4096 invece che solo 32 dei vecchi Amy!
Per qualche cosa di più tecnico dovrei leggere i miei vecchi giornali perchè non mi ricordo più tanto bene! :triste:
Se poi c'è qualche altro Amighista che si ricorda meglio!? :ride:
Tom Cruis

Amiga is a choice
Avatar utente
Tom Cruis

Eroe
 
Messaggi: 1832
Iscritto il: gio gen 09, 2003 8:13 pm
Località: Parma

Wow

Messaggioda samo79 » lun nov 03, 2003 12:54 pm

Wow grande il Tom, professionale come sempre :annu:
Immagine

Moderatore sezioni Amiga/AmigaOne su
TGMOnline

WHEN IT'S DONE Immagine

Le mele a volte possono essere devastate dal colpo feroce di una tempesta, ma il tenero fascio del sole potrà sempre far sviluppare dei nuovi frutti

Sam440ep Flex 800 Mhz - 1 GB DDR Ram - Radeon 9250 - AmigaOS 4.1
AmigaOne XE G3 800 Mhz - 640 MB Ram - Radeon 9200 SE - AmigaOS 4.1
Avatar utente
samo79

Staff
 
Messaggi: 14962
Iscritto il: ven gen 10, 2003 5:09 am
Località: Perugia

Messaggioda ikir » lun nov 03, 2003 1:37 pm

Super Tom :annu:
Avatar utente
ikir

Admin
 
Messaggi: 10202
Iscritto il: mer gen 08, 2003 7:33 pm
Località: SYS:Prefs/

Ham & Lezioncina 68000 ASM!

Messaggioda -TURRICAN- » lun nov 03, 2003 6:54 pm

Allora..dato che queste 2 genialate le ho approfondite studiando 68000 asm! :figooo:
Allora,..inizio con l'HAM!
Come ha detto il caro Ivan,..significa Hold And Modify,ovvero un TRUCCO(genialata) che permette di visualizzare 4096 colori contemporaneamente da una palette di 4096 colori,..invece di 64 contemporaneamente da una palette di sempre 4096(modalita EHB, ovvero Extra Half Bright)!
Senza HAM, ogni pixel ha la profondita' di 6 bit, e quindi si possono visualizzare 64 colori contemporaneamente!
HAM funziona cosi':in modalita' HAM per ogni pixel si usano i 4 bit meno siginficativi per visualizzare un colore diverso, ma che indica parzialmente il colore da visualizzare, e con i 2 bit rimanenti si visualizza un colore con una variazione di tonalita' rispetto al pixel che gli sta accanto!
In questo modo pero', le immagini risultano un po' sfocate, percio' Miner era indeciso sull'implementazione di HAM nei chip DENISE(che dovevano ancora essere commercializzati)!
Poi tempo dopo Minter decise eliminare l'HAM, ma nn lo fece perche' senno' si doveva ri-progettare da capo Denise!
Amiga con HAM era la scelta MIGLIORE, perche' era avanti anni ad altri computer, e non costava relativamente poco!
(Cmq Samo79,..la perte storica spiegala tu che ne sai a pakki)!
Nell'Amiga 4000, in Daphne(evoluzione di Denise) introdussero l'AGA, che significa Advanced Graphic Adpater, che poteva visualizzare contemporaneamente 256 colori contemporaneamente da una palette di 16 milioni (circa) di colori!
Ma AGA poteva arrivare a visualizzarne pure 256000 contemporaneamente dalla stessa palette, con una modalita' SIMILE all'HAM, dei precedenti Amiga, ma di nome HAM8!
Poi c'e' anche la variabile Hi & Low res,..si' perche' (detta moolto velocemente) senza EHB e HAM in low res il massimo di colori visualizzati contemporaneamente e' 32(massimo), mentre in hi res e' 16!(massimo)!
I giochi sono quasi tutti in low res,..per il fatto che in questo modo ci sono + colori, il gioco e' + fluido, ed anche perche' in hi res ri rischierebbe di finire la memoria!
Ora , per siegare VERAMENTE come funziona il tutto, dovrei introdurre l'argomento BITPLANE (che bella parola eh?), cmq superficialmente, ogni colore ha un suo registro, a partire dal colore 0,ovvero il registro $dff180 !
Infatti uno dei primi esercizi che si fanno i Coder con 6800 asm, e' questo:

-----------------------------------
Decrunching:
move.w $dff006,$dff180

;nel punto e virgola si possono inserire i commenti,..e il compilatore non li caga!
Allora, Decrunching, e' il nome della label, che credo sappiate tutti cosa sia! Il comando move.w copia una word, ovvero 2 bytes,..senno' sarebbe move.b, da $dff006 a $dff180, tradotto in parole povere, $dff006 e' il VHPOSR, e $dff180 e' il colore 0!
Cioe', il pennello elettronico riscrive continuamente sullo schermo una word di colori, ovvero colori in successione, che vengono continuamente riscritti!

btst #6,$bfe001

;qui la cpu controlla parecchie volte al secondo se il tasto sinistro del mouse e' premuto, la faccenda funziona cosi',:
btst: Controlla se la cup ha premuto il tasto sinistro del mouse, e scrive, ogni volta che fa un controllo, se la condizione si e' verificata, lo scrive nel registro $bfe001, che si chiama CIAAPRA!
#6, e' il bit di CIAAPRA(si' perche' in asm, prima dei bit si deve mettere #, prima di un registro si mette $,...ecc..), ovvero il pulsante sinistro del mouse!

bne.s Decrunching

;bne significa Branch If Not Equal, ovvero salta se non e' uguale!
quindi il bne va a leggere il registro CIAAPRA, se nel CIAAPRA c'e' scritto che il tasto del mouse e' stato premuto, allora quando si arriva al bne, se la condizione e' vera, asm salta a leggere ed eseguire l'istruzione dopo, se invece la condizione non e' verificata, asm ritorna a controllare se il mouse e' stato premuto, quindi la cpu esegue vecolemente il btst e il bne finche' la condizione non e' avverata!
Ora, .s , sta er Short, che equivale al .b, pero' con una differenza che non sto a spiegare!
La scritta Decrunching dopo il bne , dice al compilatore che se la condizione non e' vera, ritorna a all'inizio, ovvero al nome della label!

rts

;quando la condizione e' verificata, amiga legge l'istruzione dopo, ovvero l'rts!
rts significa ReTurn from Subroutine, e come dice il nome, ritorna alla subroutine, e dato che il prgramma e' composto solo da una subroutine, l'rts in questo caso sta per esci dal programma!

----------------------------------

Avete capito quindi il programma cosa fa?
Eh,..che bei tempi quelli in cui durante il Decrunching c'era quella bella schermata colorata!
Cmq, se volete, compilatelo e provatelo!

Cmq,..forse mi sono dilungato un po' troppo,..ma non sapete quanto e' bello e gratificante spiegare 68000 ASM a qualcuno,..ed e' ancora + gratificante fare delle demo,..io nn ne ho mai ftta una,..pero' posso immaginare come ci si sente dopo...
Spero che la lezioncina vi sia piaciuta,..e che la convinzione (DI PARECCHIE PERSONE) che asm e' complicato, e per fare qualche animazione anche 3d, ci voglia il mondo!
Avete visto, come fare la classica schermata di Dech. in poche righe,..mentre con C,..gia' ad inserire le librerie non passa +!
Cmq,..non, confronto gli effetti grafici altro livello, questo che ho fatto e' una nullita'!
Byez Friends!
:figooo:
By -TURRICAN-
-TURRICAN- is the best
Avatar utente
-TURRICAN-

Eroe
 
Messaggi: 1462
Iscritto il: ven gen 10, 2003 4:23 pm
Località: Avalon...(skerzo!)...Bologna

Messaggioda Tom Cruis » lun nov 03, 2003 7:04 pm

Per precisare...... :sburla:
La limitazione dell'Hires a 16 colori l'avevano solo gli Amy con OCS ed ECS, e se non avevi 1 MB di RAM ma solo 512Kb, i colori in Hires scendevano ad 8 causa poca memoria!
L'HAM e l'EHB non potevano essere utilizzati in Hires su vecchi OCS ed ECS, solo con l'AGA si è passato l'ostacolo e si è potuto visualizzare HAM EHB ed HAM8 a tutte le risoluzioni (calcolando i 2Mb di RAM chip)!
Tom Cruis

Amiga is a choice
Avatar utente
Tom Cruis

Eroe
 
Messaggi: 1832
Iscritto il: gio gen 09, 2003 8:13 pm
Località: Parma

Messaggioda -TURRICAN- » lun nov 03, 2003 7:08 pm

Ah,..ultima cosa,..il programma che ho scritto,.sull'iksnet non viene, perche' in ASM,..al contrario di c o altri linguaggi,..il codice deve essere ordinato,..cioe' si deve premere tab (cioe' lasciare dello spazio) per ogno operazione,..pero' nel forum nn si possono lasciare spazi cosi' grandi ,..quindi il programma dovrebbe essere questo:

Decrunching:
********* move.w $dff006,$dff180
*********btst #6,$bfe001
*********bne.s Decrunching
*********rts

Gli asterischi sarebbero gli spazi,..dato che questo forum (IKIR POI QUESTA COSA DEVI SPIEGARMELA! :inca: :scherza: ) non prende li prende!
..spero che questo piccolo priogrammino,..invogli qualche utente del forum,..o qualche visitatore a imparare asm (io consiglio prima il 68000 e poi x86, dato che da buon Amighista non posso non conoscere il 68000)!
anche perche' impartando cio', si riesce a comprendere il VERO funzionamento di una macchina,..si perche' chi conosce solo il c o altri linguaggi di programmazione che non intervengono direttamente sull'hw,..e non conosce il funzionamento a livello sw e hw dei programmi che fa,...a perer mio sa POCO e NIENTE!
Ma cio' non significhi de non si puo' cominciare a imparare... :annu:
Byez!
:figooo:
By -TURRICAN-
-TURRICAN- is the best
Avatar utente
-TURRICAN-

Eroe
 
Messaggi: 1462
Iscritto il: ven gen 10, 2003 4:23 pm
Località: Avalon...(skerzo!)...Bologna

Messaggioda -TURRICAN- » lun nov 03, 2003 7:10 pm

tom cruis ha scritto:Per precisare......
La limitazione dell'Hires a 16 colori l'avevano solo gli Amy con OCS ed ECS, e se non avevi 1 MB di RAM ma solo 512Kb, i colori in Hires scendevano ad 8 causa poca memoria!
L'HAM e l'EHB non potevano essere utilizzati in Hires su vecchi OCS ed ECS, solo con l'AGA si è passato l'ostacolo e si è potuto visualizzare HAM EHB ed HAM8 a tutte le risoluzioni (calcolando i 2Mb di RAM chip)!

Va beh,..hai visto come mi dilungo, (vedi post precedente! :eheh2: ), quindi ho saltato un sacco di cose,..e ho dato una spiegazione moolto superficiale!
:annu: :sburla:
By -TURRICAN-
-TURRICAN- is the best
Avatar utente
-TURRICAN-

Eroe
 
Messaggi: 1462
Iscritto il: ven gen 10, 2003 4:23 pm
Località: Avalon...(skerzo!)...Bologna


Torna a Amiga in generale

Chi c’è in linea

Visitano il forum: Nessuno e 10 ospiti