🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #309108

Re: wirtulny asembler + wirtulny komputer + sound

#309108
From: (fir)
Date: Tue, 14 Feb 2017 21:07
85 lines
6135 bytes
W dniu wtorek, 14 lutego 2017 17:19:33 UTC+1 użytkownik Luke napisał:
> > no mozesz powiedziec co tobie da maxymalny fun i wtedy
> > zobacze czy moj fun bylby dla mnie wiekszy ;-)
> > 
> 
> Nie ma odpowiedzi na to pytanie. Nigdy nie czułem potrzeby ani fun'u w
> pomyśle robienia własnej maszyny wirtualnej. Być może fun byłby wtedy,
> gdyby była emulatorem czegoś realnego, co jeszcze nie ma emulatora (jest
> jeszcze coś takiego dzisiaj?).
> 

to chyba nie do konca emulator bo na przyklad takie 8 bitowce czy 16 bitowce maja swoja fizyke (rezimy czasowe scisle okreslone przez fizyke) tutaj nie jestem pewien czy chcialbym emulowac ta cala fizyke z realnego swiata 
(bo wydaje mi sie to ew trudniejszym zadaniem) czy tylko okreslone stany pamieci i 'fizyke'
z grubsza
 
dlatego mowie o maszynie wirtualnej, choc tez nie wiem czy to poprawna nazwa, albo o wirtualnym komputerze


> Albo poszedłbym w opracowanie jakiegoś małego komputerka od zera.
> Bodajże widziałem gdzieś realizację komputera o możliwościach
> ośmiobitowców na mikrokontrolerze. No i pod to można np. pisać proste gry.
> 
> Oczywiście praktyczne zastosowanie tego nie ma sensu, komercyjność też
> żadna.
> 

zastosowanie edukacyjne jest naprawde potezne (a ze zastowanie edukacyjne jest praktyczne wiec jest to praktyczne zastosowanie - tyle ze w edukacji ;c )  - teraz np pisze kompilator A, bez maszyny wirtualnej na ktora moge to duzo napisac by mi sie tego nie chcialo bo
ogrom detali wspolczesnego peceta nieco przytlacza a na mala maszynke wirtualna - czysta przyjemnosc ;c Podobnie moze byc z innymi oldschoolowymi aspektami np z pisaniem
w samym asemblerze czy z pisaniem swojego malego osa czy wogole z projektowaniem jakichs
wirtualnych architektur (raj dla ludzi ktorzy lubia cos wymyslac) 







> > wlasnie na tym to polega ze mozna zakodowac kompletnie wszystko, dowolny proc dowolny asm +  niemal dowolny
> > 'hardware' (czy apis systemu) i to jest ciekawe
> 
> To jest ciekawe, ale jednocześnie nieciekawe przez to, że wszystko
> można. Sens pisania w assemblerze polegał na radzeniu sobie z
> ograniczeniami. A tutaj w pewnym momencie przestanie to nawet spełniać
> definicję assemblera, a stanie się "interpreterem cyferek", tzn.
> parserem pliku binarnego.

nie do konca rozumiem o czym mowa, co sie stanie tym interpretaterem cyferek/parserem
pliku binarnego? maszyna wirtualna czy assembler? akurat ja samej maszyny nie
planowalem zbytnio optymalizowac - swoja 
droga nie wiem ile by to dalo 


> Bo można to zaprojektować nie jak dla
> procesora, tylko jak dla znacznie bardziej inteligentnego interpretera.
> 

no mozna ale to odzielne zagadnienie - jesliby maszyna miala analizowac kod maszynowy zamiast go iteracyjnie wykonywac to chyba znaczny wzrost predkosci by byl tylko wtedy gdyby robila to nie jako interpreter asma  a jako 
kompiler asma - czyli defakto jakby optymizer
dla juz wygenerowanego kodu - to raczej calkiem odzielne zagadnienie


