Welcome, Guest. Please login or register.


Author Topic: Fraktálok assemblyben (Read 6900 times)

Offline Povi

  • EP addict
  • *
  • Posts: 1689
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 24.0 Firefox 24.0
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #15 on: 2013.November.04. 14:30:16 »
Quote from: IstvanV
Ezzel a Lua scripttel: timer.lue
biztos én vagyok béna, de nekem runtime error-t ír ki a LUA script futtatásakor...
« Last Edit: 2013.November.04. 18:06:31 by szipucsu, Reason: Hibás rész törölve az idézetből. »
*** Speicherplatz zu klein

Offline IstvanV

  • EP addict
  • *
  • Posts: 4706
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #16 on: 2013.November.04. 14:33:14 »
Quote from: Zozosoft
A végeredménye ugyanaz lesz a programnak mindig (nincs benne rnd)?
Igen. Tehát hatékonyabb lenne az eredményt egyszerű képként menteni. :) De az megoldható lenne, hogy választani lehessen a program indításakor, vagy a koordináták beírásával, vagy pedig több előre definiált érték közül (ilyen formátumban egy "kép" csak 16 byte, esetleg valamivel több ha mindegyiknek más palettája lehet).

Offline IstvanV

  • EP addict
  • *
  • Posts: 4706
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #17 on: 2013.November.04. 14:39:01 »
Quote from: Povi
biztos én vagyok béna, de nekem runtime error-t ír ki a LUA script futtatásakor...
A monitor ablakban mi a hibaüzenet ? A script egyébként csak 2.0.8 (ami ugyan elég régi) vagy újabb ep128emu verzión működik.

Offline Povi

  • EP addict
  • *
  • Posts: 1689
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 24.0 Firefox 24.0
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #18 on: 2013.November.04. 14:40:51 »
"runtime error while running Lua script"

egyébként 2.0.5-ös... szóval én voltam a ludas... :oops:

2.0.9-cel működik :-)
« Last Edit: 2013.November.04. 15:07:00 by Povi »
*** Speicherplatz zu klein

Offline IstvanV

  • EP addict
  • *
  • Posts: 4706
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #19 on: 2013.November.04. 19:19:41 »
Quote from: IstvanV
24 bites egészekkel (fix pontos ábrázolás) valamivel gyorsabb lehetne kisebb pontosság árán. Nagyon nagy különbséget nem jelentene, de talán kevesebb, mint egy óra alatt futna le a program. :)
Valóban, első próbálkozásra ez a módosítás 4916 másodpercről 3430-ra gyorsította a programot. Azonban az eredmény kissé eltér (az első kép az eredeti lebegőpontos verzió, a második pedig a módosított változat):

9880-0

9882-1

Ennek a programnak egyébként korábban Lua változatát is készítettem, amely megtalálható itt és itt. Az EP verzióval azonos képhez az alábbi paramétereket kell beállítani:

Code: [Select]
epInit(40, 200, 0x42)
...
x0 = -0.0238281246
y0 = -0.8064778447
x1 = 0.0011718748
y1 = -0.7908528451
...
      local i, r2 = mandelbrot(x0 + ((x1 - x0) * (x / videoWidth)),
                               y0 + ((y1 - y0) * (y / videoHeight)), 4.0, 88)
      i = math.floor(i * 0.125 + ditherTable[(y % 4) + 1][(x % 4) + 1])
« Last Edit: 2013.November.04. 19:22:53 by IstvanV »

Offline IstvanV

  • EP addict
  • *
  • Posts: 4706
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #20 on: 2013.November.05. 19:38:10 »
Quote from: IstvanV
Azonban az eredmény kissé eltér (az első kép az eredeti lebegőpontos verzió, a második pedig a módosított változat):
A hibát túlcsordulás okozta,ezt javítva már csak kisebb eltérés van a kerekítési hiba miatt. Az új verziók:

* mandel.com (3.24 kB - downloaded 99 times.)    (lebegőpontos, most 4509 másodperc alatt fut le)
* mandel2.com (3.26 kB - downloaded 99 times.)    (24 bites fix pontos, 3157 másodperc)

Forráskód:
* mandel.s (7.89 kB - downloaded 96 times.)  * mandel2.s (7.92 kB - downloaded 97 times.)
* math.s (2.97 kB - downloaded 105 times.)  * float.s (14.46 kB - downloaded 100 times.)  * graph.s (14 kB - downloaded 96 times.)

Hogy valamivel több értelme legyen a programnak, még érdemes lenne beépíteni (választhatóan) több megjeleníthető képet.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4706
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #21 on: 2013.November.07. 10:08:05 »
Quote from: Lacika
Kösz! Kicseréltem.
Néhány file hibás (első ránézésre úgy látszik, azért, mert az eredeti VL formátumú file kicsomagolva nem pontosan a megfelelő méretű, és ez a konvertálásban hibát eredményezett). :oops: Ezeket hamarosan javítom.

Offline Lacika

  • EP addict
  • *
  • Posts: 2876
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 25.0 Firefox 25.0
    • View Profile
    • http://www.ep128.hu
Re: Fraktálok assemblyben
« Reply #22 on: 2013.November.07. 19:50:21 »
Quote from: IstvanV
Néhány file hibás (első ránézésre úgy látszik, azért, mert az eredeti VL formátumú file kicsomagolva nem pontosan a megfelelő méretű, és ez a konvertálásban hibát eredményezett). :oops: Ezeket hamarosan javítom.
Ok! Kösz! Várom! ;-)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4706
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #23 on: 2013.November.07. 20:55:04 »
Javított képek (a BASIC programokat újra futtatva, és a képernyőt az epimgconv csomagban található imgsave.lua script segítségével mentve):

* CARPET.pic (0.32 kB - downloaded 116 times.)
* GOSPER2.pic (2.6 kB - downloaded 116 times.)
* H-TREE.pic (0.88 kB - downloaded 119 times.)
* PEANO.pic (0.25 kB - downloaded 125 times.)
* WIRTH1.pic (0.29 kB - downloaded 124 times.)

Egy újabb konvertált program:

* levyc2.com (1.51 kB - downloaded 134 times.)
* levyc2.s (2.46 kB - downloaded 133 times.)

És akiknek van türelmük várni, azoknak egy továbbfejlesztett mandel2.com, amelyben 10 megjeleníthető kép közül lehet választani (a Space billentyű visszatér a "menühöz", az Esc pedig kilép - ezek bármikor használhatók):

* mandel2.com (3.87 kB - downloaded 130 times.)
* mandel2.s (13.6 kB - downloaded 129 times.)

A forráskódok fordításához a korábban feltöltött graph.s, math.s, és float.s file-ok is kellenek.

Offline Povi

  • EP addict
  • *
  • Posts: 1689
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 67.0.3396.99 Chrome 67.0.3396.99
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #24 on: 2018.July.26. 17:11:06 »
5:31

ez az algoritmus:
https://www.youtube.com/watch?v=rVQMaiz0ydk
https://bisqwit.iki.fi/jutut/kuvat/programming_examples/mandelbrotbtrace.pdf

a lebegőpontos rutin a HiSoft Pascal-ból

lehetne még gyorsítani, mert sok a lapozás (pl. video RAM 0x8000-től, de a Data és Done tömbök is.

*** Speicherplatz zu klein

Offline endi

  • EP addict
  • *
  • Posts: 6710
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 67.0.3396.87 Chrome 67.0.3396.87
    • View Profile
    • Honlapom
Re: Fraktálok assemblyben
« Reply #25 on: 2018.July.26. 17:20:46 »
hú ez jó! tetszik ahogy kirajzolja. és elég gyors is!
A diplomás magyar programozó megcsinált egy pacmant egy év alatt, majd lefikázta a világ legjobb játékait. :D

Offline Povi

  • EP addict
  • *
  • Posts: 1689
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 67.0.3396.99 Chrome 67.0.3396.99
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #26 on: 2018.July.26. 17:22:51 »
hú ez jó! tetszik ahogy kirajzolja. és elég gyors is!
128-as iterációval 5:31, 64 iterációval már csak 3.40
*** Speicherplatz zu klein

Offline szipucsu

  • EP addict
  • *
  • Posts: 7281
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 61.0 Firefox 61.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Fraktálok assemblyben
« Reply #27 on: 2018.July.26. 22:11:32 »
lehetne még gyorsítani, mert sok a lapozás (pl. video RAM 0x8000-től, de a Data és Done tömbök is.
Kb. 1200%-os emu sebességgel igen jó. De alap sebességgel is egész tűrhető idő alatt kirajzolja.
SOUND SOURCE 3,STYLE 16,LEFT 16,RIGHT 64,SYNC 2
SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 2
SOUND PITCH 25,SYNC 2
Videos

Offline Povi

  • EP addict
  • *
  • Posts: 1689
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 67.0.3396.99 Chrome 67.0.3396.99
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #28 on: 2018.July.27. 12:36:51 »
128-as iterációval 5:31, 64 iterációval már csak 3.40
ó, véletlenül 8 Mhz-re állított emuban néztem :-)
Szóval nagyjából dupla ennyi... :-(
*** Speicherplatz zu klein

Offline Povi

  • EP addict
  • *
  • Posts: 1689
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 67.0.3396.99 Chrome 67.0.3396.99
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #29 on: 2018.July.27. 14:44:02 »
« Last Edit: 2018.July.30. 16:32:23 by Povi »
*** Speicherplatz zu klein