# PicoCalc x86 - 8086/80186 emulation on Pico 2

**URL:** <https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905>\
**Category:** PicoCalc\
**Tags:** tinkering, opensource, software, firmware\
**Created:** [July 9, 2026, 1:31pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905 "2026-07-09T13:31:29Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![shtirlic](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/shtirlic/32/11561_2.png) [@shtirlic](https://forum.clockworkpi.com/u/shtirlic)\
**Post date:** [July 9, 2026, 1:31pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/1 "2026-07-09T13:31:29Z")

</div>

Hi PicoCalc lovers, I want to present you my new project **PicoCalc x86** , 8086/80186 emulation for Pico 2 with PicoCalc hardware support.

> **[GitHub - shtirlic/picocalc\_x86: 8086/80186 emulator for ClockWorkPi PicoCalc with...](https://github.com/shtirlic/picocalc_x86)**
>
> 8086/80186 emulator for ClockWorkPi PicoCalc with Raspberry Pi Pico 2 mcu board.

It is heavily modified port of the well known PC emulator 8086tiny project by Adrian Cable to Pico 2 (RISC-V) with PicoCalc display, keyboard, SD Card and PC Speaker support and optimized for RISC-V cores on rp2350.

Readme file contains all info you need to install and make own HDD disk, connect to modem/serial, telnet BBS access etc.

In Release section you could find uf2 image for Pico 2, and simple bootable images like DOS 4.0, SvarDOS or FreeDOS disk image.

## Current Release version: 0.0.5 August, 15 2026

> **[Release PicoCalc x86 Version 0.0.5 Release · shtirlic/picocalc\_x86](https://github.com/shtirlic/picocalc_x86/releases/tag/v0.0.5)**
>
> Features:
> 
> 80186 inststructions added
> BIOS Setup utility (F1 during boot)
> 
> Date/time settings
> Boot device
> Power button action (Reset/Screenshot)
> 
> 
> Screenshot action can be
> Power button reset doing ...

Feedback is much appreciated.

## Screenshots

 ![screen1](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/3X/f/e/fead825cd2fe261df2717ef02a815ac9ec63455d.jpeg)

## Why? Because why not.

Always wanted portable DOS device with QWERTY keyboard.

## Features

- RAM 432 KB conventional memory
- CGA text modes support, grpahics mode 4 and mode 6 support, text output in video mode broken for now, PC Speaker works, keyboard works, simple shortcuts also works like CTRL+O etc, all keys without modifiers works too.
- Software that can work with ~430kb free memory , I tested QBASIC, NC 3.0, NC 4.0, Turbo Pascal 5.5, Turbo C 2.0, TASM, Qmodem, Telix, msdos 6.22 etc.

 ![screen2](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/3X/2/9/293acecee4771e111472a59c202559b5e8368636.jpeg)

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [July 10, 2026, 10:43am UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/2 "2026-07-10T10:43:18Z")

</div>

This is great work! Thank you!

---

<div class="post-metadata">

**Author:** ![Lepeshka92](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/lepeshka92/32/16476_2.png) [@Lepeshka92](https://forum.clockworkpi.com/u/Lepeshka92)\
**Post date:** [July 10, 2026, 5:07pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/3 "2026-07-10T17:07:12Z")

</div>

This is a really cool project. What DOS games can I play with this firmware?

---

<div class="post-metadata">

**Author:** ![shtirlic](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/shtirlic/32/11561_2.png) [@shtirlic](https://forum.clockworkpi.com/u/shtirlic)\
**Post date:** [July 10, 2026, 5:36pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/4 "2026-07-10T17:36:50Z")

</div>

Text games, CGA adapter games, in plans to add MCGA mode 13h [Mode 13h - Wikipedia](https://en.wikipedia.org/wiki/Mode_13h)

---

<div class="post-metadata">

**Author:** ![granzeier](https://avatars.discourse-cdn.com/v4/letter/g/cab0a1/32.png) [@granzeier](https://forum.clockworkpi.com/u/granzeier)\
**Post date:** [July 12, 2026, 9:02pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/5 "2026-07-12T21:02:24Z")

</div>

When I installed the .UF2 file on my boot manager, and tried to boot into your X86 emulator, it just gave a blank screen and nothing else. So, I tried to install it directly onto the PicoCalc (Pico 2W) itself and got the same thing.

Does your X86 require the upgraded keyboard/screen BIOS? I have an older PicoCalc, and have not upgraded yet - it looks like this may give me the motivation to upgrade.

---

<div class="post-metadata">

**Author:** ![shtirlic](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/shtirlic/32/11561_2.png) [@shtirlic](https://forum.clockworkpi.com/u/shtirlic)\
**Post date:** [July 12, 2026, 9:24pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/6 "2026-07-12T21:24:37Z")

</div>

The BIOS is fine, I have Pico 2W without pin headers, will solder them tomorrow and test it might be Pico 2W ↔ Pico 2 firmware issue

---

<div class="post-metadata">

**Author:** ![tabemann](https://avatars.discourse-cdn.com/v4/letter/t/df705f/32.png) [@tabemann](https://forum.clockworkpi.com/u/tabemann)\
**Post date:** [July 13, 2026, 1:24am UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/7 "2026-07-13T01:24:30Z")

</div>

There is the chance that it may not be compatible with the loader, as not all software is compatible with uf2loader (my zeptoforth isn’t).

---

<div class="post-metadata">

**Author:** ![granzeier](https://avatars.discourse-cdn.com/v4/letter/g/cab0a1/32.png) [@granzeier](https://forum.clockworkpi.com/u/granzeier)\
**Post date:** [July 13, 2026, 1:58am UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/8 "2026-07-13T01:58:07Z")

</div>

Yeah, I thought of that - that is why I installed the .UF2 file directly onto the Pico. I then replaced that with the PicoMite BASIC latest version - no go. That also gave me a blank screen - I’m pretty sure that later versions of PicoMite BASIC require the newer versions of the keyboard/screen BIOS, so that’s why I’m guessing that the X86 needs the newer BIOS as well. So, it’s time to upgrade; I just need the spare time to do that - hopefully soon, as I really want an MS-DOS system in my pocket.

---

<div class="post-metadata">

**Author:** ![shtirlic](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/shtirlic/32/11561_2.png) [@shtirlic](https://forum.clockworkpi.com/u/shtirlic)\
**Post date:** [July 13, 2026, 11:36am UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/9 "2026-07-13T11:36:46Z")

</div>

I made a new release 0.0.2,

Firmware for pico2 and pico2w separated.

Now PicoCalc x86 have working serial as COM1 and working terminal/file transfer.

Also via modem emultion on the host I was able to connect to telnet BBS with perfect ANSI view

and good serial speed (57600)

 ![IMG_20260712_181800_e](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/3X/1/0/10611e497e6bfe96a2802b95fa6b0ea9ade60391.jpeg)

File transfers also possible now. I updated the Readme with instructions.,

Changelog:

- Fix for hd disk larger than 32mb
- Update/fix scrolling
- Font fixes
- int15 4f keyboard intercept
- Serial support passthrough via Pico 2 UART0 as COM1
- Update shift modifiers
- CGA render update
- BIOS model reporting

> **[Release PicoCalc x86 Version 0.0.2 Release · shtirlic/picocalc\_x86](https://github.com/shtirlic/picocalc_x86/releases/tag/v0.0.2)**
>
> Fix for hd disk larger than 32mb
> Update/fix scrolling
> Font fixes
> int15 4f keyboard intercept
> Serial support passthrough via Pico 2 UART0 as COM1
> Update shift modifiers
> CGA render update
> BIOS model ...

---

<div class="post-metadata">

**Author:** ![shtirlic](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/shtirlic/32/11561_2.png) [@shtirlic](https://forum.clockworkpi.com/u/shtirlic)\
**Post date:** [July 14, 2026, 7:55am UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/10 "2026-07-14T07:55:44Z")

</div>

So I can confirm my firmware files not suppoted yet the uf2 loader, probably that loader running on ARM cores, but my firmware uses RISC-v and it fails to switch to another ARCH. Even direct uf2 placement will not work since bootloader in another partition, only nuke and then flashing the firmware for now with uf2 loader.

---

<div class="post-metadata">

**Author:** ![bitovod](https://avatars.discourse-cdn.com/v4/letter/b/779978/32.png) [@bitovod](https://forum.clockworkpi.com/u/bitovod)\
**Post date:** [July 15, 2026, 5:13pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/11 "2026-07-15T17:13:12Z")

</div>

This is an amazing project! If it works properly, it will be able to completely replace MMBASIC - this means that support for GPIO, I2C and next UART would be necessary.

I can imagine running applications developed on a PC, for example in TurboPascal and compiled for 86/186, as well as anything written in “standard” QBASIC, directly on the PicoCalc.

What is the current speed of emulation compared to a standard PC XT?

Are you planning to be able to access GPIO, I2C and UART? That would be great, I would definitely use it for that…

---

<div class="post-metadata">

**Author:** ![bitovod](https://avatars.discourse-cdn.com/v4/letter/b/779978/32.png) [@bitovod](https://forum.clockworkpi.com/u/bitovod)\
**Post date:** [July 15, 2026, 5:23pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/12 "2026-07-15T17:23:08Z")

</div>

Sorry, I missed the performance figure. About 1 MIPS corresponds roughly to a PC XT, theoretically clocked somewhere around 10 MHz, that’s not bad - and sufficient for many applications. Nice!

---

<div class="post-metadata">

**Author:** ![adcockm](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/adcockm/32/1664_2.png) [@adcockm](https://forum.clockworkpi.com/u/adcockm)\
**Post date:** [July 15, 2026, 8:01pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/13 "2026-07-15T20:01:00Z")

</div>

I was thinking about trying Turbo Pascal on it too. But while the speed should be usable, the free memory is a problem. Not sure if it’s possible or planned, but if there is a way to free up more memory for DOS (maybe via PSRAM cleverness) then I think Turbo Pascal 5 and other classic tools and applications might run under it.

It’s already impressive work, and really cool!

---

<div class="post-metadata">

**Author:** ![shtirlic](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/shtirlic/32/11561_2.png) [@shtirlic](https://forum.clockworkpi.com/u/shtirlic)\
**Post date:** [July 18, 2026, 3:18pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/14 "2026-07-18T15:18:31Z")

</div>

Yes, the speed is not a problem, since memory is fast, pico 2 running at 230mhz, we can go higher, I stick with 230mhz as safe clock that don’t require voltage increase for rp2350 stable run.

Always the problem is free dos memory, I have a branch that uses internal qmi PSRAM with boards that have it installed by default like pimoroni pico plus 2, yesterday I tried the pico 2 clone board form ali with soldered by hand PSRAM module on top of the flash and it’s working perfectly . So I made 736kb trick and it’s all available for DOS backed by qmi PSRAM, even EMS and XMS working fine. I even got wolfd3d (cga version) ( [GitHub - jhhoward/WolfensteinCGA: Wolfenstein 3D with a CGA renderer · GitHub](https://github.com/jhhoward/WolfensteinCGA) ) working with ems or xms.

On normal pico 2 build 408kb available for DOS, maybe I can find another 8k-16kb to add, will see.

Turbo C 2 is working but memory not enough to compile while in IDE mode.  
Will test TP5.

PS  
With latest commit I increased the RAM available from 408 to 424 KB.

 ![IMG_20260718_171731](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/3X/9/e/9e7b2e06e98c9f1a9870af9bf8a57adcf3747874.jpeg)

---

<div class="post-metadata">

**Author:** ![shtirlic](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/shtirlic/32/11561_2.png) [@shtirlic](https://forum.clockworkpi.com/u/shtirlic)\
**Post date:** [July 18, 2026, 5:01pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/15 "2026-07-18T17:01:13Z")

</div>

Here is the TP5.5

 ![IMG_20260718_235807](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/3X/b/5/b58c74d1bb5a13011cc5586ae0bb9dc0730a74bb.jpeg)

 ![IMG_20260718_235757](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/3X/9/1/914356b9117198e53d22b5b53678d3252119bd7a.jpeg)

---

<div class="post-metadata">

**Author:** ![dzubin](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/dzubin/32/17992_2.png) [@dzubin](https://forum.clockworkpi.com/u/dzubin)\
**Post date:** [July 18, 2026, 5:18pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/16 "2026-07-18T17:18:56Z")

</div>

> [@shtirlic](#):
>
> On normal pico 2 build 408kb available for DOS, maybe I can find another 8k-16kb to add, will see

The latest SDK lets you use XIM RAM … it’s only another 16K, but if that’s what you need… maybe it’s worth it.

---

<div class="post-metadata">

**Author:** ![shtirlic](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/shtirlic/32/11561_2.png) [@shtirlic](https://forum.clockworkpi.com/u/shtirlic)\
**Post date:** [July 18, 2026, 5:24pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/17 "2026-07-18T17:24:25Z")

</div>

yeah I will try for sure, if it does not affect performance too much

---

<div class="post-metadata">

**Author:** ![tabemann](https://avatars.discourse-cdn.com/v4/letter/t/df705f/32.png) [@tabemann](https://forum.clockworkpi.com/u/tabemann)\
**Post date:** [July 19, 2026, 3:03pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/18 "2026-07-19T15:03:02Z")

</div>

I must add that this is a really cool project, even if my own PicoCalc will remain a Forth machine.

---

<div class="post-metadata">

**Author:** ![cjstoddard](https://avatars.discourse-cdn.com/v4/letter/c/90ced4/32.png) [@cjstoddard](https://forum.clockworkpi.com/u/cjstoddard)\
**Post date:** [July 19, 2026, 11:41pm UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/19 "2026-07-19T23:41:04Z")

</div>

Has FreeDOS been tested with this?

---

<div class="post-metadata">

**Author:** ![tabemann](https://avatars.discourse-cdn.com/v4/letter/t/df705f/32.png) [@tabemann](https://forum.clockworkpi.com/u/tabemann)\
**Post date:** [July 20, 2026, 12:40am UTC](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905/20 "2026-07-20T00:40:45Z")

</div>

I was going to ask the exact same question.

[Next page](https://forum.clockworkpi.com/t/picocalc-x86-8086-80186-emulation-on-pico-2/22905.md?page=2)
