Nano Banana 2.1 DOSTĘPNE — Najnowszy od Google | Wypróbuj →
WAVESPEED AI EMULATOR 6502 DZIAŁA W PRZEGLĄDARCE
100% DARMOWE

Emulator i asembler 6502Pisz w asemblerze, uruchamiaj i obserwuj każdy rejestr.

Wpisz kod w asemblerze 6502 i naciśnij Uruchom: zostanie zasemblowany i uruchomiony na kolorowym ekranie 32×32 z obsługą klawiatury.
Wykonuj po jednej instrukcji, ustawiaj punkty przerwania i obserwuj zmiany rejestrów, flag i pamięci.

Wbudowany asemblerPraca krokowa i punkty przerwaniaSnake i 7 innych przykładów
Bez rejestracji Bez instalacji Działa offline

Ładowanie emulatora…

Kod jest asemblowany i uruchamiany na Twoim urządzeniu. Nic nie jest przesyłane.
TRZY PROSTE KROKI

Jak korzystać z emulatora 6502

01

Napisz lub wybierz program

Wpisz kod w asemblerze 6502 w edytorze lub wybierz przykład, np. Snake, Paski kolorów albo demo matematyczne. Programy zaczynają się od $0600.

02

Uruchom

Naciśnij Uruchom (lub Ctrl/⌘+Enter). Kod zostanie zasemblowany; błędy są wypisywane z numerami linii. Kliknij ekran, aby wysyłać klawisze do programu.

03

Debuguj

Wstrzymaj, wykonuj po jednej instrukcji i kliknij numer linii, aby ustawić punkt przerwania. Obserwuj rejestry, flagi, pamięć i deasemblację podczas działania.

NAUKA 6502

Wskazówki 6502 dla początkujących

6502 ma trzy 8-bitowe rejestry, 256-bajtowy stos i kilka trybów adresowania. Te zasady zaprowadzą Cię daleko.

Ekran to pamięć

Każdy bajt od $0200 do $05FF to jeden piksel, po 32 w wierszu. STA $0200 koloruje lewy górny piksel; dodaj $20, aby zejść o jeden wiersz.

Strona zerowa jest szybka

Adresy $00–$FF zajmują jeden bajt i odczytują się o jeden cykl szybciej. Trzymaj tam liczniki i wskaźniki.

Wskaźniki używają (zp),Y

Zapisz 16-bitowy adres w dwóch bajtach strony zerowej, najpierw młodszy bajt; wtedy LDA ($10),Y czyta spod tego adresu plus Y. Przykłady Snake i wzór używają tego do przechodzenia po ekranie.

Przeniesienie przed obliczeniami

ADC dodaje też przeniesienie, więc zaczynaj dodawanie od CLC, a odejmowanie od SEC. Skoki takie jak BCC i BCS sprawdzają potem przeniesienie.

Tryb dziesiętny

Po SED instrukcje ADC i SBC liczą dziesiętnie: $58 + $46 daje $04 z ustawionym przeniesieniem (104). Przydatne do wyników; wyłącz go ponownie przez CLD.

Czytaj flagi

Każda instrukcja ładowania i arytmetyczna aktualizuje N i Z. Przejdź pętlę krok po kroku i obserwuj, jak się zmieniają przed skokiem, który je sprawdza.

WaveSpeed AI

Twórz grafikę do projektów retro

Twórz z promptu sprite’y w pixel arcie, ekrany tytułowe i krótkie klipy do gier i dem dzięki WaveSpeed AI.

  • Ponad 1000 modeli AI
  • Obraz, wideo i 3D
  • Płać za użycie

$1 w darmowych kredytach dla kwalifikujących się nowych kont. Bez karty. Generatory mają osobne wymagania dotyczące konta i kredytów. Emulator 6502 jest darmowy.

Emulator 6502 – FAQ

Czy ten emulator 6502 jest darmowy?

Tak. Jest darmowy, bez rejestracji, bez reklam i bez limitów. Program jest zapisywany w przeglądarce, więc będzie na Ciebie czekał następnym razem.

Jaki 6502 emuluje?

Oryginalny NMOS 6502 ze wszystkimi 151 udokumentowanymi instrukcjami, trybem dziesiętnym BCD z zachowaniem flag NMOS, błędem strony JMP ($xxFF) i udokumentowaną liczbą cykli, w tym karami za przekroczenie strony i skoki.

Jak dokładny jest?

Przechodzi powszechnie używany program testów funkcjonalnych 6502 oraz 1,5 miliona testów pojedynczych instrukcji, które sprawdzają rejestry, flagi, pamięć i liczbę cykli.

Jaka jest mapa pamięci?

64 KB RAM. Ekran to $0200–$05FF (jeden bajt na piksel, 16 kolorów), odczyt $FE daje nowy losowy bajt, $FF zawiera ostatnio naciśnięty klawisz, a programy ładują się pod $0600. Programy napisane do popularnych kursów 6502 dla początkujących, które używają tego układu, działają bez zmian.

Jak wysyłać klawisze do programu?

Kliknij lub dotknij ekranu, a potem pisz: kod ASCII klawisza trafia do $FF. Strzałki i strzałki ekranowe wysyłają w, a, s i d, których używają przykłady Snake i Rysowanie.

Jaka składnia asemblera jest obsługiwana?

Etykiety (loop: lub słowo na początku linii), stałe (define name value lub name = value), *= lub .org, .byte/dcb, .word, .text, .asciiz i .res, liczby szesnastkowe ($FF), binarne (%1010), dziesiętne i znakowe ('A'), arytmetyka oraz < i > dla młodszego i starszego bajtu. Wartość poniżej $100 używa strony zerowej; napisz $00FF, aby wymusić formę absolutną.

Jak działają punkty przerwania i praca krokowa?

Kliknij numer linii (lub naciśnij F9 na linii), aby ustawić punkt przerwania. Uruchom zatrzymuje się przed tą instrukcją; Krok (F10) wykonuje jedną instrukcję i podświetla jej linię. Rejestry, flagi, pamięć i deasemblacja aktualizują się po każdym zatrzymaniu — to świetny sposób na naukę asemblera 6502.

Czy mogę zapisać lub udostępnić program?

Program jest automatycznie zapisywany w przeglądarce. Możesz też zapisać go jako plik .asm, pobrać zasemblowany .bin, skopiować zrzut hex, zapisać cały stan maszyny lub skopiować link zawierający program.

Czy mój kod jest gdzieś przesyłany?

Nie. Asemblacja i uruchamianie odbywają się w przeglądarce. Link do udostępnienia przechowuje program w części adresu po #, której przeglądarki nie wysyłają na serwer.

Wszystkie darmowe narzędzia

Uruchom swój pierwszy program 6502

Za darmo, w przeglądarce, z debuggerem.

Otwórz emulator