VOGONS


First post, by superfury

User metadata
Rank l33t
Rank
l33t

Just created this thread to help people getting UniPCemu up and running. Reply with any questions you may have.

The very basics:
- Most settings can be easily adjusted through the settings menu(all when the yellow startup text displays itself(clickable). After it disappears, the used BIOS is loaded, hard disks mounted and hardware settings are locked down(much in the same way you can't switch out hard disks or hardware in ISA/PCI slots while the system is up and running).
- The locked down settings in the settings menu can viewed in the settings menu, but choosing them isn't allowed(due to said locking down of the setting), returning to the originating menu's top item as the focused item(having a > in front of it with the active font/border color on the text).

There are a few settings which can only be changed by manually opening the settings file(mostly TCP server settings). Other connection settings can be changed normally as documented by the Hayes modem's commands. They should also be able to work with software supporting Hayes modem commands to set it up(e.g. Telemate or the like to run AT&Sx=n to set the phonebook and quick dial number x(0-9 range only) to value n). All phone dialing numbers support 3 kinds of dialing:
- 12-digit IP address( :[port] can be added). This is a normal x.x.x.x IP address to use.
- Normal hostname(with optional :[port]).
- Single digit for dialing the phone book.

The phone book dialing option can be used both as ATDn, ATDTn, ATDPn and ATDSn. Provided it's a single digit.

The BIOS settings can be programmed by following the following steps:
1. Setup the floppy disk and hard disk as required, using the steps described in the UniPCemu manual(wiki).
2. Either boot the Compaq Deskpro 386 system after normally formatting the hard disk and installing MS-DOS on it, or use a floppy disk image.
3. Use the Compaq Deskpro 386 diagnostic/setup disks to configure the BIOS, or use a plain MS-DOS boot floppy with gsetup on it(you can grab one, then use e.g. WinImage to put gsetup on the disk) to configure the BIOS in a more simple way. By default, disks with more than 40 tracks won't work with booting from the Compaq BIOS(it only recognises 40 tracks, requiring being setup for 720K drives to recognise 80 track drives properly).

One normal(non-server) settings can only be modified by manually opening the settings.ini file(all others can be modified using the settings menu):
- listenport: The port the server listens on for it's serial modem and dial-up server.

UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io
Older UniPCemu PC/Android/PSP releases

Reply 1 of 5, by EmanuelePulciDoria

User metadata
Rank Newbie
Rank
Newbie

Thank you for this new post, I hope it will get the emulator up and running.
Starting from point 1 I imagine you are referring to the following link: https://bitbucket.org/superfury/unipcemu/src/master/ where I can see a README file with the instructions. You suggest to pull all the repository in a folder named UniPCemu. I have created one with all the files coming from your downloadable file UniPCemu_win64server.zip. I imagine I need to add all the others found in https://bitbucket.org/superfury/unipcemu/src/master/ (probably not the Android related ones) to the same folder. Is that correct? But how do I download them?

Reply 2 of 5, by superfury

User metadata
Rank l33t
Rank
l33t

With point 1(the manual/wiki) I actually meant the wiki part of the repository: https://bitbucket.org/superfury/unipcemu/wiki
It contains a simple manual I've written when using the normal compiled version.
The Readme.MD is only for compiling it from source(pulling the required repositories from git, then compiling it yourself(which is required on Linux)).

UniPCemu_win64server.zip already contains the required files themselves for the emulator to run with bare basics. You'll just need to add the ROMs for the emulated system in the ROM folder etc. to make it run fully.
The ROMs you'll have to obtain yourself, but for the XT machine, the Generic Super PC/Turbo XT BIOS 3.0 can be used(https://www.phatcode.net/downloads.php?id=101).

The AT/Compaq BIOS ROMs you'll need to obtain yourself. Can't post the links to them, but I know PCjs has some(search for the rev J.6 BIOS ROM for the Compaq Deskpro 386 on said site). Although it's in javascript format and needs to be converted back to a plain binary format(You can use http://tomeko.net/online_tools/hex_to_file.php?lang=en). The ROMs themselves can be found on Jeff Parson's PCjs git repository, it's the 1988-01-28 ROMs you'll need.

Edit: OK. Managed to get the IMD disk image support working in two modes: fast mode and slow mode. The downside of fast mode is that it uses more memory(more than the PSP can handle with it's less than 1MB free memory(shared with stuff like display buffer shrinking and file opening). The other mode (slow mode) is the one now enforced on new PSP builds, which has way more disk overhead(in the form of fseek and fread operations) but doesn't require buffering the entire disk image into memory(with large images, it could be 2-3MB, which can't be done properly on the PSP builds with less than 1MB free memory(which is guaranteed by the emulator's initialization process)).

The density setting(MFM vs FM and speed setting in the CCR register(250K/300K/500K/1M modes)) isn't emulated at any other location than the formatting process currently(which writes it to the track information block of the formatted track). The read and write routines of the IMD disk format themselves return the values, but the FDC controller currently doesn't actually check for them and error out when they don't match up with what the disk track says it uses.
This is currently mainly done to keep easy compatibility with BIOS and MS-DOS code which doesn't actually set the MFM bit of the command and the speed mode depending on what disk is inserted(it's a static, unchanging value for both settings). Otherwise, booting various media might fail. Perhaps I'll add said feature in the future(as an option in the settings for the architecture).

Edit: OK. Just checked using the TESTFDC tool. The disk image parsing seems to be working properly in slow mode! 😁

UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io
Older UniPCemu PC/Android/PSP releases

Reply 3 of 5, by EmanuelePulciDoria

User metadata
Rank Newbie
Rank
Newbie

Sorry, just been busy in some other side project here. But I am still interested in this new emulator you developed.
Ok, it looks like we are kind of building a machine with all the bits from scratch here. It could take me a while to understand how to set this up maybe because I do not have the correct knowledge about it.
I think this project could have much more visibility if a video on how to set it up and running would be created and made it public on your homepage. It will probably take 10 minutes for someone like me to do it with a video or few weeks of hard work without it. This will allow you to have more user and as a consequence more feedback to develop it faster.
Just let me know, otherwise I will try to get it to work through this post.

Reply 4 of 5, by superfury

User metadata
Rank l33t
Rank
l33t
EmanuelePulciDoria wrote on 2020-04-29, 14:04:
Sorry, just been busy in some other side project here. But I am still interested in this new emulator you developed. Ok, it loo […]
Show full quote

Sorry, just been busy in some other side project here. But I am still interested in this new emulator you developed.
Ok, it looks like we are kind of building a machine with all the bits from scratch here. It could take me a while to understand how to set this up maybe because I do not have the correct knowledge about it.
I think this project could have much more visibility if a video on how to set it up and running would be created and made it public on your homepage. It will probably take 10 minutes for someone like me to do it with a video or few weeks of hard work without it. This will allow you to have more user and as a consequence more feedback to develop it faster.
Just let me know, otherwise I will try to get it to work through this post.

I've added a simple getting started page to the manual, with some basic steps on how to get the emulator up and running ( https://bitbucket.org/superfury/unipcemu/wiki … tting%20started ).
Everything after that(besides the configuration and ROMs being ready for use) is pretty much system-specific. So that's the normal steps of installing and booting your OS.

Of course CD-ROM booting isn't directly supported by the BIOSes used, but can be circumvented using the Plop BIOS ROM, with some manual settings in the Plop ROM and it's ROM creation process not using any flashing(just creating the ROM file and name it appropriately(in my case, it's the second ROM, the first being the XT-IDE Universal BIOS ROM). In that way, the XT-IDE BIOS loads first, after which when pressing F8 it loads the Plop BIOS for booting CD-ROM discs.
Edit: Just noticed that the recording app I used(XBox Gaming Bar) didn't record most of the actions I made, only recording a single app... So I have to remake the whole thing once again.

UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io
Older UniPCemu PC/Android/PSP releases

Reply 5 of 5, by superfury

User metadata
Rank l33t
Rank
l33t

Managed to create a video with all the steps in it with some other software(after a few tries (3 or 4) getting the first software to work, failing after about every 10 minutes 😖 ). That was mainly because the original recording software(XBox software) failed the first try after I uploaded it on Youtube(which only recorded the Windows explorer app instead of the other apps used), while the other app quit after each 10 minutes of recording, having to restart the whole process time and time again.
Eventually managed to find my old software I used to record the older videos on Youtube again(ezvid), which I then used to record the whole thing. And then there was the slight issue with the uploading process of said app itself, which was failing on Google's side(saying that the app wasn't approved by Google's guidelines or something like that and that it needs to be approved first), so I then grabbed the already saved video file from the project's folder and uploaded it manually on Youtube. Although it's got no sound as a result(It didn't record any sound either).

Of course normal tutorials usually don't need that software, as I can simply do it within the app itself without closing it in the meanwhile, which is pretty much impossible during this kind of tutorial(since it requires reloading settings and other files and showing things outside the app, which the XBox recording software cannot do).

A link to it can be found in the UniPCemu manual's getting started guide( https://bitbucket.org/superfury/unipcemu/wiki … tting%20started ) and on the itch.io's external links. Simply click on the More information button on itch.io for the link, which can also be found on the manual's getting started guide itself!

UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io
Older UniPCemu PC/Android/PSP releases