Scritto da
altg
utente che non utiene
il 2014-11-08 12:01:19.0 alle 2014-11-08 12:01:19.0
Trollate totali: 11540
> > > http://www.disturboossessivo.com/2011/10/come-aume... 
> > >
> > > •la vitamina B6, presente nel lievito di birra e nel germe di grano, migliora la produzione della serotonina.
> > >
> > >
> > >
> > > non era un tuo placebo la vitamina b6 del betotal suppongo ci sia
> > > aumenta la serotonina e quindi diminuisce la depressione come avevo constatato empiricamente
> >
> > Bene.
>
> quindi non sapevi?
No, mi limitavo a rilevare che mi fa stare meglio di testa, a parte gli effetti sul resto del "fisico" (si fa per dire).

> > >
> > > •la vitamina B6, presente nel lievito di birra e nel germe di grano, migliora la produzione della serotonina.
> > >
> > >
> > >
> > > non era un tuo placebo la vitamina b6 del betotal suppongo ci sia
> > > aumenta la serotonina e quindi diminuisce la depressione come avevo constatato empiricamente
> >
> > Bene.
>
> quindi non sapevi?
No, mi limitavo a rilevare che mi fa stare meglio di testa, a parte gli effetti sul resto del "fisico" (si fa per dire).
Quando sei parte di una minoranza in via d'estinzione
Ad
https://images2.imgbox.com/d3/da/AZxsgAEN_o.png
ma se vuoi difendere la tua etnia e le tue terre sei "razzista"
Scritto da
altg
utente che non utiene
il 2014-11-08 11:59:59.0 alle 2014-11-08 11:59:59.0
Trollate totali: 11540
> > Col decespugliatore, che domande. 
>
> Usi il casco??"
Si`, la sicurezza prima di tutto.

>
> Usi il casco??"
Si`, la sicurezza prima di tutto.
Scritto da
altg
utente che non utiene
il 2014-11-08 02:10:22.0 alle 2014-11-08 02:10:22.0
Trollate totali: 11540
> > > Dopo 22 anni (e` dal 1992 che non ci gioco) mi sorprendo a ricordare praticamente ogni nota di ogni brano:
> > >
> > >
> > >
> > > vabbe', sara` che si sentivano e risentivano ogni volta che si riprovava un livello, cioe` parecchie volte.
> >
> > Curioso: mi sono bruciato parecchi neuroni su quel gioco, ma la musica non la ricordo. Il 286 non aveva audio, però qualche motivetto credo potesse emetterlo lo speaker.
>
> Deh, non avendo l'Amiga (che faceva tecnicamente il CVLO a striscie a tutte le soundblasters fino alla pro16, se non ci credete confrontate Paula
>
>
http://en.wikipedia.org/wiki/Original_Chip_Set#Pau... 
>
> con le specifiche delle SB, e pensate che era nato anni prima e stava su un chip solo, non su una scheda intera) ti sei perso delle soundtrack memorabili. tipo quasi tutti quelli della Psygnosis, Shadow of The Beast e Agony in testa. Pinball Fantasies... ah gia`, anche Apidya
>
>
>
> era un gioco su un ape
MIIINCHIA, vero che Apidya aveva una colonna sonora fra le migliori in assoluto, ma non pensavo che fossero arrivati a farne arrangiare una versione per orchestra sinfonica.
> > >
> > >
> > >
> > > vabbe', sara` che si sentivano e risentivano ogni volta che si riprovava un livello, cioe` parecchie volte.

> >
> > Curioso: mi sono bruciato parecchi neuroni su quel gioco, ma la musica non la ricordo. Il 286 non aveva audio, però qualche motivetto credo potesse emetterlo lo speaker.
>
> Deh, non avendo l'Amiga (che faceva tecnicamente il CVLO a striscie a tutte le soundblasters fino alla pro16, se non ci credete confrontate Paula
>
>

>
> con le specifiche delle SB, e pensate che era nato anni prima e stava su un chip solo, non su una scheda intera) ti sei perso delle soundtrack memorabili. tipo quasi tutti quelli della Psygnosis, Shadow of The Beast e Agony in testa. Pinball Fantasies... ah gia`, anche Apidya
>
>
>
> era un gioco su un ape

MIIINCHIA, vero che Apidya aveva una colonna sonora fra le migliori in assoluto, ma non pensavo che fossero arrivati a farne arrangiare una versione per orchestra sinfonica.

Scritto da
altg
utente che non utiene
il 2014-11-08 01:56:40.0 alle 2014-11-08 01:56:40.0
Trollate totali: 11540
> non era un tuo placebo la vitamina b6 del betotal suppongo ci sia
Il BeTotal contiene un overload sistemico di vitamina B6.
150% RDA per compressa:

Il BeTotal contiene un overload sistemico di vitamina B6.
150% RDA per compressa:

Scritto da
altg
utente che non utiene
il 2014-11-08 01:44:22.0 alle 2014-11-08 01:44:22.0
Trollate totali: 11540
> > http://www.disturboossessivo.com/2011/10/come-aume... 
> >
> > •la vitamina B6, presente nel lievito di birra e nel germe di grano, migliora la produzione della serotonina.
> >
> >
> >
> > non era un tuo placebo la vitamina b6 del betotal suppongo ci sia
> > aumenta la serotonina e quindi diminuisce la depressione come avevo constatato empiricamente
>
> Bene.
> Confermo che continua a funzionare.
>
> Ho ricomprato la confezione da 20 oggi mattina, dopo otto anni di fila perche` c'era tutta la gente a registrare qualcosa con la schedina sanitaria. Avrei comprato quella da 40 ma non ce l'avevano, era anche scontata l'altra volta.
In compenso ho fatto una bella rotatoria di traverso, cose che danno soddisfazione...

> >
> > •la vitamina B6, presente nel lievito di birra e nel germe di grano, migliora la produzione della serotonina.
> >
> >
> >
> > non era un tuo placebo la vitamina b6 del betotal suppongo ci sia
> > aumenta la serotonina e quindi diminuisce la depressione come avevo constatato empiricamente
>
> Bene.
> Confermo che continua a funzionare.
>
> Ho ricomprato la confezione da 20 oggi mattina, dopo otto anni di fila perche` c'era tutta la gente a registrare qualcosa con la schedina sanitaria. Avrei comprato quella da 40 ma non ce l'avevano, era anche scontata l'altra volta.

In compenso ho fatto una bella rotatoria di traverso, cose che danno soddisfazione...
Scritto da
altg
utente che non utiene
il 2014-11-08 01:43:12.0 alle 2014-11-08 01:43:12.0
Trollate totali: 11540
> http://www.disturboossessivo.com/2011/10/come-aume... 
>
> •la vitamina B6, presente nel lievito di birra e nel germe di grano, migliora la produzione della serotonina.
>
>
>
> non era un tuo placebo la vitamina b6 del betotal suppongo ci sia
> aumenta la serotonina e quindi diminuisce la depressione come avevo constatato empiricamente
Bene.
Confermo che continua a funzionare.
Ho ricomprato la confezione da 20 oggi mattina, dopo otto anni di fila perche` c'era tutta la gente a registrare qualcosa con la schedina sanitaria. Avrei comprato quella da 40 ma non ce l'avevano, era anche scontata l'altra volta.

>
> •la vitamina B6, presente nel lievito di birra e nel germe di grano, migliora la produzione della serotonina.
>
>
>
> non era un tuo placebo la vitamina b6 del betotal suppongo ci sia
> aumenta la serotonina e quindi diminuisce la depressione come avevo constatato empiricamente
Bene.
Confermo che continua a funzionare.
Ho ricomprato la confezione da 20 oggi mattina, dopo otto anni di fila perche` c'era tutta la gente a registrare qualcosa con la schedina sanitaria. Avrei comprato quella da 40 ma non ce l'avevano, era anche scontata l'altra volta.
Scritto da
altg
utente che non utiene
il 2014-11-08 01:40:51.0 alle 2014-11-08 01:40:51.0
Trollate totali: 11540
Col decespugliatore, che domande.
Scritto da
altg
utente che non utiene
il 2014-11-08 01:26:41.0 alle 2014-11-08 01:26:41.0
Trollate totali: 11540
ahaha anche questo, non c'entra una minchia con l'Amiga ma dovrei averla sentita una dozzina di migliaia di volte. Avevo il record mondiale su Spaceport Alpha (certificato via internet), guidando l'aereoplanino di Timber. Qualcosa tipo 1 minuto e 31 per fare tutti e tre i giri.
Scritto da
altg
utente che non utiene
il 2014-11-08 01:11:40.0 alle 2014-11-08 01:11:40.0
Trollate totali: 11540
> > Dopo 22 anni (e` dal 1992 che non ci gioco) mi sorprendo a ricordare praticamente ogni nota di ogni brano:
> >
> >
> >
> > vabbe', sara` che si sentivano e risentivano ogni volta che si riprovava un livello, cioe` parecchie volte.
>
> Curioso: mi sono bruciato parecchi neuroni su quel gioco, ma la musica non la ricordo. Il 286 non aveva audio, però qualche motivetto credo potesse emetterlo lo speaker.
Deh, non avendo l'Amiga (che faceva tecnicamente il CVLO a striscie a tutte le soundblasters fino alla pro16, se non ci credete confrontate Paula
http://en.wikipedia.org/wiki/Original_Chip_Set#Pau... 
con le specifiche delle SB, e pensate che era nato anni prima e stava su un chip solo, non su una scheda intera) ti sei perso delle soundtrack memorabili. tipo quasi tutti quelli della Psygnosis, Shadow of The Beast e Agony in testa. Pinball Fantasies... ah gia`, anche Apidya
era un gioco su un ape
> >
> >
> >
> > vabbe', sara` che si sentivano e risentivano ogni volta che si riprovava un livello, cioe` parecchie volte.

>
> Curioso: mi sono bruciato parecchi neuroni su quel gioco, ma la musica non la ricordo. Il 286 non aveva audio, però qualche motivetto credo potesse emetterlo lo speaker.
Deh, non avendo l'Amiga (che faceva tecnicamente il CVLO a striscie a tutte le soundblasters fino alla pro16, se non ci credete confrontate Paula

con le specifiche delle SB, e pensate che era nato anni prima e stava su un chip solo, non su una scheda intera) ti sei perso delle soundtrack memorabili. tipo quasi tutti quelli della Psygnosis, Shadow of The Beast e Agony in testa. Pinball Fantasies... ah gia`, anche Apidya
era un gioco su un ape
Scritto da
altg
utente che non utiene
il 2014-11-08 00:51:49.0 alle 2014-11-08 00:51:49.0
Trollate totali: 11540
Dopo 22 anni (e` dal 1992 che non ci gioco) mi sorprendo a ricordare praticamente ogni nota di ogni brano:
vabbe', sara` che si sentivano e risentivano ogni volta che si riprovava un livello, cioe` parecchie volte.
vabbe', sara` che si sentivano e risentivano ogni volta che si riprovava un livello, cioe` parecchie volte.
Scritto da
altg
utente che non utiene
il 2014-11-04 10:39:05.0 alle 2014-11-04 10:39:05.0
Trollate totali: 11540
> > > Mi sa che sono dei razzistoni.
> >
> > Mah, Sonne dovrebbe essere il Sole, e se fa riferimento al Sole Nero potrebbe essere un equivalente della svastica.
>
> Naaa, all'inizio era pensata come "inno" per Vitali Klitschko.
Ah, vabbe', comunque li trovo un po' inquietanti.
> > Probabilmente qualche tendenziola nostalgica nazista ce l'hanno.
>
> Affatto, secondo il metro di Ex sono comunisti (Vedi "Links 2-3-4")
Secondo il metro di Ex anche il mio gatto e` comunista.
> >
> > Mah, Sonne dovrebbe essere il Sole, e se fa riferimento al Sole Nero potrebbe essere un equivalente della svastica.
>
> Naaa, all'inizio era pensata come "inno" per Vitali Klitschko.
Ah, vabbe', comunque li trovo un po' inquietanti.
> > Probabilmente qualche tendenziola nostalgica nazista ce l'hanno.
>
> Affatto, secondo il metro di Ex sono comunisti (Vedi "Links 2-3-4")
Secondo il metro di Ex anche il mio gatto e` comunista.
Scritto da
altg
utente che non utiene
il 2014-11-04 10:30:12.0 alle 2014-11-04 10:30:12.0
Trollate totali: 11540
> Conoscete i Green Carnation. Non sono male.
No, ora poi guardo.
> Se vuoi sentire un vero urlatore ALTG, vieni in Bolivia
> C'è la scimmia urlatrice. Lei urla di brutto. Da far venire i brividi.
Ero giusto qui che pensavo di venire in Bolivia, ma appunto per dire il desiderio che nutro di visitare l'america del sud in generale, forse fra qualche strano eone, una o due particelle delle mie ceneri portate dal vento potrebbe anche non farsi vedere (perche` invisibile) da quelle parti. Forse.
No, ora poi guardo.
> Se vuoi sentire un vero urlatore ALTG, vieni in Bolivia
> C'è la scimmia urlatrice. Lei urla di brutto. Da far venire i brividi.
Ero giusto qui che pensavo di venire in Bolivia, ma appunto per dire il desiderio che nutro di visitare l'america del sud in generale, forse fra qualche strano eone, una o due particelle delle mie ceneri portate dal vento potrebbe anche non farsi vedere (perche` invisibile) da quelle parti. Forse.
Scritto da
altg
utente che non utiene
il 2014-11-04 10:27:58.0 alle 2014-11-04 10:27:58.0
Trollate totali: 11540
> Mi sa che sono dei razzistoni.
Mah, Sonne dovrebbe essere il Sole, e se fa riferimento al Sole Nero potrebbe essere un equivalente della svastica. Probabilmente qualche tendenziola nostalgica nazista ce l'hanno.
> A me piaceva il ritmo di Du hast. Ma non so cosa dicessero.
Ah in cosa dicano ci ho sempre capito poco anch'io.
Mah, Sonne dovrebbe essere il Sole, e se fa riferimento al Sole Nero potrebbe essere un equivalente della svastica. Probabilmente qualche tendenziola nostalgica nazista ce l'hanno.
> A me piaceva il ritmo di Du hast. Ma non so cosa dicessero.
Ah in cosa dicano ci ho sempre capito poco anch'io.
Scritto da
altg
utente che non utiene
il 2014-11-04 10:07:23.0 alle 2014-11-04 10:07:23.0
Trollate totali: 11540
> > > >
> > >
> > > Video non disponibile.
> > >
> > > Ma ti perdono
> >
> > Cioe` fra tutti e due avete scoperto ora i Rammstein?
>
> Li ho scoperti relativamente tardi ... Credo con "Sonne" (Album "Mutter", il mio preferito).
> Ultimamente li ascolto spesso, il periodo "dIRE sTRAITS" e' passato
Io ultimamente faccio qualche puntatina dalle parti dei 30 seconds to mars... molto spettacolari ma pochi contenuti, gradevoli comunque. Almeno il vocalist e` un buon urlatore.
> > >
> > > Video non disponibile.
> > >
> > > Ma ti perdono

> >
> > Cioe` fra tutti e due avete scoperto ora i Rammstein?

>
> Li ho scoperti relativamente tardi ... Credo con "Sonne" (Album "Mutter", il mio preferito).
> Ultimamente li ascolto spesso, il periodo "dIRE sTRAITS" e' passato

Io ultimamente faccio qualche puntatina dalle parti dei 30 seconds to mars... molto spettacolari ma pochi contenuti, gradevoli comunque. Almeno il vocalist e` un buon urlatore.
Scritto da
altg
utente che non utiene
il 2014-11-03 22:51:54.0 alle 2014-11-03 22:51:54.0
Trollate totali: 11540
> > è il clone dell'oloturio, stasera hai mangiato un yoda?
>
> ARGH! E` vero!
> No sono consufo da tutto il casino mentale di cervello.
Comunque lascio tutto qui per il vero olutorio che cosi` avra` modo di ridere un po' o passare il tempo, che so...
>
> ARGH! E` vero!

> No sono consufo da tutto il casino mentale di cervello.
Comunque lascio tutto qui per il vero olutorio che cosi` avra` modo di ridere un po' o passare il tempo, che so...
Scritto da
altg
utente che non utiene
il 2014-11-03 22:50:52.0 alle 2014-11-03 22:50:52.0
Trollate totali: 11540
> è il clone dell'oloturio, stasera hai mangiato un yoda?
ARGH! E` vero!
No sono consufo da tutto il casino mentale di cervello.
ARGH! E` vero!