> > z dzwiekiem jest taki problem ze nie mam wiekszego pojecia jak takie hardware dziwkowe powinno wygladac 
> 
> Robiłbym coś na wzór komputerów ośmiobitowych. Ewentualnie emulację
> lepszego dźwięku podobną do Sound Blastera pod DOS (czyli DAC i FM
> obsługiwany portami albo przerwaniami).
> 
z kims tak ostatnio gadalem i ktos powiedzial ze taki dzwiek generowany bardzo masywnie bardzo w realtime (co kazda ramke wiele dzwiekow) moze sie jednak wiazac z opoznieniami - nie wiem na ile ten ktos jest 
jednak kompetentny a sam nie mam ostatnio ciagle czasu rzucac wszystko na pare dni czy wiecej i czytac i eksperymentowac ;C 

ktos tez pokazywal jakis kod w c jak sie robilo dzwiek pod dosem wygladalo to prosto ale sam nie mialem z tym doswiadczen, tak samo
z soundblasterem... wydaje mi sie ze kompletnie najprostsza wersja dzwieku to by bylo ustawic czestotliwosc w jednym rejestrze i amplitude dzwieku w drugim ale to bylby tak prosty piszczek ze nie wiem czy jakies realne sprzety mialy taki prosty dzwiek

wspolczesne api dzwiekowe nie wydaja sie 
z tego co sie zorientowalem wiele berdziej skomplikowane po prostu sie ustawia ofsset
w samplu i tyle 

c64 mial cos bardziej skomplikowanego niz 
jednotonowy brzeczek ale chyba nie az tak bardzo (szkoda ze nie pamietam), mial chyba 4 kanaly i mial jakies fazy (obwiednie dziweku 
narastanie podtrzymanie opadanie ale nie pamietam juz czy na jednym tonie czy to bylo cos bardziej skomplikowanego)

fajnie by bylo zaprojektowac sobie jakies wlasnie hardware do dzwieku 'syntetycznego'
ale cos bardziej skomplikowanego nic to co bylo na c64...

te wszystkie trackery na amige itd, wtedy tego nei ogarnialem ale wydawalo sie to fajne 
Technical Details
Message-ID: <8880dad6-cde9-4b16-ad82-d42a9a522935@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!e137no1251985itc.0!news-out.google.com!78ni3864itm.0!nntp.google.com!e137no1251976itc.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <20b055aa-ce5e-4acb-b6af-d0f10b85c63c@googlegroups.com> <58a06654$0$5152$65785112@news.neostrada.pl> <d7ff234c-d95d-4ba9-8d98-7f6c9c011171@googlegroups.com> <58a32e14$0$15200$65785112@news.neostrada.pl>

Show Full Headers
Complete Article Headers
X-Received: by 10.107.15.161 with SMTP id 33mr10671635iop.46.1487106421124;        Tue, 14 Feb 2017 13:07:01 -0800 (PST)
X-Received: by 10.157.39.202 with SMTP id c68mr2138435otb.8.1487106421052; Tue, 14 Feb 2017 13:07:01 -0800 (PST)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!e137no1251985itc.0!news-out.google.com!78ni3864itm.0!nntp.google.com!e137no1251976itc.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.lang.c
Date: Tue, 14 Feb 2017 13:07:00 -0800 (PST)
In-Reply-To: <58a32e14$0$15200$65785112@news.neostrada.pl>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=5.172.255.250; posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 5.172.255.250
References: <20b055aa-ce5e-4acb-b6af-d0f10b85c63c@googlegroups.com> <58a06654$0$5152$65785112@news.neostrada.pl> <d7ff234c-d95d-4ba9-8d98-7f6c9c011171@googlegroups.com> <58a32e14$0$15200$65785112@news.neostrada.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <8880dad6-cde9-4b16-ad82-d42a9a522935@googlegroups.com>
Subject: Re: wirtulny asembler + wirtulny komputer + sound
From: "(fir)" <profesor.fir@gmail.com>
Injection-Date: Tue, 14 Feb 2017 21:07:01 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit