Welcome, Guest. Please login or register.


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

Offline nyuzga

  • EP addict
  • *
  • Posts: 2280
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #90 on: 2008.December.01. 09:10:34 »
Ha hirtelen ilyen ábrát tudtam volna rajzolni az EP-en, akkor ilyen listát csapok össze  :ds_icon_cheesygrin: Errõl a BASIC-ról nem hallottam még, bár nem vagyok BASIC párti, a Delphi-vel jól elvagyok.

A DECIMAL BASIC 1mega és ingyenes.
Át tudnád ezt EP-re írni? :)

OPTION ANGLE DEGREES
LET q=2^20
LET fraz=5
LET ng= 3
LET q1 = 250
LET f=(q1/q)
LET cr=5
SET WINDOW -q1-cr,q1+cr,-q1-cr,q1+cr
LET xv=0
LET yv=0
LET ro=q/fraz*ng
LET th=0
LET xv=fraz/ng*f*ro*COS(th)
LET yv=0
FOR i = 1 TO q/fraz*ng
LET n=n+i
LET t=MOD(n,q)
IF t=0 THEN LET t=q
LET th=t*(360/(q) )
LET x=fraz/ng*f*ro*COS(th)
LET y=fraz/ng*f*ro*SIN(th)
SET LINE COLOR MOD(i , fraz)+1
PLOT LINES: xv,yv;x,y
LET xv=x
LET yv=y
NEXT i
END
[ Guests cannot view attachments ]
« Last Edit: 2008.December.01. 09:38:15 by nyuzga »

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #91 on: 2008.December.01. 09:18:33 »
Errõl jut eszembe. Ha összehasonlítjuk a különbözõ gépek különbözõ BASIC nyelveit akárhány bites, nekem feltûnik valami. A fejlesztõk igyekeztek a szótárból kikeresni a lehetõ legtöbb féle szinonímát egy parancsra, nehogymár ugyanaz legyen mint a többi.
Éppen ezért a kezdeti burjánzás után szabványosították a nyelvet. Az EP-nél külön ki is volt emelve a tulajdonságoknál, hogy már ezt az "ANSI Standard" BASIC-et "beszéli"!
Aztán gondolom a gépek és lehetõségek fejlõdésével megint el kezdett burjánozni a különbözõ új utasítások tömege :-) , de ahogy nézem ezt utána újabb ANSI szabványokkal igyekeztek rendbe tenni.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #92 on: 2008.December.01. 09:40:53 »
Egyébként az igazi programozási tudáshoz nem az utasításokat kell tudni, hanem azt, hogy hogyan bontunk le egy feladatot olyan kisebb elemekre amiket már el tud végezni a gép. Aztán már csak meg kell nézni a kézikönyvben, hogy az aktuális programnyelvben, hogy hívják a kérdéses "építõkockát" :-)
Anno pl a Kandón elsõben C-t kellett tanulni. Elsõ órán elmondták, hogy mi lesz majd az évvégi feladat, második órán beadtam készen, pedig addig soha nem programoztam C-ben :-) 5-ös, többet nem is kellett bejárnom :-)
A legtöbb általános programnyelv (BASIC, Pascal, C, stb) ugyanazokra az alapokra épül, csak némelyikben több az alap "építõkocka". Sõt még az assemblyt is idesorolnám, az elv itt is ugyanaz, csak itt egész minimál az alapkészletünk, minden nagyobb elemet már nekünk kell létrehozni.

Offline vizor

  • EP fan
  • *
  • Posts: 238
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #93 on: 2008.December.01. 10:55:37 »
Igen, ez így van. Életemben tegnapelõtt láttam másodszor QBasic-et, ezt a pici progi átiratot is a help alapján eszkábáltam össze némi próbálkozással  :)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Általános BASIC Kérdések
« Reply #94 on: 2008.December.01. 14:06:34 »
Zozó, ilyet láttál már? :D
Bár ez nem igazán tartozik ehhez a témához, de már van újabb ep128emu 2.0.6 beta verzió is (lásd itt). :)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Általános BASIC Kérdések
« Reply #95 on: 2008.December.01. 14:15:25 »
Át tudnád ezt EP-re írni? :)
epgraph.bas - a program IS-BASIC-re átírva, 16 színű módban (lehetne 4 színű is, akkor nagyobb lenne a felbontás, de a színek számát csökkenteni kellene). Mivel nagyon lassan fut, még emulátoron 200 MHz-es Z80-at beállítva és a memória időzítést kikapcsolva is, ezért ez egy kissé "lebutított" változat, amelyben 16-szor kevesebbszer fut le a ciklus.
epgraph2.bas - ugyanaz gyorsítás nélkül, azoknak, akik nagyon türelmesek :)
epgraph.lua - ez csak érdekesség, ep128emu Lua script verzió (a debuggerben lehet futtatni). Még így is viszonylag lassú (nekem a Windowsos emulátorral kb. 9-10 másodperc), de az idő jelentős részét a vonalrajzolás teszi ki. Bár ez a program bonyolultnak tűnhet, ez csak az EP képernyőjére rajzoló rutinok miatt van; az eredeti BASIC programot egyébként minimális változtatásokkal át lehetett írni.
« Last Edit: 2008.December.01. 14:36:00 by IstvanV »

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Általános BASIC Kérdések
« Reply #96 on: 2008.December.01. 16:37:52 »
epgraph.lua - ez csak érdekesség, ep128emu Lua script verzió (a debuggerben lehet futtatni). Még így is viszonylag lassú (nekem a Windowsos emulátorral kb. 9-10 másodperc), de az idő jelentős részét a vonalrajzolás teszi ki. Bár ez a program bonyolultnak tűnhet, ez csak az EP képernyőjére rajzoló rutinok miatt van; az eredeti BASIC programot egyébként minimális változtatásokkal át lehetett írni.
Animált változat :) Indítása: "Load from file", "Run", és "Step".