No sono consufo da tutto il casino mentale di cervello.
Scritto da
altg
utente che non utiene
il 2014-11-03 22:50:08.0 alle 2014-11-03 22:50:08.0
Trollate totali: 11540
provo a spiegare il disassemblato?
vabbe', proviamo...
Crea lo stack frame. La SUB sottrae ingannevolmente zero perche` il compilatore, in quel punto, non sa quanto sara` lungo lo stack frame e zero e` un placeholder. Viene corretto in seguito col valore giusto (8, due parole di 4 bytes corrispondenti a due locali).
Salva ESI del chiamante (per agire in modo trasparente), poi chiama textIo::Create che e` all'indirizzo 3E3 (offset negativo FFFFFE7B da quel punto). Quella ritorna in ESI l'indirizzo della nuova istanza (che e` nell'heap).
Salva p (EDX) del ramo del chiamante, poi lo carica con l'indirizzo di "console", la tabella metodi virtuali che e` all'indirizzo 20h (4-flat, il che significa un indirizzo espresso in unita` di 4 bytes, che significa 80h in bytes).
Chiama Bind To di textIo (3EE).
recupera p del chiamante.
salva in "messenger" (offset 0 sullo stack frame basato a EBP) il valore di ritorno di "Bind To", che poi e` lo stesso ritornato da textIo::Create perche` "Bind To" ritorna l'equivalente di "this".
recupera r del chiamante.
Ri-salva r del chiamante, poi lo carica con l'indirizzo, tra i dati statici, della stringa hello world allocata a 23h (4-flat, in bytes e` l'offset 8Ch).
Chiama "string::ToText", che converte la stringa a 23h in un oggetto text il cui indirizzo e` ritornato in "r". Deposita "r" (ESI) a EBP+4 (cioe` in "messenger"), e recupera r del chiamante.
ri-salva r del chiamante, carica r con "messenger", salva p (EDX) del chiamante, carica p con "message", chiama textIo::Say (3F4), recupera p ed r.
chiama util::Pause
distrugge lo stack frame e torna al suo chiamante, che e` il modulo di run-time, che a sua volta poi chiude il thread principale e termina l'applicazione.
vabbe', proviamo...
00000559 55 PUSH.r EBP(v) enter (implied) 0000055A 81EC00000000 SUB.rm,i ESP(s), 00000000 00000560 89E5 MOV.rm,r EBP(v), ESP(s)
Crea lo stack frame. La SUB sottrae ingannevolmente zero perche` il compilatore, in quel punto, non sa quanto sara` lungo lo stack frame e zero e` un placeholder. Viene corretto in seguito col valore giusto (8, due parole di 4 bytes corrispondenti a due locali).
00000562 56 PUSH.r ESI(r) here messenger ~ textIo::Create -> Bind To console 00000563 E87BFEFFFF CALL.rel FFFFFE7B ; 000003E3
Salva ESI del chiamante (per agire in modo trasparente), poi chiama textIo::Create che e` all'indirizzo 3E3 (offset negativo FFFFFE7B da quel punto). Quella ritorna in ESI l'indirizzo della nuova istanza (che e` nell'heap).
00000568 52 PUSH.r EDX(p) 00000569 BA20000000 MOV.r,i EDX(p), 00000020
Salva p (EDX) del ramo del chiamante, poi lo carica con l'indirizzo di "console", la tabella metodi virtuali che e` all'indirizzo 20h (4-flat, il che significa un indirizzo espresso in unita` di 4 bytes, che significa 80h in bytes).
0000056E E87BFEFFFF CALL.rel FFFFFE7B ; 000003EE
Chiama Bind To di textIo (3EE).
00000573 5A POP.r EDX(p)
recupera p del chiamante.
00000574 897500 MOV.rm,r [EBP(v)+00], ESI(r)
salva in "messenger" (offset 0 sullo stack frame basato a EBP) il valore di ritorno di "Bind To", che poi e` lo stesso ritornato da textIo::Create perche` "Bind To" ritorna l'equivalente di "this".
00000577 5E POP.r ESI(r)
recupera r del chiamante.
00000578 56 PUSH.r ESI(r) here message ~ {...} as string -> To Text
00000579 BE23000000 MOV.r,i ESI(r), 00000023
Ri-salva r del chiamante, poi lo carica con l'indirizzo, tra i dati statici, della stringa hello world allocata a 23h (4-flat, in bytes e` l'offset 8Ch).
0000057E E8EFFCFFFF CALL.rel FFFFFCEF ; 00000272 00000583 897504 MOV.rm,r [EBP(v)+04], ESI(r) 00000586 5E POP.r ESI(r)
Chiama "string::ToText", che converte la stringa a 23h in un oggetto text il cui indirizzo e` ritornato in "r". Deposita "r" (ESI) a EBP+4 (cioe` in "messenger"), e recupera r del chiamante.
00000587 56 PUSH.r ESI(r) messenger -> Say message 00000588 8B7500 MOV.r,rm ESI(r), [EBP(v)+00] 0000058B 52 PUSH.r EDX(p) 0000058C 8B5504 MOV.r,rm EDX(p), [EBP(v)+04] 0000058F E860FEFFFF CALL.rel FFFFFE60 ; 000003F4 00000594 5A POP.r EDX(p) 00000595 5E POP.r ESI(r)
ri-salva r del chiamante, carica r con "messenger", salva p (EDX) del chiamante, carica p con "message", chiama textIo::Say (3F4), recupera p ed r.
00000596 E840FFFFFF CALL.rel FFFFFF40 ; 000004DB util::Pause
chiama util::Pause
0000059B 81C408000000 ADD.rm,i ESP(s), 00000008 return 000005A1 5D POP.r EBP(v) 000005A2 C3 RET.near
distrugge lo stack frame e torna al suo chiamante, che e` il modulo di run-time, che a sua volta poi chiude il thread principale e termina l'applicazione.
Scritto da
altg
utente che non utiene
il 2014-11-03 22:32:32.0 alle 2014-11-03 22:32:32.0
Trollate totali: 11540
> > ah, casomai, questo e` il disassemblato di "Begin"... 
> >
> >
> >
> > magari si capiscono meglio le dinamiche fra i valori generati e dove vanno a finire. Il registro ESI fa da "ponte" attraverso cui passano gli indirizzi delle istanze (da una freccina all'altra).
>
> è il clone, bamba di un pisano
Clone in che senso? Non duplica oggetti, ne trasporta solo l'indirizzo dell'istanza in memoria. E` un registro di transito che L.in.oleum chiama sempre "r" e che su x86 e` impersonato da ESI. Quando un metodo viene chiamato, l'indirizzo dell'istanza su cui opera lo trova in "r" (ESI). Quando una funzione ritorna un valore, il valore di ritorno e` depositato in "r" (cioe` ESI). Quando i metodi sono concatenati in una fluent interface, i metodi che non sono funzioni ritornano lo stesso valore che aveva "r" in ingresso, cioe` ritornano "this" o "self", per fare paralleli.

> >
> >
> > Begin
> >
> > @LINKER: runStart 559
> >
> > 00000559 55 PUSH.r EBP(v) enter (implied)
> > 0000055A 81EC00000000 SUB.rm,i ESP(s), 00000000
> > 00000560 89E5 MOV.rm,r EBP(v), ESP(s)
> > 00000562 56 PUSH.r ESI(r) here messenger ~ textIo::Create -> Bind To console
> > 00000563 E87BFEFFFF CALL.rel FFFFFE7B ; 000003E3
> > 00000568 52 PUSH.r EDX(p)
> > 00000569 BA20000000 MOV.r,i EDX(p), 00000020
> > 0000056E E87BFEFFFF CALL.rel FFFFFE7B ; 000003EE
> > 00000573 5A POP.r EDX(p)
> > 00000574 897500 MOV.rm,r [EBP(v)+00], ESI(r)
> > 00000577 5E POP.r ESI(r)
> > 00000578 56 PUSH.r ESI(r) here message ~ {...} as string -> To Text
> > 00000579 BE23000000 MOV.r,i ESI(r), 00000023
> > 0000057E E8EFFCFFFF CALL.rel FFFFFCEF ; 00000272
> > 00000583 897504 MOV.rm,r [EBP(v)+04], ESI(r)
> > 00000586 5E POP.r ESI(r)
> > 00000587 56 PUSH.r ESI(r) messenger -> Say message
> > 00000588 8B7500 MOV.r,rm ESI(r), [EBP(v)+00]
> > 0000058B 52 PUSH.r EDX(p)
> > 0000058C 8B5504 MOV.r,rm EDX(p), [EBP(v)+04]
> > 0000058F E860FEFFFF CALL.rel FFFFFE60 ; 000003F4
> > 00000594 5A POP.r EDX(p)
> > 00000595 5E POP.r ESI(r)
> > 00000596 E840FFFFFF CALL.rel FFFFFF40 ; 000004DB util::Pause
> > 0000059B 81C408000000 ADD.rm,i ESP(s), 00000008 return
> > 000005A1 5D POP.r EBP(v)
> > 000005A2 C3 RET.near
> >
> > End (helloWorld)
> > > >
> > magari si capiscono meglio le dinamiche fra i valori generati e dove vanno a finire. Il registro ESI fa da "ponte" attraverso cui passano gli indirizzi delle istanze (da una freccina all'altra).
>
> è il clone, bamba di un pisano
Clone in che senso? Non duplica oggetti, ne trasporta solo l'indirizzo dell'istanza in memoria. E` un registro di transito che L.in.oleum chiama sempre "r" e che su x86 e` impersonato da ESI. Quando un metodo viene chiamato, l'indirizzo dell'istanza su cui opera lo trova in "r" (ESI). Quando una funzione ritorna un valore, il valore di ritorno e` depositato in "r" (cioe` ESI). Quando i metodi sono concatenati in una fluent interface, i metodi che non sono funzioni ritornano lo stesso valore che aveva "r" in ingresso, cioe` ritornano "this" o "self", per fare paralleli.
Scritto da
altg
utente che non utiene
il 2014-11-03 22:21:35.0 alle 2014-11-03 22:21:35.0
Trollate totali: 11540
ah, casomai, questo e` il disassemblato di "Begin"... 
magari si capiscono meglio le dinamiche fra i valori generati e dove vanno a finire. Il registro ESI fa da "ponte" attraverso cui passano gli indirizzi delle istanze (da una freccina all'altra).

Begin
@LINKER: runStart 559
00000559 55 PUSH.r EBP(v) enter (implied)
0000055A 81EC00000000 SUB.rm,i ESP(s), 00000000
00000560 89E5 MOV.rm,r EBP(v), ESP(s)
00000562 56 PUSH.r ESI(r) here messenger ~ textIo::Create -> Bind To console
00000563 E87BFEFFFF CALL.rel FFFFFE7B ; 000003E3
00000568 52 PUSH.r EDX(p)
00000569 BA20000000 MOV.r,i EDX(p), 00000020
0000056E E87BFEFFFF CALL.rel FFFFFE7B ; 000003EE
00000573 5A POP.r EDX(p)
00000574 897500 MOV.rm,r [EBP(v)+00], ESI(r)
00000577 5E POP.r ESI(r)
00000578 56 PUSH.r ESI(r) here message ~ {...} as string -> To Text
00000579 BE23000000 MOV.r,i ESI(r), 00000023
0000057E E8EFFCFFFF CALL.rel FFFFFCEF ; 00000272
00000583 897504 MOV.rm,r [EBP(v)+04], ESI(r)
00000586 5E POP.r ESI(r)
00000587 56 PUSH.r ESI(r) messenger -> Say message
00000588 8B7500 MOV.r,rm ESI(r), [EBP(v)+00]
0000058B 52 PUSH.r EDX(p)
0000058C 8B5504 MOV.r,rm EDX(p), [EBP(v)+04]
0000058F E860FEFFFF CALL.rel FFFFFE60 ; 000003F4
00000594 5A POP.r EDX(p)
00000595 5E POP.r ESI(r)
00000596 E840FFFFFF CALL.rel FFFFFF40 ; 000004DB util::Pause
0000059B 81C408000000 ADD.rm,i ESP(s), 00000008 return
000005A1 5D POP.r EBP(v)
000005A2 C3 RET.near
End (helloWorld)
magari si capiscono meglio le dinamiche fra i valori generati e dove vanno a finire. Il registro ESI fa da "ponte" attraverso cui passano gli indirizzi delle istanze (da una freccina all'altra).
Scritto da
altg
utente che non utiene
il 2014-11-03 22:06:22.0 alle 2014-11-03 22:06:22.0
Trollate totali: 11540
> 
Ma aspe', provo a spiegare che fa riga per riga.
Dice al modulo di run-time di aprire la console all'avvio del programma. Si puo` fare anche dopo, facendo partire il display in "standby" che e` il default, ma nell'helloworld probabilmente sembra piu` facile cosi` perche` non deve includere un altra librerietta che conterrebbe "display::Enter Text Mode".
Include il metodo "To Text" (e implicitamente la definizione della classe "string").
Include (implicitamente) l'interfaccia textIo e (esplicitamente) l'implementazione per la console.
La funzioncina che aspetta un tasto o un qualche altro input dall'utente, cosi` non chiude subito la finestra prima di aver letto hello world. Questo perche` l'applicazione non parte da console, ma in ambiente finestrato.
Vabbe', l'equivalente di "main". La hint dice "framed": in questo modo permette la dichiarazione di variabili locali, e crea lo stack frame.
Dichiara la locale "messenger" che e` assegnata al valore di ritorno di textIo:Create, che crea un'istanza dell'interfaccia textIo. Prima di ritornare, spedisce il puntatore all'istanza a "Bind To" con l'argomento "console", per fare il binding dinamico. L'argomento "console" e` una tabella di metodi virtuali definita nell'implementazione. Viene risolta senza fully qualified name (che sarebbe consoleIo__console) perche` il namespace consoleIo e` un nodo "figlio" di textIo, e il namespace textIo entra a far parte dello scope, nella chiamata, perche` il valore di ritorno da textIo::Create e` "textIo".
Dichiara la locale "message" e la assegna al valore di ritorno di "To Text", che e` un metodo di "string", dopo aver castato esplicitamente la stringa come "string". Meglio non farlo fare da solo al compilatore perche` ci possono essere piu` tipi di stringhe e sequenze di dati statici inizializzati: quella e` una string (32 bit per carattere, null-terminated), ma ci potrebbero essere stringhe di testo di tutte le wordsize a partire, ragionevolmente, da 7 bit, e come chiamarle lo lascio al programmatore.
Chiama il metodo Say dell'interfaccia rappresentata da messenger (che e` istanza di textIo), passandogli come argomento il text di cui sopra.
Se lo schermo e` in text mode, aspetta "enter" e chiude il programma (fa una lettura dummy di stdin per aspettare "enter").

Ma aspe', provo a spiegare che fa riga per riga.
startup displayStatus engage
Dice al modulo di run-time di aprire la console all'avvio del programma. Si puo` fare anche dopo, facendo partire il display in "standby" che e` il default, ma nell'helloworld probabilmente sembra piu` facile cosi` perche` non deve includere un altra librerietta che conterrebbe "display::Enter Text Mode".
include string ToText
Include il metodo "To Text" (e implicitamente la definizione della classe "string").
include textIo on console
Include (implicitamente) l'interfaccia textIo e (esplicitamente) l'implementazione per la console.
include util Pause
La funzioncina che aspetta un tasto o un qualche altro input dall'utente, cosi` non chiude subito la finestra prima di aver letto hello world. Questo perche` l'applicazione non parte da console, ma in ambiente finestrato.
to Begin "framed
Vabbe', l'equivalente di "main". La hint dice "framed": in questo modo permette la dichiarazione di variabili locali, e crea lo stack frame.
here messenger ~ textIo::Create -> Bind To console
Dichiara la locale "messenger" che e` assegnata al valore di ritorno di textIo:Create, che crea un'istanza dell'interfaccia textIo. Prima di ritornare, spedisce il puntatore all'istanza a "Bind To" con l'argomento "console", per fare il binding dinamico. L'argomento "console" e` una tabella di metodi virtuali definita nell'implementazione. Viene risolta senza fully qualified name (che sarebbe consoleIo__console) perche` il namespace consoleIo e` un nodo "figlio" di textIo, e il namespace textIo entra a far parte dello scope, nella chiamata, perche` il valore di ritorno da textIo::Create e` "textIo".
here message ~ { Hello_world! } as string -> To Text
Dichiara la locale "message" e la assegna al valore di ritorno di "To Text", che e` un metodo di "string", dopo aver castato esplicitamente la stringa come "string". Meglio non farlo fare da solo al compilatore perche` ci possono essere piu` tipi di stringhe e sequenze di dati statici inizializzati: quella e` una string (32 bit per carattere, null-terminated), ma ci potrebbero essere stringhe di testo di tutte le wordsize a partire, ragionevolmente, da 7 bit, e come chiamarle lo lascio al programmatore.
messenger -> Say message
Chiama il metodo Say dell'interfaccia rappresentata da messenger (che e` istanza di textIo), passandogli come argomento il text di cui sopra.
util::Pause
return
Se lo schermo e` in text mode, aspetta "enter" e chiude il programma (fa una lettura dummy di stdin per aspettare "enter").