Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #32478
| Newsgroups | pl.comp.programming |
|---|---|
| Date | 2019-03-26 04:08 -0700 |
| References | <72227e68-b3c3-4b05-ac8a-aa741d510212@googlegroups.com> |
| Message-ID | <143d8bb8-0807-44bf-8847-6a4a666d98e8@googlegroups.com> (permalink) |
| Subject | Re: elementy furii |
| From | fir <profesor.fir@gmail.com> |
W dniu wtorek, 26 marca 2019 11:30:01 UTC+1 użytkownik fir napisał:
> w zeszly roku w kilka dni napisalem pewne elementy kompilatora takiego jakby "pre c"
> (jezyka ktory w zamysle raczej jest wstepem
> do C/C2/hipermodularnego c bo prawie nic tam nie dziala, no ale mowie pisalem to z piec dni
>
> tak czy owak da sie skompilowac cos w rodzaju helloworda na windows 32 (wywoluje moja wlasna dllke by ladniej wygladalo niz zwyczjanie na konsoli)
>
> http://minddetonator.htw.pl/furia3.zip
>
> screenshot w outputu
>
> http://minddetonator.htw.pl/furia3.png
>
> bylo to o tyle mozliwe ze z rok wczesniej (w 2017? niezbyt pamietam te daty bo ostatnio sie zaczalem mega lenic) nap[isalem asembler (organic asm)... ...ten asm nie ma tez wklepanych wielu mnemonikow, bo mi sie nie chcialo, nie ma tez chyab wszystkich trybow adresowan, dlatego rozbudowayanie tego kompilatora wymaga grzebania i w jednym i drugim i przez to jest lekko ciezkie (nie az tak co prawda ale chyba faktycznie przyznam ze pisanie kompilatora i asma na x86/win32
> jest projektem nieco trudniejszej klasy niz
> pisanie bardziej typowych apek.. nie jest 'zbyt' trudne ale poprostu trzebbyc involved (troche bardziej niz zwykle) i to troche meczy, nie zawsze mi sie chce
>
> z drugiej strony fajnie miec swoj kompilatorek..zastanawiam sie kiedy sie w sobie zewre by napisac troche wiecej featurez :/
och god, ladnie napisalem posta i przypadkowe nacisniecie dwu klawiszow naraz spowodowalo ze nizknal w ulamek sekundy
kod jaki to kompiluje jest taki
int becground_color: 0
int RunFramePointer: 0
void RunFrame()
becground_color = becground_color + 65536
becground_color = becground_color + 512
becground_color = becground_color + 3
cdecl green_fire SprintCB(-1, becground_color)
cdecl green_fire ClearFrameData(becground_color);
cdecl green_fire SprintXY(10, 10)
cdecl green_fire sprint(" Helllo World from Furia \x00");
return
void main()
asm mov eax RunFrame
asm mov (RunFramePointer) eax
cdecl green_fire RegisterRunFrame( RunFramePointer );
cdecl green_fire SetSleepValue(30)
cdecl green_fire SetupWindow2(" furia pre c compiler \x00", 4, 5, 567, 443 );
return
troche slabo to przypomina c ale pisalem by jak nalatwiej mis ie to pisalo a nie by od razu przypominalo c
chyba 3 rzeczy powinienem poprawic na poczatek,
1) moj asm nie wspiera o ile pamietam wywolywanie funkcji z calbackami dlatego mam tutaj stub w asmie
asm mov eax RunFrame
asm mov (RunFramePointer) eax
cdecl green_fire RegisterRunFrame( RunFramePointer );
zamiast
cdecl green_fire RegisterRunFrame( RunFrame );
a to daltego ze asm wspiera
push (RunFramePointer)
call green_fire.RegisterRunFrame
pop eax
ale nie
push (RunFrame)
call green_fire.RegisterRunFrame
pop eax
w pierwszej wersji etykiete jest z sekcji .data a w drugiej to label z codu
ale to chyab mozna poprawic (jakbym sie troche skupil)
2)
int becground_color: 0
int RunFramePointer: 0
powinienem przerobic na zwykle
int becground_color = 0
int RunFramePointer = 0
nie wiem czemu tak nawet napisalem chyab chialem odrozniac deklaracje-inicjalizacje od przypisan ale skoro int jest z lewej to wiadomo ze to deklaracja
3) te wszystkie
cdecl green_fire SprintXY(10, 10)
wygladaja glupio jesli tego jest za duzo
wiec chyab trzeba zbudowac zbiorcza tablice importow cos w stylu
import cdecl "green_fire" SprintXY SprintCB sprint RegisterRunFrame SetSleepValue SetupWindow2
co jest swoja draga mniej logiczne ale pozniej kody nizej wygladaja bardziej c-owo
ostatnio czuje sie jak na mega kacu 9zdrowie ciagle fatalne, dusi mnie w plucahc niesamowicie), ale jakbym sie zebral to to mnie teraz czeka
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar
elementy furii fir <profesor.fir@gmail.com> - 2019-03-26 03:29 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-26 04:08 -0700
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-26 12:14 +0000
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-26 05:37 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-26 05:50 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-26 07:57 -0700
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-26 15:01 +0000
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-26 13:28 -0700
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-26 21:00 +0000
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-26 12:12 +0000
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-26 05:31 -0700
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-26 14:46 +0000
Re: elementy furii Emru <emruemru1@gmail.com> - 2019-03-26 21:18 +0000
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-26 21:47 +0000
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-27 08:59 -0700
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-28 07:21 +0000
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-28 00:55 -0700
Re: elementy furii godek.maciek@gmail.com - 2019-03-28 01:19 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-28 06:08 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-28 09:22 -0700
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-28 19:44 +0000
Re: elementy furii queequeg@trust.no1 (Queequeg) - 2019-03-28 19:41 +0000
Re: elementy furii godek.maciek@gmail.com - 2019-03-28 14:49 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-28 15:59 -0700
Re: elementy furii Roman Tyczka <noemail@because.no> - 2019-03-29 08:20 +0100
Re: elementy furii godek.maciek@gmail.com - 2019-03-29 01:17 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-29 02:04 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-29 02:06 -0700
Re: elementy furii Roman Tyczka <noemail@because.no> - 2019-03-29 13:41 +0100
Re: elementy furii godek.maciek@gmail.com - 2019-03-29 14:23 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-29 16:07 -0700
Re: elementy furii fir <profesor.fir@gmail.com> - 2019-03-30 06:28 -0700
csiph-web