#PocketViewer

Csepp 🌒csepp@merveilles.town
2025-06-15

Hey #Casio I have some questions...

enum bool {FALSE=0, TRUE=1, HALF=2};

cc: #C #PocketViewer

Csepp 🌒csepp@merveilles.town
2025-05-04

May be of interest to #PocketViewer and #BASIC fans:
I imported the Mercurial repo #OWBasic into a Git repo on #Sourcehut:
git.sr.ht/~raingloom/owbasic

Csepp 🌒csepp@merveilles.town
2025-05-03

Adding #AutoHotkey to the list of cautionary examples of ad-hoc scripting languages. But I'm still glad it exists, now I can start automating the #PocketViewer simulator. Opening it is already so much faster.
But ideally I'd still prefer to reverse engineer it enough to use Frida to add some automation and maybe even a GDB stub.
#theWorkshop

Csepp 🌒csepp@merveilles.town
2025-04-24

At the portion of my #PocketViewer hacking where I have to become intimately familiar with Wine and Windows GUI automation.
#theWorkshop

Csepp 🌒csepp@merveilles.town
2025-04-10

Don't wanna jinx it yet, so all I'm gonna say is that the #CollapseOS #PocketViewer ROM writer is finally picking up steam. :neofox_owo:
#theFoundry #theWorkshop

Csepp 🌒csepp@merveilles.town
2025-03-17

#ReverseEngineering / #embedded folx, is it possible that a boot ROM is mapped near the end of the address space such that some of its contents wrap around?
See: github.com/NationalSecurityAge
Context: I'm trying to figure out the memory map for the #PocketViewer .

2025-02-17

@csepp @hblaub Hi all! I recently managed a successful synchronization of my #Casio #PocketViewer #PVS400Plus with #caleidlink/#pvlink but couldn't install addins or synchronize sheets. Have either of you managed to sync either? I thought I'd ask after following this Mastodon thread: merveilles.town/@hblaub@mastod

2025-02-05

@csepp You'd appreciate this video in which I take a first crack at #pvlink with my #casio #pv-s400plus #pocketviewer #pda! youtu.be/EjbOeXwjbzI #retro #retrocomputing

2025-01-21

@csepp I saw that you've been working on reverse engineering the #casio #pocketviewer and using its #sdk in #wine. Is enough of the #sdk documented that we could prepare a #linux version? I just compiled #caleidlink #pvlink on my thin client to try syncing my #pvs400plus. #pda

2024-09-15

@csepp Would you be interested to talk about #PocketViewer ?

Csepp 🌒csepp@merveilles.town
2024-08-14

> How Wozniak’s code for the #Apple1 works
redirect.invidious.io/watch?v=
Great video by #BenEater on the #MOS6502 machine monitor.
I'm working on some low-level #PocketViewer stuff in #theFoundry , so I found it especially useful. Probably won't go to this level of optimization though, at least not for the first implementation.

Csepp 🌒csepp@merveilles.town
2024-07-22

Made some progress in making the #PocketViewer SDK more usable under Wine with some wrapper scripts. UwU
#theWorkshop

Csepp 🌒csepp@merveilles.town
2024-06-16

Figured out how to install #OWBasic (a #Basic implementation) onto my #PocketViewer ! Turns out the PV application manager errors I was getting were misleading. The import function doesn't seem to work, but I can upload files to the device just fine.
So now I have the interpreter, a reference browser, and the OWB reference docs all on the PV. :moomin_happy: !
And I won't need the Windows 98 machine after all and can continue developing under Wine.
#theWorkshop

Csepp 🌒csepp@merveilles.town
2024-06-15

Hrmm, I think I'm better off setting up one of the old computers I have as a dedicated old-Windows machine. Emulating old #Windows versions with #QEMU is too fiddly (especially shared folder support) and I am never quite sure if Wine is emulating something correctly, especially with physical serial port access being involved. I need to validate if the #PocketViewer SDK works on real hardware.
cc: #retrocomputing #theWorkshop

Csepp 🌒csepp@merveilles.town
2024-06-09

I should be sleeping but I found more still online #PocketViewer sites. OwO
mcpvc.stackeffect.de/index_en.

Csepp 🌒csepp@merveilles.town
2024-03-26

Got a #PocketViewer in its original box with a dock. :moomin_yay:
I can finally transfer files between it and my PC. UwU

Csepp 🌒csepp@merveilles.town
2024-01-22

Trying to reverse engineer the x86 emulator in sim3022.exe from the #PocketViewer SDK. Or rather, trying to locate it in the relatively massive GUI app. I have some candidates that look like they are doing instruction or operand decoding.

Csepp 🌒csepp@merveilles.town
2023-10-01

Continuing my attempts at decompiling the #PocketViewer BIOS in #Ghidra. I'm getting closer to figuring out where NC3022.BIN is mapped, but it's not yet enough to make Ghidra correctly decompile the first instruction, which is an indirect far jump, so it's affected by both the reset vector and the BIOS mapping.
I'm kind of crossing my fingers and hoping that Ghidra's decompiler can correctly handle x86 segment shenanigans. :flan_worried:
#theFoundry #reverseEngineering

Csepp 🌒csepp@merveilles.town
2023-09-22

Damn it, I hoped it would not come to this, but I guess I'll have to actually solder those pins onto the test pads of the #PocketViewer. I can use the multi tack glue for temporary support and the glue gun to stop the pin from moving, but that still leaves a small gap between the test pad and the pin, so I have to flow a little bit of solder on there. Tested it with one pin, seems to work fine, but idk how I'll manage the other 8 without any of them shorting.
cc: #electronics #theFoundry

Csepp 🌒csepp@merveilles.town
2023-09-15

Oh, I think I figured out how Casio's engineers tested the #PocketViewer. It was weird that there would be no easier way to access the serial port than via the proprietary connector, which has very tightly packed surface mounted pins. There are 9 test pads on the "back" of the PCB that are obviously on the same traces that lead to the the serial connector.
That makes my job a *lot* easier. Although it still requires disassembly, so a custom connector build is still on the todo list.

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst