
https://i.imgur.com/Gti3rhk.jpg
Mój CPU wygląda już coraz sensowniej. Już obsługuje instrukcje MOV, MVI, ADD, SUB, INC, DEC, HLT (to wszystko bazuje troszkę na zestawie instrukcji Intela 8080). Zrezygnowałem z mnożenia, bo boję się, że mi miejsca nie wystarczy na Spartanie.
Na płytce z FPGA zielone ledziki wskazują na stan magistrali danych, dip switch pozwala wybrać rejestr, którego stan w danej chwili jest pokazywany na ledach pod ledami ze stanem program countera.
Po lewej różne ledy od statusu procka (LCK - taki gówno-debouncing przycisków, FTC - flaga fetch, że już pobrał instrukcję/dane, EXE - flaga, że wykonał już daną instrukcję, flaga HLT - że procesor się zatrzymał, INS - czy obecny bajt na magistrali to dane czy instrukcja, ZF - zero flag).
Obecnie pracuję nad jumpami, żeby w końcu był kompletny w sensie Turinga xD

Wgl to wkurwiają mnie trochę nuworysze, co tam srają wypierdami, że uu dynamiczne typowanie to zło, hurr durr tylko statyczne typowanie xD Jeszcze niektórzy wgl piszą takie bzdury, że w Pythonie np. powinni wprowadzić przymusowe statyczne typy i dynamicznie typowane języki to się nie nadają do większych projektów. Pizdy takie, co za nich wszystko kompilator musi sprawdzać, a jakby napisali hello worlda w C to i tak by najebali 5 segfaultów i mieliby wycieki pamięci.

Ech, robiłem swój 8-bitowy procesor w verilogu na 4 rejestry, bo nie stać mnie na FPGA większe niż 1400 LUT i nawet całkiem nieźle mi to szło, a tu już siódma i do roboty trzeba iść, eh. Pewnie dopiero w weekend do tego wrócę. Jeszcze, żeby te schujałe środowiska do programowania tego były na cokolwiek innego niż windows. Brak otwartej platformy do syntezy to jest ból. Coś tam niby jest, ale i tak każdy producent ma swoje gówniane toolchainy rodem z jakiegoś borlanda.

Jedno, co mnie wkurwia w macbookach to te zajebane porty usb-c. W sensie same w sobie nie są złe - są dwustronne, ładnie się wklikują, tylko kurde mało co ma taką wtyczkę, więc muszę używać przejściówek. A ponieważ nie widzi mi się płacić 160 zł za dobrą przejściówkę, to kupiłem sobie 4 za jakieś 15 zł. No i one się ruszają, wcale się ładnie nie wklikują, już jedna mi się wygięła, eh.

To były dwa ciężkie tygodnie. Był raport do napisania. W poniedziałek okazało się, że ASAP jest jeszcze jeden do piątku hehe. Raporty na kilkadziesiąt stron, zbieranie danych, robienie wykresów, kończenie bibliotek na ostatnią chwilę, siedzenie nad jakimiś gównianymi bugami z wypranym mózgiem o 2. w nocy, żeby zdążyć. Ale już tylko dwa wykresy do końca. Jeden raport już został pozytywnie przyjęty, drugi zaraz skończę :)

Czy wy też jak poprawiacie błędy ortograficzne kolegom w taskach na Jirze, to się boicie, że się obrażą czy może jednak pracujecie z osobami, które zdały z polskiego w podstawówce?

Ponieważ mój makbuk nie ma portu PS/2, a mi akurat wpadła w ręce czaderska klawiatura Lite-On SK-0002, to postanowiłem sobie zrobić przejściówkę PS/2->USB. Prosty sposób pokazywany przez jakichś hindusów, że wystarczy połączyć odpowiednio kable ze sobą nie zadziałał, więc w ruch poszedł STM32, którym najpierw sobie sparsuję sygnał z klawiatury, a potem przedstawię się jako urządzenie HID USB i wyślę odpowiednie raporty.
No i tak analizuję sobie, co mi wysyła klawiatura i ni chuja nie pasuje to do PS/2. W końcu okazało się, że to starożytne urządzenie ma dwa tryby: AT i XT i jest przełącznik pod prawym zawiasem xD