We just released a Feb. 5 '89 prototype of DuckTales for the NES!
If you'd like to support our preservation efforts (and this wasn't cheap), please consider donating or supporting us on Patreon. Thank you!

Notes:Prigodi Pìonerki Ksenì

From The Cutting Room Floor
Revision as of 04:42, 16 December 2019 by Mouser (talk | contribs) (Link my repo with reverse engineering tools.)
Jump to navigation Jump to search

This page contains notes for the game Prigodi Pìonerki Ksenì.


I titled the page "Prigodi Pìonerki Ksenì" using GOST 7.79-2000 / ISO 9:1995 Romanization according to this guideline. I don't know Ukrainian, but it seems a more contemporary Romanization may be "Pryhody Pionerky Kseni". Wikipedia has a big article. Go ahead and move the article if appropriate. The English translation, "The Adventures of Pioneer Ksenia", would work too.

https://archive.org/details/msdos_Priklyuchenia_Pionerki_Ksenii_shareware has the game files. !README.1ST and KSENI.DOC are encoded using code page 866 (:e ++enc=cp866 in Vim). The same two files are available at https://sites.google.com/site/pionerkaksenia/materialy/dokumentacia. The files mention the presence of a map editor and other modding information, but I did not find such in the Internet Archive copy of the game.

The documentation files also mention a series of articles by Yury Lesiuk in the Programmer's Newsletter (Программистские Ведомости). I haven't been able to find a copy of those.

The format of the executable file KSENI.COM is unlike that of the original COMIC.EXE. It is in COM format (headerless executable), not DOS MZ format, and it is not EXEPACK-compressed. The executable shows the hallmarks of having let COMIC.EXE uncompress itself and then copied out of memory; certain tables that hold original interrupt vectors, that are all zero in COMIC.EXE, are partially nonzero in KSENI.COM. KSENI.COM has a 128-byte stub at the beginning that performs the relocations that would otherwise be done by the DOS loader, then jumps to the main program. Because the MZ header of COMIC.EXE is 256 bytes, that means that data structure offsets in KSENI.COM are a fixed 128 bytes away from the corresponding offsets in the uncompressed COMIC.EXE.

Reverse Engineering Tools

Various reverse engineering tools are available in my Comic-related Git/git-annex repo:

git clone https://www.bamsoftware.com/git/comic.git
cd comic/
git annex get

-- Mouser (talk) 23:42, 15 December 2019 (EST)