Offline nyuzga

  • EP addict
  • *
  • Posts: 2280
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #97 on: 2008.December.01. 16:38:40 »
Az igen! :cool:
A lua 10 másodperc alatt kirajzolta.
Köszönöm. :)
[ Guests cannot view attachments ]

Offline vizor

  • EP fan
  • *
  • Posts: 238
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #98 on: 2008.December.01. 16:41:07 »
EP32-n nem tudom betölteni az egraph.bas-okat.

*** Invalid EXOS function code.

 :?:

Mostanában txt-ben szoktam IS-BASIC kódokat csinálni. Win alatt Notepad-al könnyebb a kódot szerkeszteni és az EP32 be tudja olvasni.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Általános BASIC Kérdések
« Reply #99 on: 2008.December.01. 16:44:20 »
Az igen! :cool:
A lua 10 másodperc alatt kirajzolta.
Ebből a számolás kb. 1 másodperc, a többi a vonalak rajzolása. :)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Általános BASIC Kérdések
« Reply #100 on: 2008.December.01. 16:53:46 »
EP32-n nem tudom betölteni az egraph.bas-okat.
Próbáld ep128emu-val :)
Quote
Mostanában txt-ben szoktam IS-BASIC kódokat csinálni. Win alatt Notepad-al könnyebb a kódot szerkeszteni és az EP32 be tudja olvasni.
A Zozosoft által leírt módon listázott programok:
« Last Edit: 2008.December.01. 17:02:43 by IstvanV »

Offline vizor

  • EP fan
  • *
  • Posts: 238
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #101 on: 2008.December.01. 17:46:59 »
Bocsánatot kell kérnem !

Elírtam a filenevet, epgraph.bas helyett egraph.bas  :oops: Természetesen az EP32 is beolvassa a bas file-t.

Elfelejtettem, szólhattatok volna, hogy tape rendszerben az EXOS errorcode akár "bad command or filename"-t is jelenthet  :ds_icon_cheesygrin:

Amúgy 1 GHz-es Z80 sebességnél 5 perc alatt még nem alakult ki az ábra. Talán meg kellene néznem azt az új emut  :)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #102 on: 2008.December.01. 18:00:13 »
Elfelejtettem, szólhattatok volna, hogy tape rendszerben az EXOS errorcode akár "bad command or filename"-t is jelenthet  :ds_icon_cheesygrin:
Ez EP32 magnó emuláció bug.

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 #103 on: 2008.December.01. 18:29:03 »
Bár ez nem igazán tartozik ehhez a témához, de már van újabb ep128emu 2.0.6 beta verzió is (lásd itt). :)
Természetesen feltettem azóta. De ezzel sem csíkozódik. (Sose legyen nagyobb problémám. :D )
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Általános BASIC Kérdések
« Reply #104 on: 2008.December.01. 19:09:27 »
Amúgy 1 GHz-es Z80 sebességnél 5 perc alatt még nem alakult ki az ábra. Talán meg kellene néznem azt az új emut  :)
A sebesség azzal sem lesz feltétlenül jobb (viszont pontosabb és többet tud :)), de az EP32-ben sem lehet 200 MHz-nél nagyobb Z80 órajelet beállítani. Az ep128emu-ban a Z80 frekvenciát 200 MHz-re állítva, és a memória időzítés emulációját kikapcsolva nekem kb. 85% a sebesség, és így az epgraph2.bas futása több, mint 1 óra után még mindig nem fejeződött be, tehát igazi gépen ez 40-50 óránál is több lehet.