Offtopic (I/2012)

Muu yhteisön välinen keskustelu.
User avatar
Untitled.bmp
Member
Posts: 52
Joined: Sat May 12, 2012 7:11 pm
Location: C:/WINDOWS/system32

Re: Offtopic (I/2012)

Post by Untitled.bmp » Wed Jun 06, 2012 7:43 am

Pate5 wrote:Jos olisit vielä tutustunut hieman tarkemmin Flame/Skyswiper -viruksen taustaan, olisit huomannut, että viruksen epäillään olleen levityksessä pari vuotta. Eli johtojen nykäiseminen tuskin auttaa.
Eli tuo virus on ollut jo parisen vuotta piilossa Microsoft Updatessa? Voi kristus..
Intel core i7 3960X 3,9ghz 15mb
Sapphire Radeon HD7970
160gb ssd
2tb hdd
8gb Ram
Windows 7 Ultimate 64-bit & Linux Ubuntu 12.04LTS

User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: Offtopic (I/2012)

Post by esa94 » Wed Jun 06, 2012 10:50 am

Untitled.bmp wrote:
Pate5 wrote:Jos olisit vielä tutustunut hieman tarkemmin Flame/Skyswiper -viruksen taustaan, olisit huomannut, että viruksen epäillään olleen levityksessä pari vuotta. Eli johtojen nykäiseminen tuskin auttaa.
Eli tuo virus on ollut jo parisen vuotta piilossa Microsoft Updatessa? Voi kristus..
Onkos sulla lukutaidossa jotain vikaa? Ens kerralla kun harkitset Updaten ottamista pois päältä lue se artikkeli ensin.

User avatar
TheDuck
Devoted Member
Posts: 632
Joined: Sun Aug 26, 2007 3:51 pm
Location: C:\Program Files\Tuusula\

Re: Offtopic (I/2012)

Post by TheDuck » Wed Jun 06, 2012 3:15 pm

...................................................argh. Kyseinen viirus ei ole windows updatessa, etkä siis mitenkään voi sieltä sitä sieltä saada. Uutisen pointti oli, että jos koneessasi on kyseinen viirus, se pystyy päivittämään itseään windows updaten kautta asettumalla windows updaten palvelimien ja tietokoneesi väliin. Eli siis jos koneessasi on Flame, pystyy se esittämään windows updatea ladatessaan päivityksiä itseensä.
^^

User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: Offtopic (I/2012)

Post by esa94 » Wed Jun 06, 2012 3:20 pm

TheDuck wrote:...................................................argh. Kyseinen viirus ei ole windows updatessa, etkä siis mitenkään voi sieltä sitä sieltä saada. Uutisen pointti oli, että jos koneessasi on kyseinen viirus, se pystyy päivittämään itseään windows updaten kautta asettumalla windows updaten palvelimien ja tietokoneesi väliin. Eli siis jos koneessasi on Flame, pystyy se esittämään windows updatea ladatessaan päivityksiä itseensä.
^tämä

Lanka täynnä lukutaidottomia

User avatar
Konstaduck
Advanced Member
Posts: 267
Joined: Sat Dec 17, 2011 4:09 pm
Location: Nurmijärvi, Finland
Contact:

Re: Offtopic (I/2012)

Post by Konstaduck » Thu Jun 07, 2012 1:40 am

Joo, anteeksi jos häiritsen teidän Flameilua, mutta onko kenelläkään CoolUpdaterin 5.0 versiota? Itse kokisin hyödylliseksi ohjelmaksi. :) Joo ei mitään, jatkakaa...
:lol:
Konstaduck.net
<Ize> Pitäs tehä allekirjotus..
<Ize> Vois keksiä jonkin nasahtavan sanonnan..
<Ize> Siitä tulis upea legenda ja kaikki vaihtaisivat allekirjoituksensa siihen.
<Ize> Ehkä ei kuitenkaa...

User avatar
skinkken
Advanced Member
Posts: 453
Joined: Sat Sep 01, 2007 4:00 pm
Location: Helsinki

Re: Offtopic (I/2012)

Post by skinkken » Thu Jun 07, 2012 2:40 pm

Chaosworm wrote:
skinkken wrote:Musiikki 10
Mitä tämä malo on?

En nyt tarkoita sitä, ettet ansaitsisi musiikista kymppiä, mutta ihmetystä kovasti aiheuttaa se, että musiikista kympin saaminen on edes mahdollista. Onko Suomessa todellakin peruskoulun musiikinopettajia, jotka arvostelevat oppilaita musiikillisen osaamisen perusteella?
Soitan pianoa, 3/3 tutkinto suoritettu. Soitin vähän näytiksi ja heti tuli kymppi. :D

On olemassa 1/3, 2/3, 3/3, D, C, B ja A tutkinnot ja ope on yleensä antanut vähän ylempiä tasoja vastaavia kappaleita kuin mitä kurssia olen suorittamassa. Nyt olen D:tä tekemässä ja joitakin C-kurssin kappaleita soitellut.
Valmiit pelit: House of Horrors , Battle Zone , Über Ball , Itdoti , Space Chaos , Bloxxplosives
Projekti jota teen ehkä joskus vielä: viewtopic.php?f=11&t=2636 <-- Tämä rivi päivitetty 14.1.2013

Awaclus
Forum Veteran
Posts: 2939
Joined: Tue Aug 28, 2007 2:50 pm

Re: Offtopic (I/2012)

Post by Awaclus » Thu Jun 07, 2012 3:22 pm

skinkken wrote:Soitan pianoa, 3/3 tutkinto suoritettu. Soitin vähän näytiksi ja heti tuli kymppi. :D

On olemassa 1/3, 2/3, 3/3, D, C, B ja A tutkinnot ja ope on yleensä antanut vähän ylempiä tasoja vastaavia kappaleita kuin mitä kurssia olen suorittamassa. Nyt olen D:tä tekemässä ja joitakin C-kurssin kappaleita soitellut.
Itseni on nyt vastaavassa tilanteessa sellon kanssa, lisäksi pianoa yli 10 vuotta olen soittanut sekä rumpuja ja bassoa noin 7 vuotta (lukiossa myös kitaran soiton aloitin, mutta tällä ei ole mitään merkitystä peruskoulun kannalta), näistä kaikista muista mitään tutkintoja suorittamatta. En saanut soittaa pakollisen musiikin tunneilla mitään näistä instrumenteista, vaan musiikillisen osaamisen esitteleminen rajautui lauluun ja handheld-perkussioihin. Teoriasta ja säveltapailusta myös oli jo silloin seiskaluokalla 3/3 suoritettu täysin pistein käymättä teoriatunneilla ja lukematta kokeeseen yhtään, mutta musiikin teoriaa ei taidettu edes käsitellä koulussa.

User avatar
Pettis
The Evil Admin
The Evil Admin
Posts: 1042
Joined: Sun Aug 26, 2007 5:08 pm
Location: Rovaniemi
Contact:

Re: Offtopic (I/2012)

Post by Pettis » Fri Jun 08, 2012 2:35 am

TheDuck wrote:...................................................argh. Kyseinen viirus ei ole windows updatessa, etkä siis mitenkään voi sieltä sitä sieltä saada. Uutisen pointti oli, että jos koneessasi on kyseinen viirus, se pystyy päivittämään itseään windows updaten kautta asettumalla windows updaten palvelimien ja tietokoneesi väliin. Eli siis jos koneessasi on Flame, pystyy se esittämään windows updatea ladatessaan päivityksiä itseensä.

Ei, vaan nimenomaan se voi tulla koneelle windows updaten kautta. Microsoftin sertifikaattikämmien vuoksi ohjelmistojen tekijät voi esittää olevansa windows update ja man-in-the-middle -hyökkäyksellä tunkea koneeseen mitä lystää, käytännössä itse viruksen.

Ja ei, se virus ei ole ollut siellä Windows updatessa sitä kahta vuotta. Virus vain on ollut olemassa sen 2 vuotta, mutta hyödyntää nyt tuota Microsoftin kämmin aiheuttamaa tietoturva-aukkoa, joka mahdollistaa sen, että virus voi esiintyä Microsoftin ohjelmistona.
CB Repository .com - Sinne ne kaikki koodit menneet on!
MunVerkko - Ilmaisia foorumeita ja blogeja

User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: Offtopic (I/2012)

Post by esa94 » Fri Jun 08, 2012 3:40 am

Pettis wrote:Ei, vaan nimenomaan se voi tulla koneelle windows updaten kautta. Microsoftin sertifikaattikämmien vuoksi ohjelmistojen tekijät voi esittää olevansa windows update ja man-in-the-middle -hyökkäyksellä tunkea koneeseen mitä lystää, käytännössä itse viruksen.
Mutta täysin puhtaaseen verkkoon ei onnistu koska täytyy DNS spoofata.

User avatar
Pettis
The Evil Admin
The Evil Admin
Posts: 1042
Joined: Sun Aug 26, 2007 5:08 pm
Location: Rovaniemi
Contact:

Re: Offtopic (I/2012)

Post by Pettis » Fri Jun 08, 2012 10:16 pm

esa94 wrote:
Pettis wrote:Ei, vaan nimenomaan se voi tulla koneelle windows updaten kautta. Microsoftin sertifikaattikämmien vuoksi ohjelmistojen tekijät voi esittää olevansa windows update ja man-in-the-middle -hyökkäyksellä tunkea koneeseen mitä lystää, käytännössä itse viruksen.
Mutta täysin puhtaaseen verkkoon ei onnistu koska täytyy DNS spoofata.
Ei se ole ainoa tapa tehdä man-in-the-middle -hyökkäystä. Nyt taitaa olla sinun vuoro mennä opettelemaan asioita ja ymmärtämään luettua kun sitä täällä niin monesta sanot.
CB Repository .com - Sinne ne kaikki koodit menneet on!
MunVerkko - Ilmaisia foorumeita ja blogeja

User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: Offtopic (I/2012)

Post by esa94 » Sat Jun 09, 2012 1:48 am

Pettis wrote:
esa94 wrote:
Pettis wrote:Ei, vaan nimenomaan se voi tulla koneelle windows updaten kautta. Microsoftin sertifikaattikämmien vuoksi ohjelmistojen tekijät voi esittää olevansa windows update ja man-in-the-middle -hyökkäyksellä tunkea koneeseen mitä lystää, käytännössä itse viruksen.
Mutta täysin puhtaaseen verkkoon ei onnistu koska täytyy DNS spoofata.
Ei se ole ainoa tapa tehdä man-in-the-middle -hyökkäystä. Nyt taitaa olla sinun vuoro mennä opettelemaan asioita ja ymmärtämään luettua kun sitä täällä niin monesta sanot.
Meinasin jo muokata muotoon "esimerkiksi" mutta en sitten jaksanut kolmelta aamuyöllä :<

User avatar
rami123
Advanced Member
Posts: 354
Joined: Mon Jun 23, 2008 8:20 pm
Location: Kittilä

Re: Offtopic (I/2012)

Post by rami123 » Sat Jun 09, 2012 11:15 pm

Tervehdys!

Siitä on ollut pitkähkö aika kun viimeksi täällä vierailin, ei ole aikaa ollut eikä jaksamista koulujen takia. Nyt on kesäloma ja aikaa. Tässä ootellessa kannettavaa, tilasin suoraan sonyltä jokusen aikaa sieltä menee. Pääsee kunnolla cb:n pariin.

Miten on cb v3:sen tilanne?

User avatar
valscion
Moderator
Moderator
Posts: 1587
Joined: Thu Dec 06, 2007 8:46 pm
Location: Espoo
Contact:

