Page 1 of 1

[Patch] Compaq Portable Plus

Posted: Sat 09 Dec, 2017 2:19 pm
by dns2kv2
tested against latest pcem commit 9de4df7

Image


playable display adapter:
-ati 18800
-ati 28800
-tseng et4000/w32p
-tseng et4000ax
-ega
-oak oti-067
-paradise pvga1a
-trident tvga8900d
-trident tgui9440
-vga
-wyse 700


playable harddisk controller:
-[mfm] dtc 5150x
-[mfm] fixed disk adapter (xebec)


playable floppy disk image size:
-360kb


issue:
-post error "101"
-post error "401"
-when opening graphical games or apps, the keyboard arrow buttons become numbers.
you must use numpad arrows to move around, if you don't have numpad, oh well errhhh...

Re: [Patch] Compaq Portable Plus

Posted: Sun 10 Dec, 2017 12:19 am
by JohnElliott
It may work with a CGA chipset if you select CGA video timings using the 'external monitor' hotkey (CTRL + ALT + < ). Otherwise it'll be trying to drive the Compaq dual-scan monitor.

Re: [Patch] Compaq Portable Plus

Posted: Sun 10 Dec, 2017 1:09 am
by dns2kv2
JohnElliott wrote:It may work with a CGA chipset if you select CGA video timings using the 'external monitor' hotkey (CTRL + ALT + < ). Otherwise it'll be trying to drive the Compaq dual-scan monitor.
if you can help implement it, please do so.
if you can also help fix other issue in the patch, please do so.

Re: [Patch] Compaq Portable Plus

Posted: Mon 11 Dec, 2017 12:33 am
by JohnElliott
I haven't looked into implementing the Compaq dual-scan CGA yet, but I was right that pressing CTRL + ALT + < will make it display correctly on the existing CGA:

Image

It would also work if you set the DIP switches to boot in 24x40 mode rather than 24x80, but PCEM doesn't support this.

Re: [Patch] Compaq Portable Plus

Posted: Mon 11 Dec, 2017 1:37 pm
by ArtiomWin
JohnElliott wrote:I haven't looked into implementing the Compaq dual-scan CGA yet, but I was right that pressing CTRL + ALT + < will make it display correctly on the existing CGA:

Image

It would also work if you set the DIP switches to boot in 24x40 mode rather than 24x80, but PCEM doesn't support this.
I've found at some site CPQVID BIOS ROM (8K). Maybe it is for Compaq CGA card.

Re: [Patch] Compaq Portable Plus

Posted: Mon 11 Dec, 2017 3:52 pm
by dns2kv2
JohnElliott wrote:I haven't looked into implementing the Compaq dual-scan CGA yet, but I was right that pressing CTRL + ALT + < will make it display correctly on the existing CGA:

Image

It would also work if you set the DIP switches to boot in 24x40 mode rather than 24x80, but PCEM doesn't support this.
yep, you're right. it worked out of the box just like you said.

Re: [Patch] Compaq Portable Plus

Posted: Mon 11 Dec, 2017 9:24 pm
by JohnElliott
OK, here's an implementation of the Compaq CGA (at least, the version used in the Portable).

Later versions of the adaptor (as found in the Portable II and the original Deskpro) also allow the high-resolution display to be switched between CGA and MDA attributes, using bit 7 of the CGA control register. My patch doesn't implement this, though it probably wouldn't be too hard to do.

Re: [Patch] Compaq Portable Plus

Posted: Fri 15 Dec, 2017 1:16 am
by JohnElliott
And this version of the patch emulates the later version of the adaptor that can do MDA or CGA attributes. If you want to test switching from one to the other on the Portable, which doesn't have a hotkey to do this, you can create a COM file using DEBUG:

Code: Select all

A>DEBUG
-a100
103B:0100 mov ax,40
103B:0103 mov es,ax
103B:0105 mov bx,65
103B:0108 es:
103B:0109 xor byte ptr [bx],80
103B:010C es:
103B:010D mov al,[bx]
103B:101F mov dx,03d8
103B:0112 out dx,al
103B:0113 int 20
103B:0115
-rcx
CX 0000
:15
-ntoggle.com
-w
Writing 0015 bytes
-q
TOGGLE.COM will then toggle the attributes between MDA-style and CGA-style each time it's run:
Image Image

Re: [Patch] Compaq Portable Plus

Posted: Sat 24 Feb, 2018 2:06 pm
by SarahWalker
Compaq CGA committed at rev 1066.

Re: [Patch] Compaq Portable Plus

Posted: Sat 24 Feb, 2018 2:33 pm
by SarahWalker
And the Compaq Portable Plus added at rev 1067. I fixed the 401 error - LPT1 was at the wrong address. The 101 error is a PIT bug that I'm still looking at.