Welcome, Guest. Please login or register.


Author Topic: Általános BASIC Kérdések (Read 423969 times)

Offline Lacika

  • EP addict
  • *
  • Posts: 3191
  • Country: hu
    • http://www.ep128.hu
Re: Általános BASIC Kérdések
« Reply #780 on: 2015.February.19. 19:44:56 »
a kirajzolás is

Sokat gyorsított rajta, hogy kiszedtem a  felesleges at x,y (jelen esetben gotoxy) utasítást... :oops:

Offline Tuby128

  • EP addict
  • *
  • Posts: 1448
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #781 on: 2015.May.03. 22:25:10 »
Szeretnék basic-ből végrehajtani egy
CALL memóriacím
utasítást. Kérdésem, hogy a
CALL USR(x,0)
ahol az x egy direkt memóriacím, megfelel-e erre?

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #782 on: 2015.May.03. 22:33:09 »
Igen. A második szám a HL-be átadott paraméter.

Offline Tuby128

  • EP addict
  • *
  • Posts: 1448
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #783 on: 2015.May.04. 09:39:58 »
Valahogy nem működik a dolog. Talán a
CALL USR(x,0)
-ban az x nem direkt memóriacím, hanem egy változónak a basic-ben tárolt sorszáma, amit aztán egy táblázatból kikeres.
Lehet a megoldás az, hogy írok egy rutint, ami meghívja, és akkor

ALLOCATE 1
jmp=CODE("E9")    ! JP (HL)
CALL USR(jmp,16384)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #784 on: 2015.May.04. 09:46:30 »
Működik az, csak a címednek a nullás lapon kell lennie.

Offline Tuby128

  • EP addict
  • *
  • Posts: 1448
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #785 on: 2015.May.04. 09:49:05 »
Értem, tehát az X maximalizálva van 16383-ban.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #786 on: 2015.May.04. 09:53:43 »
Igen mert a többi lapot lapozgatja a BASIC futásközben.

Ha jól értem a C kódodat szeretnéd próbálgatni.

Ehhez kellene pár pici CODE rutin:
1) ami lefoglal egy szegmenst
2) ami betölti a szegmensbe a kódot
3) ami futtatja: elmenti a 1-es lapot, belapozza a te szegmensedet, meghívja a rutint, végén visszalapozza az eredeti 1-es lapot, és visszatér
4) program végén, ami felszabadítja a szegmenst

Offline Tuby128

  • EP addict
  • *
  • Posts: 1448
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #787 on: 2015.May.04. 09:57:28 »
Ettől egyszerűbb a dolog, ez egy nem visszatérő rutin. Induláskor belapoz egy üres szegmenst a 0-ás lapra, 56 (dec) címre c9-et tölt, és utána szabadon garázdálkodik. Csak hard-reset-tel van visszaút.

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: Általános BASIC Kérdések
« Reply #788 on: 2015.July.23. 16:40:10 »
Ha valakinek van kedve, igazi gépen lestopperelhetné ezeket a teszteket :-)

és akkor ki lehetne egészíteni ez a táblázatot:

http://cpcwiki.eu/index.php/BASIC_Benchmark
*** Speicherplatz zu klein

Offline gflorez

  • EP addict
  • *
  • Posts: 3607
  • Country: es
    • Támogató Támogató
Re: Általános BASIC Kérdések
« Reply #789 on: 2015.July.24. 00:05:39 »
The Enterprise Basic gives to me a benchmark of approximately 83,71(2,16 8,25 17,84 29,23 31,14 44,95 119,83 416,34).

You have to put this at the 8 phase to work as the test:

105 OPTION ANGLE DEGREES

Upto the 6 phase it makes an average mark, but increases enormously at 7 and 8 because its BCD arithmetic and also probably because the Enterprise works internally in radians and have to convert them to degrees.


If I put:

105 D=10
150 B=LOG(D)
160 C=SIN(D)

Then the 8 phase gives 306,23 working directly in radians, and gives a total benchmark of 69,94. Not so miserably bad for a more sophisticate Basic...
« Last Edit: 2015.July.24. 14:41:31 by gflorez »

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #790 on: 2015.August.02. 12:53:52 »
Van basicben valami lehetőség az RBG függvényen kívül, amivel a szín fényerősségét lehet állítani? Pl. fokozatos elhalványodásra. Pl. a SET COLOR 1,x utasítás segítségével, ahol az x értéke egy FOR cikluson belül változna.
Nem tudom, milyen összefüggés van a színkódok és a szín ill. annak erőssége, fényessége között. Pl. hogyan érhetők el egymás után pl. a zöld, kék, stb. árnyalatai, fokozatos halványodással/erősödéssel.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #791 on: 2015.August.02. 13:03:32 »
hát túl sok fokozatra nem kell számítanod, mert a kék színkomponensnek 4, másik kettőnek meg 8 árnyalata van,
ráadásul ha a feketét leszámítod, akkor mindkét számból kivonhatsz egyet,
de itt van a színkód bitjeinek jelentése, ami leírja hogy az R,G,B komponenseket milyen bitekre kell a színkódban beírni:

http://gafz.enterpriseforever.com/Dokumentacio/Konyvek/EXOS_2.1_technikal_information/hardware/Nick.html#12
« Last Edit: 2015.August.02. 16:56:24 by Z80System »
Z80 System

Offline endi

  • EP addict
  • *
  • Posts: 7298
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
    • Honlapom
Re: Általános BASIC Kérdések
« Reply #792 on: 2015.August.02. 14:48:08 »
Van basicben valami lehetőség az RBG függvényen kívül, amivel a szín fényerősségét lehet állítani? Pl. fokozatos elhalványodásra. Pl. a SET COLOR 1,x utasítás segítségével, ahol az x értéke egy FOR cikluson belül változna.
Nem tudom, milyen összefüggés van a színkódok és a szín ill. annak erőssége, fényessége között. Pl. hogyan érhetők el egymás után pl. a zöld, kék, stb. árnyalatai, fokozatos halványodással/erősödéssel.

hát a basic RGB függvényben az értékek pont a fényességet határozzák meg 0-1-ig
Vigyázat! Szektás vagyok! :)

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #793 on: 2015.August.02. 15:13:18 »
hát a basic RGB függvényben az értékek pont a fényességet határozzák meg 0-1-ig
Igen, de a 0 és 1 közötti számokat a Zzzip nem nagyon szereti. Bár RGB-nél még valamennyire elfogadó. Na, majd meglátjuk... De valami módszer biztos van, amivel sorba állíthatóak a 255 színből egy adott színnek az árnyalatai...
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #794 on: 2015.August.02. 15:16:51 »
Jó lenne egy basic parancs, ami után ha beírunk egy karaktersorozatot vagy basic utasítást, kilistázza azokat a sorokat, ahol a programban megtalálható az adott utasítás/karaktersorozat.
Pl.

LIST FOR "PRINT"
  310 PRINT AT X,Y:"x";
 1120 PRINT #101,AT 8,A:A$
ok

Ilyesmit nem lehet megvalósítani valahogy?

Tudom, hex editorban rákeresünk az adott fájlban, de az nem az igazi.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos