Indeks English versionEnglish version

Emulator kalkulatora PB-1000

Program emuluje mikroprocesor HD61700 oraz używa obrazu odczytanej zawartości pamięci ROM kalkulatora Wymaga komputera PC z systemem Windows.

Program powstał w celu weryfikacji poprawności odczytanej wewnętrznej pamięci ROM procesora oraz jako narzędzie pomocne przy analizie firmowego oprogramowania zawartego w pamięci ROM.

Pliki do ściągnięcia

Wersja programu 52, ostatnie uaktualnienie 2025/01/20

plikpb1000es.zip - teksty źródłowe programu w Delphi 5

plikpb1000em.zip - skompilowana wersja programu
Sposób użycia: rozpakować pliki do pustego katalogu a następnie uruchomić program pb1000.exe

plik pb1000ej.zip - wersja japońska
Sposób użycia: Zastąpić pliki rom1.bin oraz face.bmp w katalogu w którym został zainstalowany program.

plik pb1000c.zip - wersja PB-1000C z CASL
Sposób użycia: Zastąpić pliki rom1.bin oraz face.bmp w katalogu w którym został zainstalowany program.

Zrzuty ekranu

Zrzut ekranu emulatora PB-1000

Okno debugera emulatora PB-1000

Okno narzędzia komunikacyjnego emulatora

Wskazówki dotyczące użytkowania

Urządzenia peryferyjne zgodne z MD-100

Port szeregowy

Narzędzie komunikacyjne wywoływane klawiszem F4 jest odpowiednikiem programu terminalowego używanego z prawdziwym kalkulatorem. Funkcje przycisków:

[Send]
wybór pliku przesyłanego do kalkulatora
[Receive]
wybór pliku do którego zapisywane są dane odbierane z kalkulatora
[Stop]
zamyka plik

Drukarka

Drukowany tekst jest zapisywany do pliku wybranego przyciskiem [Receive] narzędzia komunikacyjnego.

Stacja dysków

Plik obrazu dyskietki jest określony w pliku INI lub można go wybrać za pomocą Shift+F4. Plik disk0.bin dołączony do archiwum zawiera przykładowy obraz dyskietki. Rozmiar tego pliku definiuje pojemność emulowanego nośnika. Pojemnośc oryginalnej dyskietki wynosi 327680 bajtów, ale system plików potrafi obsługiwać nośniki o pojemności do 512 kilobajtów. Jego zawartością można manipulować za pomocą programu md100, którego autorem jest Marcus von Cube.

Wbudowany debuger

Panel deasemblera

Panel edytora binarnego

Panel rejestrów

Panel rejestrów głównych (main register file)

Sterowanie programem

Plik pb1000.ini

Niektóre parametry emulatora można dostosować do indywidualnych potrzeb modyfikując plik pb1000.ini za pomocą dowolnego edytora tekstowego.
Opis zawartości tego pliku:

OscFreq = 910
Ta wartość definiuje częstotliwość zegara emulowanego procesora.
DiskName = disk0.bin
To ustawienie określa nazwę pliku z obrazem dyskietki. Można też podać pełną ścieżkę dostępu.

Odinstalowanie

W celu usunięcia emulatora wystarczy skasować podkatalog w którym został zainstalowany. Program nie dokonuje w systemie żadnych zmian poza swoim podkatalogiem.

Podziękowania

Znane ograniczenia i problemy występujące w aktualnej wersji programu


Programy pomocnicze

plikpb1000et.zip - teksty źródłowe i kody wykonywalne, DOS lub Windows (w okienku DOS)

RAMTRANS

Program przesyłający pliki pomiędzy komputerem PC i obszarem ramdysku w obrazie pamięci RAM używanym przez emulator.

Sposób użycia: ramtrans.exe [-n] <komenda> <opcje> <parametry>

Lista komend

dir <opcje> <wzorzec_nazwy_pliku>
Wyświetlenie zawartości katalogu ramdysku. W przypadku podania wzorca nazwy wyświetlane są tylko pliki pasujące do wzorca. Przykłady:
- wszystkie pliki: ramtrans dir
- tylko wybrane pliki: ramtrans dir "*.BAS"
 
type <opcje> <nazwa_pliku>
Wyświetlenie zawartości pliku w postaci szesnastkowej lub jako tekst, zależnie od typu pliku (binarny lub ASCII). Programy BASIC są dekodowane z wewnętrznego formatu do zwykłej, tekstowej postaci. Przykłady:
- stokenizowany program BASIC TEST.BAS jako tekst: ramtrans type -a TEST.BAS
- szesnastkowy wydruk wszystkich plików o rozszerzeniu .BIN: ramtrans type -b "*.BIN"
 
get <opcje> <nazwa_pliku_na_ramdysku> [<nazwa_pliku_na_PC>]
Transfer pojedynczego pliku z ramdysku do komputera PC. Gdy nie jest podana nazwa pliku na komputerze PC, kopiowany plik zachowuje oryginalną nazwę. Przykłady:
- pojedynczy plik PI.BAS: ramtrans get -i pi.bas
- stokenizowany program BASIC PI.BAS jako tekst: ramtrans get -a -i pi.bas pi.txt
 
mget <opcje> <wzorzec_nazwy_pliku>
Transfer wielu plików z ramdysku do komputera PC. Przykłady:
- kopiowanie do lokalnego katalogu: ramtrans mget "P*.BAS"
- kopiowanie do innego katalogu (nazwa podana po opcji -d): ramtrans.exe mget -d c:\windows\temp\ "*.BIN"
 
put <opcje> <nazwa_pliku_na_PC> [<nazwa_pliku_na_ramdysku>]
Transfer pojedynczego pliku z komputera PC do ramdysku. Gdy nie jest podana nazwa pliku na ramdysku, kopiowany plik zachowuje oryginalną nazwę. Należy określić typ kopiowanego pliku za pomocą opcji -t, w przeciwnym razie program wybierze go na podstawie rozszerzenia nazwy. Przykład:
- opcja -u zamienia małe litery w nazwie na duże: ramtrans put -u pi.asc
 
mput <opcje> <nazwy_plików>
Funkcja podobna do put, ale kopiuje wiele plików.
 
del <opcje> <wzorzec_nazwy_pliku>
Usunięcie pliku o podanej nazwie z ramdysku.
 
ren <opcje> <poprzednia_nazwa> <nowa_nazwa>
Zmiana nazwy pliku na ramdysku.

Lista opcji

-i
Ignoruje wielkość liter w nazwach plików na ramdysku.
 
-l
Zamienia duże litery w nazwach plików na małe.
 
-u
Zamienia małe litery w nazwach plików na duże.
Ta opcja jest zalecana przy kopiowaniu plików na ramdysk, wygodniej się wtedy z nich korzysta.
 
-tX
Ustawienie typu pliku na X (B, M, S lub liczba szesnastkowa).
Pliki w komputerze PB-1000 mają dodatkowy atrybut (typ pliku), który pozwala na zastosowanie właściwej akcji po wybraniu pliku z menu:
Użycie tej opcji jest konieczne przy kopiowaniu plików do ramdysku.
 
-b
Ustanowienie binarnego trybu transmisji.
Ta opcja powinna być wybrana przy transmisji stokenizowanych programów BASIC oraz innych plików binarnych.
Uwaga: program ramtrans nie zachowuje informacji o adresie ładowania oraz startu programów maszynowych. Do tego celu należy używać odpowiednich formatów plików (np. PBF) razem z właściwym programem ładującym (np. PBFTOBIN dołączonym do asemblera HD61).
 
-a
Ustanowienie tekstowego trybu transmisji.
Ta opcja powinna być wybrana przy transmisji plików tekstowych z komputera PC, ponieważ wstawia właściwe sekwencje końca wierszy (CR+LF) i końca pliku (Ctrl-Z). Nadaje się również dla programów maszynowych w formacie PBF.
 
-n
Zmiany nie są zapisywane do obrazu pamięci RAM, przydatne dla testów.

Jest to adaptacja programu md100, którego autorem jest Marcus von Cube (podobna funkcja, ale działa z dyskietkami zapisanymi przez stację dysków MD-100 lub ich obrazami).