-
Data: 2019-09-18 12:08:15
Temat: Re: [Retro] Interfejs magnetofonu
Od: Mateusz Viste <m...@n...pamietam> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Wed, 18 Sep 2019 09:17:50 +0000, Queequeg wrote:
> No tak, widzę że masz cache. Tylko 32 bajty, ale pewnie starcza.
Też się zdziwiłem, że starcza. Robiłem wówczas testy z różnymi
rozmiarami, i wyszło mi że 32 bajty daje 95%+ możliwego przyspieszenia,
przynajmniej na moim domowym 8088. Dalsze zwiększanie cache dawało już
tylko jakieś śmieszne ułamki szybkości, jeśli w ogóle. A pamięci mało,
trzeba oszczędzać.
> Btw, w wielu miejscach widzę tuż przed końcem funkcji komentarz:
>
> /* */
>
> W zbyt wielu, żeby to był przypadek :) Czemu tak?
Tu akurat nie ma niczego racjonalnego, raczej problem natury
psychiatrycznej. Bywają dni, że nie toleruję pustych linii wewnątrz
funkcji. Jeśli jakąś popełnię, chodzi za mną i mnie nęka. Ale skleić kodu
też nie chcę, bo pustka oddziela jakąś logikę która nie powinna się
dotykać (z powodów religijnych). Aby pogodzić wszystkie strony zastępuję
w takich sytuacjach pusty wiersz zwrotką /* */. I wtedy dopiero możemy
działać dalej.
> Przeglądam dalej. Dorzuć break w fio_seek w case FIO_SEEK_END (linia
> 57).
W żadnym wypadku, ma być jak jest! Kolega zdaje się cierpieć na podobną
dolegliwość którą jest dotknięty gcc - wymaga w takich sytuacjach
jakiegoś dziwnego /* FALLTHRU */ :-)
> Widzę też nadmiarowy break (bo po return) w MUS.C w linii 162 :)
Ano, clang też na mnie o to składa skargi. Break jest nadmiarowy, to
fakt, ale jednak musi być. Inaczej wieczorem zasnąć nie mogę, bo w głowie
kołacze mi odgrażający się chochlik: "oj bratku, kiedyś usuniesz return,
o break zapomnisz, i będzie bieda!". Traktuję ten break niejako w
kategorii stylistycznego elementu. Tak jak np. nawiasy przy return (też
nadmiarowe). Wszyscy mamy swoje upośledzenia.
> 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.
Nigdy nie kombinowałem w tym kierunku, bo muzyk ze mnie żaden (umiem
kilka nut "wlazł kotek..." or "hej sokoły" na dziecięcych cymbałkach i na
tym mój talent się kończy). Wygląda jednak na to, że DOSBox tego nie robi
- ale po sieci krążą patche które ponoć to umożliwiają... Musiałbyś
pokombinować z DOSBox-X:
https://github.com/joncampbell123/dosbox-x/issues/75
6
Swoją drogą, prościej i przyjemniej byłoby po prostu złożyć sobie
normalny (tj. sprzętowy) komputer do tego.
> 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.
Brzmi niezwykle zachęcająco. :)
>> 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ł :)
Assembler to jedno, ale w tego typu rzeczach to jednak normalność.
Chodziło mi o takie rzeczy jak kompilacja stringów do kodu maszynowego,
patchowanie własnego kodu wykonywalnego w run-time, ręczna zabawa z
rejestrami SS i DS, itp... W zasadzie wszystkie te cudeńka, które
opisałem tutaj:
https://sourceforge.net/p/etherdfs/code/HEAD/tree/et
herdfs/trunk/
memnotes.txt
Sam nie chciałbym kiedykolwiek otrzymać takiego kodu w spadku po kimś. :)
> 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.
No tak, ale to już całkiem inny poziom udręki. Tego typu kod zdarza mi
się widywać u młodej generacji (kiedyś sądziłem, że to "millenialsi", ale
niedawno dowiedziałem się że to nie oni są millenialsami, tylko ja!)
Lenistwo, brak konsekwencji, własnego rygoru... Można by długo wyliczać.
Oczywiście nie wszyscy młodzi tacy są, ale proporcje jednak przerażające.
Mateusz
Następne wpisy z tego wątku
- 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
- 21.09.19 10:46 J.F.
- 21.09.19 10:56 heby
Najnowsze wątki z tej grupy
- JDG i utylizacja sprzetu
- Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
- No proszę, a śmialiście się z hindusów.
- Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800
- karta parkingowa
- Wl/Wyl (On/Off) bialy/niebieski
- I3C
- Pytanie o transformator do dzwonka
Najnowsze wątki
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO
- 2024-11-28 droga laweta
- 2024-11-28 Co tam się odpierdala w tej Warszawie?
- 2024-11-28 skąd się biorą tacy debile?
- 2024-11-28 JDG i utylizacja sprzetu
- 2024-11-27 Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- 2024-11-28 Katowice => Technical Artist <=
- 2024-11-28 Katowice => Technical Artist <=
- 2024-11-28 Bydgoszcz => QA Engineer <=
- 2024-11-28 Zielona Góra => Spedytor międzynarodowy <=
- 2024-11-28 Kraków => DevOps Engineer (Junior or Regular level) <=
- 2024-11-27 Warszawa => Analityk Biznesowo-Systemowy <=
- 2024-11-27 Zielona Góra => Senior PHP Developer <=
- 2024-11-27 Warszawa => Senior Java Developer <=