CoolBasic V3: Esittely

CoolBasiciin yleisesti liittyvä keskustelu.
tuhoojabotti
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 3:53 pm
Location: Suomi, Finland
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by tuhoojabotti »

noh, en kyllä puhunut kielien risteytyksestä... mutta ihan sama :D
Imagedev.tuhoojabotti.com — “Programmer (noun): An organism that turns caffeine into code.”
User avatar
Jare
Devoted Member
Posts: 877
Joined: Mon Aug 27, 2007 10:18 pm
Location: Pori
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by Jare »

Zero wrote: CoolBasic on nyt (kun kokemusta on kertynyt) sisäisesti aika sekaisin. En mielellään tekisi sinne hirveästi muutoksia. Se on tämä wtf-ilmiö, kun katsoo pitkän ajan kuluttua omaa koodiaan, niin tulee ajateltua että "Mitähän minä olen tuossakin ajatellut".
Tiedän tunteen.

Mutta nykyisen CB:n suurin rajoitus on mielestäni tällä hetkellä funktioraja (oliko se 128 funktiota?), jonka ylittyessä kääntäjä heittää Fatal Erroria. Jos tämä korjattaisiin, pystyisi CB:llä tekemään suuria projekteja jo varsin hyvin ja helpommin kuin nykyään. En toki osaa sanoa, miten paljon työtä olisi tuon rajan kasvattamisessa tai poistamisessa, mutta voihan olla, että kyseessä on vain pieni virhe kääntäjässä.

Joka tapauksessa kiitos sinulle tästä mainiosta kielestä! Tämä on helppo kieli ja tällä pystyy tekemään suuriakin projekteja - tulkin hitaus tarjoaa vain pientä haastetta koodin optimointiin. 8-)
User avatar
Dibalo
Advanced Member
Posts: 298
Joined: Mon Aug 27, 2007 8:12 pm
Location: Espoo, Finland
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by Dibalo »

Zero wrote:Syy PureBasicin valintaan on yksinkertainen: voin ujuttaa käsin optimoitua assembleriä ohjelman sekaan. Lisäksi tällaista koodia ei CoolBasicissa olisi ollenkaan:

Code: Select all

If FunctionID = 1 Then
    ' Tähän vaikkapa LoadObjectin toteutus
ElseIf FunctionID = 2 Then
    ' Tähän vaikkapa DrawImagen toteutus
ElseIf ...
...
EndIf
... vaan saan tehtyä suoraan esim. näin:

Code: Select all

a = PeekL(*ProgramPointerPar)
!JMP [v_a]
Kyllä, seuraava CoolBasic tulee murskaamaan bittejä paljon nykyistä nopeammin :)
Tulet käyttämään näköjään hyvin samaa tapaa kuin minä.. ;)
Tässäpä hieman otteita Kaaoksesta:

Code: Select all

// funktioiden listaus
...
mBuiltInFunctions[28] = (BuiltInCall)(bind::glb_acos);
mBuiltInFunctions[29] = (BuiltInCall)(bind::glb_loadDll);
mBuiltInFunctions[30] = (BuiltInCall)(bind::glb_freeDll);
mBuiltInFunctions[31] = (BuiltInCall)(bind::glb_timer);
mBuiltInFunctions[32] = (BuiltInCall)(bind::glb_sqrt);
...

Code: Select all

// funktiokutsut
...
			int functionIndex = readInt();
			BuiltInCall proc = mBuiltInFunctions[functionIndex];
			assert( proc );

			__asm
			{
				// cdecl
				mov   ecx, bufferSize		// bufferin (parametrinlistan) koko tavuina
				mov   esi, pBuffer			// itse bufferi
				sub   esp, ecx				// varataan tilaa
				mov   edi, esp
				shr   ecx, 2
				rep   movsd					// kopioi parametrit pinoon
				call  [proc]				// kutsutaan funktiota
				mov   rc,  eax				// tallennetaan paluuarvo
				add   esp, bufferSize		// palautetaan pinon osoitin
			}
...

Ja vielä "lisäherkkuna" nykyisten operaattorien toteutus:

Code: Select all

inline void RuntimeManager::controlOperator(int &flags)
{
	int off_left = readInt();
	int off_right = readInt();
	int off_ret = readInt();
	(*(mOperators[ flags & 0xffffff ]))(off_ret, off_left, off_right);
}
Zero wrote:Maltan tuskin odottaa, että pääsen kokeilemaan kuinka Dibalo on saanut luokat toteutettua. Sitten päästäänkin leikkimään periytyvyydellä.
You will see... 8-)
The darkest spells can be found from
http://tunkkaus.blogspot.fi
Olwi
Devoted Member
Posts: 557
Joined: Sun Dec 30, 2007 4:15 pm
Location: Muhos

Re: CoolBasic? kuollut? eheei ole...

Post by Olwi »

Löysin hirveän virheen manuaalista!
Korjataanhan tämä varmasti seuraavaan versioon????
Esim. KeyHit(cbKeyA) tarkastaa, painetaanko J-näppäintä. Listan näppäinvakioista näet SCAN-taulukosta (linkki yllä).
:mrgreen: :mrgreen: :mrgreen:
Huuda mun ip:tä!
Risord_

Re: CoolBasic? kuollut? eheei ole...

Post by Risord_ »

Legendaarinen Zero on siis palannut :D Ihan eka pitää kiittää että ilman sinua en olisi koskaan koodaamista aloittanutkaan. Ennennäkemättömän hyvä ja ennen kaikkea suomenkielinen helpperi. Itse mitä olen jäänyt kaipaamaan on nopeampi yksittäisen pikselin piirrto kuin putpixel(2).
User avatar
Sami The Great
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 4:15 pm
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by Sami The Great »

Kiva kuulla, että uusi CoolBasic sittenkin on tulossa. Vaikka et vanhaa enää kehitäkkään niin voisitko sentään poistaa funktio rajan, jos siinä ei ole kovin kova homma? On todella ikävää kun funktioita voi tehdä vain, oliko se nyt 126 kpl.
http://www.rockodilegames.com
CoolBasickin käyttäjä vuodesta 2004.
User avatar
Zero
Lead Developer
Lead Developer
Posts: 727
Joined: Sun Aug 26, 2007 2:30 pm
Location: Helsinki, Finland
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by Zero »

Minulla ei ensinäkään ole hajuakaan miksi ihmeessä CoolBasicissa on sellainen kummajainen kuin "funktioraja" :lol:
Kaikki tämäntapaiset rajoitukset tietenkin poistuvat seuraavan sukupolven myötä.

Olen tässä hiljalleen koodaillut Runtimen perustoimintoja: kaikki operaattorit lukuun ottamatta sijoitusoperaattoreita (tulossa uutena) on jo kirjoitettu. ne toimivat jo kokonais- ja liukuluvuilla, toivottavasti pian myös merkkijonoilla.

Uudessa Runtimessa on tällä hetkellä noin 1300 riviä koodia, joista yli 80% on kirjoitettu puhtaalla assemblyllä (voi pojat tähän on hajoiltu useamman päivän ajan). Kun saan muuttujat, ehdot, merkkijonot ja taulukot toimimaan, pääsen luultavasti kääntäjän kimppuun.
CoolBasic henkilökuntaa
Johtava Suunnittelija
CoolBasic V3, CoolBasic Classic

http://www.coolbasic.com/blog
iTKEVAnAKKI
Advanced Member
Posts: 335
Joined: Tue Aug 28, 2007 3:55 pm
Location: Siellä jossain

Re: CoolBasic? kuollut? eheei ole...

Post by iTKEVAnAKKI »

Onko koodaaminen edenny odotettua nopeemmin? Ja olisko mitenkään mahdollista saada jotain näytettävää tämän vuoden puolella?

Ja mukavaa että tulit taas käymään! : )
Projektit:
Joku projekti meneillään... Mitähän siitäkin tulee ;)
SPuntte
Tech Developer
Tech Developer
Posts: 650
Joined: Mon Aug 27, 2007 9:51 pm
Location: Helsinki, Finland
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by SPuntte »

Zero wrote:Uudessa Runtimessa on tällä hetkellä noin 1300 riviä koodia, joista yli 80% on kirjoitettu puhtaalla assemblyllä (voi pojat tähän on hajoiltu useamman päivän ajan). Kun saan muuttujat, ehdot, merkkijonot ja taulukot toimimaan, pääsen luultavasti kääntäjän kimppuun.
Håhå, Zerppa on palannut, ja triplasti HC'npana, koodaa nykyään 80-prosenttisella asmilla :mrgreen:

Noei, ihan oikeasti hienoa, että pistäydyt täälläkin välillä. Ja kuten itsekin totesit, tämä nettiyhteisö on kyllä hienoin juttu, mitä CB:llä olet saanut aikaan. Ja oletkos sellasta ajatellu, että CB on muuten ihan kauhea? Se on liian helppo. Tämä tekee puolet (ja usein ylikin) itsestään valmiiksi. Ei jaksa opetella mitään muuta, kun ei ole turhaa aikaakaan siihen käytettävänä, niin tekee sitten vaan tällä kaikkea..

En mikään assembly-ex-Pertti ole, niin kysynkin, että vaikuttaako järjestelmäarkkitehtuuri siihen miten optimaalista tulevaa CB:tä on pyörittää? Ja tuleeko jotain säikeistyksiä, moniydintukia yms. ketkuja juttuja?

Ja jos vielä jaksat, kerropa ihan mielenkiinnosta, tosin offtopicina, mistä tietojärjestelmäarkkitehti saa liksansa? Siis mitä työnkuvaasi kuuluu?
CoolBasic henkilökuntaa
Tech-kehittäjä
CoolBasic Classic, Cool VES

CoolPhysicsEngine | MissileSystem | Jana-ympyrä -törmäys | cbSimpleTexture | CoolCPLX
User avatar
Dibalo
Advanced Member
Posts: 298
Joined: Mon Aug 27, 2007 8:12 pm
Location: Espoo, Finland
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by Dibalo »

Kilpailua kilpailua! :D
Taidankin heti alkuunsa lisätä kääntäjään natiivin tuen assembly-koodin tekoon (jotta saadaan buustattua Kaaos CB:n ohi...) :lol:
The darkest spells can be found from
http://tunkkaus.blogspot.fi
User avatar
Zero
Lead Developer
Lead Developer
Posts: 727
Joined: Sun Aug 26, 2007 2:30 pm
Location: Helsinki, Finland
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by Zero »

Noei, ihan oikeasti hienoa, että pistäydyt täälläkin välillä. Ja kuten itsekin totesit, tämä nettiyhteisö on kyllä hienoin juttu, mitä CB:llä olet saanut aikaan. Ja oletkos sellasta ajatellu, että CB on muuten ihan kauhea? Se on liian helppo. Tämä tekee puolet (ja usein ylikin) itsestään valmiiksi. Ei jaksa opetella mitään muuta, kun ei ole turhaa aikaakaan siihen käytettävänä, niin tekee sitten vaan tällä kaikkea..

En mikään assembly-ex-Pertti ole, niin kysynkin, että vaikuttaako järjestelmäarkkitehtuuri siihen miten optimaalista tulevaa CB:tä on pyörittää? Ja tuleeko jotain säikeistyksiä, moniydintukia yms. ketkuja juttuja?

Ja jos vielä jaksat, kerropa ihan mielenkiinnosta, tosin offtopicina, mistä tietojärjestelmäarkkitehti saa liksansa? Siis mitä työnkuvaasi kuuluu?
CoolBasichan suunniteltiin juuri siihen, että se on todella helppo :)

Tässä vaiheessa en paljasta ihan kaikkea mitä olen ajatellut uuteen CoolBasiciin, mutta tämä V3 olisi tarkoitus suunnitella nyt mahdollisimman joustavaksi ja siten laajennettavaksi.

Meikäläisen työnkuvaan kuuluu tällä hetkellä mm. Osuuspankin verkkopalveluiden ylläpitoa ja huoltoa ;)
CoolBasic henkilökuntaa
Johtava Suunnittelija
CoolBasic V3, CoolBasic Classic

http://www.coolbasic.com/blog
User avatar
KillBurn
Advanced Member
Posts: 339
Joined: Wed Aug 29, 2007 5:02 pm

Re: CoolBasic? kuollut? eheei ole...

Post by KillBurn »

Tosi hienoa jos CoolBasicikin kehityksessä on pitkästäaikaa tapahtunut jotain.

Ainakin bookmarkit olisi hyvä lisä,esim 1 painikkeella pääsisi haluamaansa kohtaan koodissa.(ChaosBasiciin tämä olisi myös hyvä lisäys :D )
Nykyisessä editorissa on bugi:Jos autosave on each run on kytketty pois ja sammutat CBn tallentamatta,
niin se ei huomauta että yrität sammuttaa talentamatta. :cry:
Sumu Games: Sam, Ur eye!
Koodiapina
Forum Veteran
Posts: 2396
Joined: Tue Aug 28, 2007 4:20 pm

Re: CoolBasic? kuollut? eheei ole...

Post by Koodiapina »

Mäkin oon löytänyt CB:stä bugin, Executable errorin. Tässä yhdenrivin esimerkkikoodi, toimii sellaisenaan:

Code: Select all

ihan_mikä_vaan = ihan_mikä_vaan + 1
Tuo esiintyy joskus kun ohjelman ensimmäisellä rivillä nostetaan muuttujan arvoa, tai jos se on ohjelman ainoana suoritettavana rivinä, kuten tuossa.