Re: Offtopic (I/2012)

Post by valscion » Sat Jun 09, 2012 11:33 pm

rami123 wrote:Tervehdys!

Siitä on ollut pitkähkö aika kun viimeksi täällä vierailin, ei ole aikaa ollut eikä jaksamista koulujen takia. Nyt on kesäloma ja aikaa. Tässä ootellessa kannettavaa, tilasin suoraan sonyltä jokusen aikaa sieltä menee. Pääsee kunnolla cb:n pariin.

Miten on cb v3:sen tilanne?
CB v3:sta saadaan odottaa kyllä vielä todella pitkään, tällä hetkellä on DevTeam säätämässä CoolBasic Classicin kimpussa.

Sillä välin kun CBC valmistuilee, suosittelen tutustumaan meidän projektiimme tehdä uusi runtime CoolBasicille. Sillä pystyy ajamaan samoja CB-ohjelmia mutta huimasti nopeammin! Kyseessä on siis cbEnchanted - uudelleenkirjoitettu runtime, uusin julkaisuversio on 0.2.0. Projekti ei vielä ole 100% valmis sekä siinä on vielä monia bugeja mutta kyllä sillä silti saa kummasti CoolBasic-innon uudelleen päälle ;)
cbEnchanted, uudelleenkirjoitettu runtime. Uusin versio: 0.4.1 — Nyt myös sorsat GitHubissa!
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com

User avatar
rami123
Advanced Member
Posts: 354
Joined: Mon Jun 23, 2008 8:20 pm
Location: Kittilä

Re: Offtopic (I/2012)

Post by rami123 » Sat Jun 09, 2012 11:39 pm

Kuulostaa muuten hyvältä! Lataan heti ja kokeilen. :)

Kovasti on tekemisen halua ja ideoita tullut pakkohan niitä purkamaan päässä.

User avatar
Pettis
The Evil Admin
The Evil Admin
Posts: 1042
Joined: Sun Aug 26, 2007 5:08 pm
Location: Rovaniemi
Contact:

Re: Offtopic (I/2012)

Post by Pettis » Sun Jun 10, 2012 12:31 am

VesQ wrote:Sillä välin kun CBC valmistuilee - -
Saattaapa tuo valmistua, saattaapa tuo olla valmistumattaki... :P
CB Repository .com - Sinne ne kaikki koodit menneet on!
MunVerkko - Ilmaisia foorumeita ja blogeja

User avatar
naputtelija
Devoted Member
Posts: 718
Joined: Wed Nov 03, 2010 8:56 pm
Location: Joku piste pohjoisessa.

Re: Offtopic (I/2012)

Post by naputtelija » Sun Jun 10, 2012 12:44 am

On se kiva kun huomaa, etten ole Lapin ainoa CB:läinen. Onkos foorumeilla muitakin Lapista minun ja ramin lisäksi?
<Ize> Pitäs tehä allekirjotus..
<Ize> Vois keksiä jonkin nasahtavan sanonnan..
<Ize> Siitä tulis upea legenda ja kaikki vaihtaisivat allekirjoituksensa siihen.
<Ize> Ehkä ei kuitenkaa...

User avatar
Latexi95
Guru
Posts: 1164
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: Offtopic (I/2012)

Post by Latexi95 » Sun Jun 10, 2012 12:49 am

naputtelija wrote:On se kiva kun huomaa, etten ole Lapin ainoa CB:läinen. Onkos foorumeilla muitakin Lapista minun ja ramin lisäksi?
Onhan niitä vaikka kuinka. (Itse en kylläkään kuulu niihin)


Pettis: Eipäs pelotella projektin jäätymisellä. :lol:

User avatar
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Offtopic (I/2012)

Post by MaGetzUb » Sun Jun 10, 2012 3:31 am

Tutkiskelimpas tässä huvikseni wanhan CoolBasicin tyyppien toimintaa. :D Huomasin että ConvertToIntegerillä saatua osoitetta voi ofc käyttää muistipalana. :D Noh tulikin tutkittua melko perusteellisesti. Okei siis, Ensimmäiset 4 tavua näyttävät tyypin jäsenessä olevan viite edelliseen tyypin jäseneen, ja neljä seuraavaa tavua näyttävät olevan viite seuraavaan jäseneen. Ja tavusta 12 eteenpäin alkaa käyttäjän oma määrittelemä data.

Code: Select all

Type TestType
    Field _short As Short //varataan 2 tavua
    Field _string As String //varataan viite merkkijonolle
End Type 

Dim A.TestType
Dim B.TestType
Dim C.TestType 

A = New (TestType)
B = New (TestType)
C = New (TestType)

B\_short = 1234
B\_string = "Wanha cb on yllätyksiä täynnä."

SCREEN 900, 600

block = ConvertToInteger(B)

Color 255, 0, 0
Print "Jäsenen A osoite: "+Hex(ConvertToInteger(A))
Color 0, 255, 255
Print "Jäsenen C osoite: "+Hex(ConvertToInteger(C))

Color 255, 255, 255
//Käyttäjän oma data alkaa tavusta 12
Print PeekShort(block, 12)

Print ""
blockSize = MEMBlockSize(block)
Print "Tyyppijäsenen muistipalan koko: "+blocksize
//Tiedetään, että _short muuttuja vie 2 tavua, luetaan siis tavusta 14 osoitin merkkijonoon
Print ""
refText = PeekInt(block, 14)
lenght = MEMBlockSize(refText) //Tarkistetaan merkkijonon pituus

Print "Tässä tulee _string:n osoite: "+Hex(refText)
Print ""

Color 255, 128, 0
Print "Mitä osoite sisältää: "


Color 255, 255, 0
For i = 0 To lenght-1
    Write Chr(PeekByte(refText, i))
Next i
Print ""
Print ""


Color 255, 255, 255 
Print "0 - 3 tavut viittaavat edelliseen tyypin jäseneen"
Print "3 - 7 tavut viittaavat seuraavaan tyypin jäseneen"
Print ""
Print ""
Print "Data alkaa: "
For i = 0 To blockSize
    s$ = Hex(PeekByte(block, i))
    If i=> 0 And i=< 3 Then Color 255, 0, 0 : s$ = s$ + " <- Jäsen A"
    If i > 3 And i=< 7 Then Color 0, 255, 255 : s$ = s$ + " <- Jäsen C"
    If i > 7 Then Color 255, 255, 255

    If i=< 7 Then s$ = StrInsert(s$, 6, "   ")
    If i = 8 Then s$ = s$ + " <- Tämä tavu tässä, mikä se on? Se ei ainakaan ole mikään järjestys luku."
    If i = 12 Then s$ = s$ + " <- Tässä alkaa käyttäjän itse määrittelemä data. "
    Print i +" == "+ Hex(i)+" :: "+s$
Next i

WaitKey 

Eipä tässä muuta, ajattelin että tätä tietoahan voisi koittaa soveltaa DLL:ien kanssa...
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.

User avatar
Latexi95
Guru
Posts: 1164
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: Offtopic (I/2012)

Post by Latexi95 » Sun Jun 10, 2012 11:00 am

MaGetzUb wrote:Tutkiskelimpas tässä huvikseni wanhan CoolBasicin tyyppien toimintaa. :D Huomasin että ConvertToIntegerillä saatua osoitetta voi ofc käyttää muistipalana. :D Noh tulikin tutkittua melko perusteellisesti. Okei siis, Ensimmäiset 4 tavua näyttävät tyypin jäsenessä olevan viite edelliseen tyypin jäseneen, ja neljä seuraavaa tavua näyttävät olevan viite seuraavaan jäseneen. Ja tavusta 12 eteenpäin alkaa käyttäjän oma määrittelemä data.

Code: Select all

Type TestType
    Field _short As Short //varataan 2 tavua
    Field _string As String //varataan viite merkkijonolle
End Type 

Dim A.TestType
Dim B.TestType
Dim C.TestType 

A = New (TestType)
B = New (TestType)
C = New (TestType)

B\_short = 1234
B\_string = "Wanha cb on yllätyksiä täynnä."

SCREEN 900, 600

block = ConvertToInteger(B)

Color 255, 0, 0
Print "Jäsenen A osoite: "+Hex(ConvertToInteger(A))
Color 0, 255, 255
Print "Jäsenen C osoite: "+Hex(ConvertToInteger(C))

Color 255, 255, 255
//Käyttäjän oma data alkaa tavusta 12
Print PeekShort(block, 12)

Print ""
blockSize = MEMBlockSize(block)
Print "Tyyppijäsenen muistipalan koko: "+blocksize
//Tiedetään, että _short muuttuja vie 2 tavua, luetaan siis tavusta 14 osoitin merkkijonoon
Print ""
refText = PeekInt(block, 14)
lenght = MEMBlockSize(refText) //Tarkistetaan merkkijonon pituus

Print "Tässä tulee _string:n osoite: "+Hex(refText)
Print ""

Color 255, 128, 0
Print "Mitä osoite sisältää: "


Color 255, 255, 0
For i = 0 To lenght-1
    Write Chr(PeekByte(refText, i))
Next i
Print ""
Print ""


Color 255, 255, 255 
Print "0 - 3 tavut viittaavat edelliseen tyypin jäseneen"
Print "3 - 7 tavut viittaavat seuraavaan tyypin jäseneen"
Print ""
Print ""
Print "Data alkaa: "
For i = 0 To blockSize
    s$ = Hex(PeekByte(block, i))
    If i=> 0 And i=< 3 Then Color 255, 0, 0 : s$ = s$ + " <- Jäsen A"
    If i > 3 And i=< 7 Then Color 0, 255, 255 : s$ = s$ + " <- Jäsen C"
    If i > 7 Then Color 255, 255, 255

    If i=< 7 Then s$ = StrInsert(s$, 6, "   ")
    If i = 8 Then s$ = s$ + " <- Tämä tavu tässä, mikä se on? Se ei ainakaan ole mikään järjestys luku."
    If i = 12 Then s$ = s$ + " <- Tässä alkaa käyttäjän itse määrittelemä data. "
    Print i +" == "+ Hex(i)+" :: "+s$
Next i

WaitKey 

Eipä tässä muuta, ajattelin että tätä tietoahan voisi koittaa soveltaa DLL:ien kanssa...
Valitettavasti kyllä cbE ei tue tuota, kun integereihin ei tallenneta suoraa osoitetta 64bittisyyden tukemiseksi.
Aika yllättävää, että kuitenkin tuollainenkin toimii. Vaikka noin suurinpiirtein tiesinkin CB:n tyyppien toteutuksen, kun tein tyypi cbE:hen, niin ei tullut mieleen kokeilla tuota. :D
CB:stä tuntuu kyllä löytyvät jatkuvasti uusia ominaisuuksia, kun siihen perehtyy tarkemmin.

User avatar
MetalRain
Active Member
Posts: 188
Joined: Sun Mar 21, 2010 12:17 pm
Location: Espoo

Re: Offtopic (I/2012)

Post by MetalRain » Sun Jun 10, 2012 3:24 pm

MaGetzUb wrote:Tutkiskelimpas tässä huvikseni wanhan CoolBasicin tyyppien toimintaa. :D Huomasin että ConvertToIntegerillä saatua osoitetta voi ofc käyttää muistipalana. :D Noh tulikin tutkittua melko perusteellisesti. Okei siis, Ensimmäiset 4 tavua näyttävät tyypin jäsenessä olevan viite edelliseen tyypin jäseneen, ja neljä seuraavaa tavua näyttävät olevan viite seuraavaan jäseneen. Ja tavusta 12 eteenpäin alkaa käyttäjän oma määrittelemä data.
Tämähän on hieno löytö. Katselin että tuo kumma ykkönen osoitteessa 8 on tyyppikokoelman järjestysnumero, joka kertoo monennenko tyyppikokoelman jäsen kyseessa oleva muistipala on. Tätä voi sitten hyödyntää vaikka siten että funktio tunnistaa muistipalan tyyppikokoelman id numeron perusteella miten sen kanssa tulee toimia. Näin voidaan käyttää samaa funktiota eri tyyppikokoelmien jäsenille kunkin tyyppikokoelmalle ominaisella tavalla. Tässä pieni esimerkki joka tulostaa tyyppikokoelman jäsenen sisällön.

Code: Select all

SCREEN 900, 600

Dim formats(4) As String 

Type IntType
    Field a 
End Type 

formats(1) = "i"

Type StringType
    Field b$ 
End Type 

formats(2) = "s"

Type MultType
    Field h As Short 
   Field i
    Field s As String 
End Type 

formats(3) = "his"

Type Triangle
    Field p1 As Float
   Field p2 As Float
   Field p3 As Float
End Type 

formats(4) = "fff"

For i=0 To 3

   in.IntType = New (IntType)
   in\a = Rand(255)
   
   st.StringType = New (StringType)
   st\b = "StringType instance number "+i
   
   mu.MultType = New (MultType)
   mu\h = Rand(64)
   mu\i = Timer()
   mu\s = "MultType instance number "+i
   
   tr.Triangle = New (Triangle)
   tr\p1 = Rnd(0.0,1.0)
   tr\p2 = Rnd(0.0,1.0)
   tr\p3 = Rnd(0.0,1.0)

Next i

Print "Printing out IntType instances"

For m1.IntType = Each IntType
   printTypeContents(ConvertToInteger(m1))
Next m1

WaitKey 
Cls 
Locate 0,0

Print "Printing out StringType instances"

For m2.StringType = Each StringType
   printTypeContents(ConvertToInteger(m2))
Next m2

WaitKey
Cls 
Locate 0,0

Print "Printing out MultType instances"

For m3.MultType = Each MultType
   printTypeContents(ConvertToInteger(m3))
Next m3

WaitKey
Cls 
Locate 0,0

Print "Printing out Triangle instances"

For m4.Triangle = Each Triangle
   printTypeContents(ConvertToInteger(m4))
Next m4

WaitKey

Function printTypeContents(mem)

   pointer = 12
   size = MEMBlockSize(mem)
   typeID = PeekInt(mem,8)
   
   format$ = formats(typeID)
   
   Print "Memblock("+size+") @ "+mem+" of Type: "+typeID
   Print "Prev: "+PeekInt(mem,0)+" Next: "+PeekInt(mem,4)
   
   For i=1 To Len(format$)
   
      c$ = Mid(format$,i,1)
      
      Select c$
         Case "s"
         
            strPntr = PeekInt(mem,pointer)
            
            strLen = MEMBlockSize(strPntr)
            
            s$ = ""
            
            For o=0 To strLen-1
               s$ = s$ + Chr(PeekByte(strPntr,o))
            Next o
            
            Print "String("+strLen+") @ "+pointer+": "+s$
            
            pointer = pointer +4
            
         Case "i"
         
            Print "Integer @ "+pointer+": "+PeekInt(mem,pointer)
         
            pointer = pointer +4
         
         Case "h"
         
            Print "Short @ "+pointer+": "+PeekShort(mem,pointer)
         
            pointer = pointer +2
         
         Case "b"
         
            Print "Short @ "+pointer+": "+PeekByte(mem,pointer)
         
            pointer = pointer +1
         
         Case "f"
         
            Print "Float @ "+pointer+": "+PeekFloat(mem,pointer)
         
            pointer = pointer +4
         
      End Select 
   
   
   Next i
   
   Print "" 

End Function 

Post Reply