-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.pi.v.chmurka.n
et!not-for-mail
From: q...@t...no1 (Queequeg)
Newsgroups: pl.misc.elektronika
Subject: Re: [Retro] Interfejs magnetofonu
Date: Wed, 18 Sep 2019 09:17:50 +0000 (UTC)
Organization: news.chmurka.net
Message-ID: <6...@t...no1>
References: <5d6f5baf$0$17350$65785112@news.neostrada.pl>
<qko93q$raj$1$cezar91@news.chmurka.net>
<5d6fe129$0$511$65785112@news.neostrada.pl> <qkp20r$sp$1@dont-email.me>
<5d702024$0$520$65785112@news.neostrada.pl>
<qkp83b$3urmi$1@portraits.wsisiz.edu.pl>
<5d767d01$0$535$65785112@news.neostrada.pl>
<5d76afd2$0$524$65785112@news.neostrada.pl>
<ql6hem$had$1$cezar91@news.chmurka.net>
<5d778159$0$17359$65785112@news.neostrada.pl>
<b...@t...no1>
<5d78d895$0$17345$65785112@news.neostrada.pl>
<e...@t...no1>
<5d7b524d$0$31099$65785112@news.neostrada.pl>
<a...@t...no1>
<5d7f2178$0$505$65785112@news.neostrada.pl>
<5...@t...no1>
<5d8083d4$0$17350$65785112@news.neostrada.pl>
<2...@t...no1>
<5d80e1a6$0$15495$426a74cc@news.free.fr>
<a...@t...no1>
<5d8141c1$0$6481$426a34cc@news.free.fr>
NNTP-Posting-Host: pi.v.chmurka.net
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 18 Sep 2019 09:17:50 +0000 (UTC)
Injection-Info: vps.chmurka.net; posting-account="queequeg";
posting-host="pi.v.chmurka.net:172.24.44.20"; logging-data="19645";
mail-complaints-to="abuse-news.(at).chmurka.net"
User-Agent: tin/2.4.3-20181224 ("Glen Mhor") (UNIX) (Linux/4.19.57-v7+ (armv7l))
Cancel-Lock: sha1:oZ+MqwjTNuczhH8lT2+6aTbMweM=
Xref: news-archive.icm.edu.pl pl.misc.elektronika:746125
[ ukryj nagłówki ]Mateusz Viste <m...@n...pamietam> wrote:
> Wydajność to jeden z powodów. Subsystem FILE różnie jest implementowany w
> różnych kompilatorach, i odczyty nie zawsze są buforowane, a DOSMid czyta
> dużo rzeczy bajt po bajcie. Bez read-ahead takie czytanie z dyskietki
> może trwać wieczność.
No tak, widzę że masz cache. Tylko 32 bajty, ale pewnie starcza.
Btw, w wielu miejscach widzę tuż przed końcem funkcji komentarz:
/* */
W zbyt wielu, żeby to był przypadek :) Czemu tak?
Przeglądam dalej. Dorzuć break w fio_seek w case FIO_SEEK_END (linia 57).
Widzę też nadmiarowy break (bo po return) w MUS.C w linii 162 :)
> Drugi powód to rozmiar kodu. Mój fio.o jest mniejszy od tego co zaciąga
> np. OpenWatcom przy użyciu FILE. Oczywiście wcale nie dlatego, że mój kod
> jakoś lepszy - tylko robi po prostu tylko to, czego potrzebuje DOSMid i
> nic poza tym.
Jasne, to wiadomo.
> Faktycznie - masz dobre oko. W sumie te wszystkie include guardy w tym
> projekcie to trochę sztuka dla sztuki.
Tak... jeśli include'y się nie dublują, to tak. Zresztą gdyby, to by od
razu wyszło przy kompilacji.
Chyba, że chciałbyś kiedyś zrobić unity build :) Sam nie jestem jego
fanem, ale kiedyś zrobiłem kilka testów i kod na AVR po zrobieniu unity
wychodził odrobinę mniejszy (kwestia pojedynczych bajtów).
>> Rzucił mi się jeszcze w oczy brak nawiasów w MPU_DATA i MPU_STAT w
>> mpu.c ale widzę, jak są używane, więc można się kłócić :)
>
> Ano, kłócić można się zawsze, o wszystko. Niewątpliwie wszystkie twoje
> uwagi są słuszne w jakimkolwiek kilku-osobowym projekcie. DOSMid
> natomiast to jedno-osobowa zabawka - no i autor wie co robi. :)
Wiem, dlatego mówię, że to na siłę ;)
> W międzyczasie zawsze możesz potestować na DOSBoxie - ma on bardzo udane
> wsparcie dla GUSa, odgrywanie MIDI brzmi zaskakująco dobrze.
Zerknę :)
A nie wiesz może, jak to wygląda w drugą stronę? Zastanawiam się, na ile
łatwo da się przesłać do DOSBoxa zdarzenia midi z zewnętrznego kontrolera
i użyć DOS-owego sequencera.
> Domniemywam, że za dnia robisz (lub sprawdzasz) kod w jakimś korpo, i
> stąd pewnie lekkie zboczenie :)
Za dnia tak, ale to nie wygląda tak kolorowo. Kod, z którym teraz przyszło
mi pracować, jest pisany przez bardzo tanich Hindusów i ma jakość
adekwatną do ceny. Tam już się nawet niczego nie czepiam, bo po pierwsze
byłoby tego za dużo, a po drugie wszyscy i tak jakość mają bardzo głęboko.
Ma jakoś działać i tyle.
Pracuje ze mną jeszcze jedna osoba z grupy (nie wiem, czy chce się
ujawnić), ale ma już dosyć i się zwalnia -- i patrząc na to wszystko
nie dziwię się. Ja się chyba za bardzo zasiedziałem. Albo cały czas
mam nadzieję, że to wszystko jest tylko tymczasowe.
Mam kilka swoich projektów w pracy, ale one są już zrobione, gotowe,
przetestowane, działają, niewiele jest już tam do roboty. No i one były
w większości pisane jednoosobowo. Dlatego rzucili nas do sprzątania tego
hinduskiego syfu.
Hobbystycznie też piszę, ale od dawna nie publikuję. Na chmurce są jakieś
(bardzo) stare rzeczy, którymi niekoniecznie chciałbym się chwalić ;)
Przyjdzie moment, gdy założę kanał na yt z różnymi moimi DIY-rzeczami, bo
trochę się tego nagromadziło, i wtedy poudostępniam kody, schematy itd.
> - kod hobbystyczny często odbiega od "standardów" korpo.
W moim korpo odbiega, ale bardzo na plus.
> Swoją drogą, jeśli naprawdę chcesz się przerazić, to
> zajrzyj tutaj (byle nie za długo, bo to wielce niezdrowe):
> https://sourceforge.net/p/etherdfs/code/HEAD/tree/et
herdfs/trunk/
> etherdfs.c
Nie jest źle. Kod jest okomentowany, można się w nim odnaleźć. A że więcej
assemblera niż C... może użycie C jako zestawu makr dla assemblera to w
niektórych zastosowaniach nie taki zły pomysł :)
To, co mnie przeraża, to np.:
https://github.com/Distrotech/procmail/blob/master/s
rc/goodies.c
https://www.compression.ru/ds/ppmdj1.rar (w sumie wszystkie pliki)
Czyli kod, w którym bardzo trudno jest się odnaleźć i zrozumieć jego
działanie.
Trzy firmy temu (MkS / ArcaBit) mieliśmy też emulator x86 z mks_vira,
napisany najpierw w assemblerze, a później przepisany do C++, ale w
assemblerowym stylu (np. cztery zmienne globalne: ax, bx, cx, dx).
Kod miał ok. 600 kB. Odnalezienie się w nim graniczyło z cudem.
--
https://www.youtube.com/watch?v=9lSzL1DqQn0
Następne wpisy z tego wątku
- 18.09.19 11:48 Queequeg
- 18.09.19 12:08 Mateusz Viste
- 18.09.19 13:04 Atlantis
- 18.09.19 15:03 Queequeg
- 18.09.19 15:09 Queequeg
- 18.09.19 18:51 Michal
- 18.09.19 22:21 Mateusz Viste
- 19.09.19 02:02 Marcin Debowski
- 19.09.19 08:40 Atlantis
- 19.09.19 09:24 Queequeg
- 19.09.19 19:21 Grzegorz Tomczyk
- 20.09.19 10:36 Queequeg
- 20.09.19 12:42 J.F.
- 20.09.19 22:33 yorgus
- 21.09.19 10:05 heby
Najnowsze wątki z tej grupy
- Zbieranie danych przez www
- reverse engineering i dodawanie elementów do istniejących zamkniętych produktów- legalne?
- Problem z odczytem karty CF
- 74F vs 74HCT
- Newag ciąg dalszy
- Digikey, SN74CBT3253CD, FST3253, ktoś ma?
- Szukam: czujnik ruchu z możliwością zaączenia na stałe
- kabelek - kynar ?
- Podnieść masę o 0.6V
- Moduł BT BLE 5.0
- Pomiar amplitudy w zegarku mechanicznym
- ale zawziętość i cierpliwość
- Chiński elektrolizer tester wody
- Dzisiaj Bentlejem czyli przybieżeli sześciu Króli do Rysia na kasie
- ciekawy układ magnetofonu
Najnowsze wątki
- 2025-01-04 Zbieranie danych przez www
- 2025-01-04 reverse engineering i dodawanie elementów do istniejących zamkniętych produktów- legalne?
- 2025-01-04 w Nowym Roku 2025r
- 2025-01-04 Warszawa => Specjalista ds. IT - II Linia Wsparcia <=
- 2025-01-04 Warszawa => Java Developer <=
- 2025-01-04 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-04 Warszawa => System Architect (Java background) <=
- 2025-01-04 Wrocław => Application Security Engineer <=
- 2025-01-04 Chrzanów => Specjalista ds. public relations <=
- 2025-01-04 Katowice => Key Account Manager (ERP) <=
- 2025-01-03 Problem z odczytem karty CF
- 2025-01-03 Jazda z Warszawy do Krakowa teslą
- 2025-01-03 Wrocław => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-03 Warszawa => International Freight Forwarder <=
- 2025-01-03 Mińsk Mazowiecki => Area Sales Manager OZE <=