EDIT: Paitsi eihän sillä mitään väliä ole, jos kerran teet jo uutta kääntäjää :D
temu92
Web Developer
Web Developer
Posts: 1226
Joined: Mon Aug 27, 2007 9:56 pm
Location: Gamindustri
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by temu92 »

Zero wrote:Olen tässä hiljalleen koodaillut Runtimen perustoimintoja: kaikki operaattorit lukuun ottamatta sijoitusoperaattoreita (tulossa uutena) on jo kirjoitettu. ne toimivat jo kokonais- ja liukuluvuilla, toivottavasti pian myös merkkijonoilla.

Uudessa Runtimessa on tällä hetkellä noin 1300 riviä koodia, joista yli 80% on kirjoitettu puhtaalla assemblyllä (voi pojat tähän on hajoiltu useamman päivän ajan). Kun saan muuttujat, ehdot, merkkijonot ja taulukot toimimaan, pääsen luultavasti kääntäjän kimppuun.
Kuullostaa hyvältä vaikkakin silti tuskin voidaan ihan parinkuukauden sisään odottaa ekaa alphaakaan :D ja 80% asm, aika rankka ;)
Wolfman
Newcomer
Posts: 37
Joined: Sat Apr 12, 2008 9:43 pm

Re: CoolBasic? kuollut? eheei ole...

Post by Wolfman »

Loistavaa, varsin loistavaa kuulla että tulossa on lisää.
Kuulostaa hienolta kaikki.
Ps. Kai tulevat versiot tukevat alpha-kanavia?
Image
User avatar
Zero
Lead Developer
Lead Developer
Posts: 727
Joined: Sun Aug 26, 2007 2:30 pm
Location: Helsinki, Finland
Contact:

Re: CoolBasic? kuollut? eheei ole...

Post by Zero »

Kai tulevat versiot tukevat alpha-kanavia?
Voi kuule ;)
CoolBasic henkilökuntaa
Johtava Suunnittelija
CoolBasic V3, CoolBasic Classic

http://www.coolbasic.com/blog
Olwi
Devoted Member
Posts: 557
Joined: Sun Dec 30, 2007 4:15 pm
Location: Muhos

Re: CoolBasic? kuollut? eheei ole...

Post by Olwi »

Mites sen 3D:n kanssa?
Muistelen että joskus kuulin että 3D-versio tulis maksamaan sen parikymppiä.
Tuleeko 3D-versiota,ja tuleeko siitä maksullinen(ei se maksullisuus ainakaan mua haittaisi)
Huuda mun ip:tä!
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: CoolBasic? kuollut? eheei ole...

Post by koodaaja »

No ainakin vaikuttaa siltä, että noilla tehoilla saa väännettyä 3D-funkkarit itsekin. Joskin Zero kun tekee kaikesta helppoa, niin kai nämä kolmiulotteiset asiat sisäänrakennettunakin tulevat joskus. Vai?
Khamûl
Member
Posts: 73
Joined: Sat Sep 22, 2007 8:46 pm

Re: CoolBasic? kuollut? eheei ole...

Post by Khamûl »

voi pojat, kannatti käännähtää vähän täälläkin päin ^^

KIITOKSIA PALJON ZEROLLE!!
ilman sinun kieltäsi en olisi ikinä aloittanut ohjelmointia, kuun oon niin äkkiä kyllästyvä,
opettelun aloittaminen on paljon myöhemmin tapahtunut kun useimmilla muilla dataajilla,
mutta nyt oon jo kerenny vaihtaa javaan ja oon opettelussa pitkällä, eka peli alkaa hahmottua!
mut jos coolbasic on taas kunnolla elossa nii taidan alkaa taas terästää taitoja, jos vaikka sais jonkun projektin ulos ^^
odotan innolla 3d aikaa, ja oliot coolbasicissä kuulostaa jännältä....
:D

pitipä päästää ulos kun ei oo zero ollu ikinä paikalla kun oon tääl heilunu ;)
btw voin tehä sitte jotain 3d malleja ohjelmalle itellensä kun saat sen ulos, täytyy kai niitäkin olla valmiina ;)
Will the highways on the Internet become more few? --G.W.Bush
Olwi
Devoted Member
Posts: 557
Joined: Sun Dec 30, 2007 4:15 pm
Location: Muhos

Re: CoolBasic? kuollut? eheei ole...

Post by Olwi »

Kannattais muuten ilmottaa Zeron paluusta tuolla CB:n sivustoillakin,joku joka etsii uutta kieltä saattaa ohittaa CB:n sen takia että edellinen päivitys on vuodelta -05
Huuda mun ip:tä!
Locked