VOGONS


Reply 20 of 25, by Jo22

User metadata
Rank l33t
Rank
l33t

Thank you very much, too! 😁
Personally, I prefer the method where DOS itself sees contingous memory (borrowed from the UMA).
It would allow for several interesting experiments with older software or with old compilers,
that otherwise would run out of memory a bit too soon.
In essence, the usual video framebuffers and Option ROMs do limit that what otherwise would be contingous memory.
Early PCs, like the once popular (-in Europe-) Siruis 1/Victor 9000, had got about 900kiB free to user applications because of this circumstance,
as its video sub system was differently designed. That's why I think CGA and Hercules (or Hercules InColor) are so fascinating, too.
They were *there* (in those days), but don't inherent the same limitations to the user as EGA/VGA do - at least in terms of the framebuffer area/size. 😀

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 21 of 25, by Jo22

User metadata
Rank l33t
Rank
l33t

Hello everyone!

Do PCem/86Box now finally support 704K of working RAM ?

- I've found a document from 1985 that claims that 704KB were not unusual in an original IBM PC.

Quote: "THIS DRIVER HAS PRIMARY APPLICATION FOR AN IBM PC-1 WITH
THE ORIGINAL ROM BIOS CHIP. A COMMON CONFIGURATION FOR
THIS MACHINE INCLUDES THE ADDITION OF BOTH 256k AND
384k MEMORY EXPANSION BOARDS. THIS COMBINATION CAN
ALLOW UPTO 704k OF RAM TO BE PHISICALLY INSTALLED.

THE MEMORY MAP OF THE IBM PC SUPPORTS WORKING RAM THRU
640k. THE NEXT TWO 64k BLOCKS ARE RESERVED FOR DISPLAY
ADAPTOR MEMORY. UNLESS AN EXTENDED FUNCTION DISPLAY
ADAPTOR, SUCH AS IBM'S "EGA" IS INSTALLED, THE FIRST 64K
BLOCK OF THIS ADDRESS SPACE CAN BE USED AS WORKING RAM.

THE PC'S POWER ON SELF TEST (POST) WILL ONLY TEST AND
THE AMOUNT OF MEMORY INDICATED BY SYSTEM BOARD SWITCHES.
IN A PC-1, THESE SWITCHES CAN ONLY BE USED TO INDICATE
544k. IN NO MODEL WILL THE POST ALLOW THE INITIALIZATION
OF MEMORY GREATER THAN 640k. ADDITIONALLY, THE POST
MEMORY INITIALIZATION CODE IN A PC-1 IS SLOW!

THIS DRIVER PERMITS SETTING THE PC'S SYSTEM BOARD SWITCHES
TO INDICATE LESS THAT THE ACTUAL AMOUNT OF INSTALLED RAM.
A SWITCH SETTING OF 64k EFFECTS THE FASTEST POSSIBLE
COMPLETION OF THE POST."

Source: RAMSET. ASM ; RAMSET.ZIP archive.
Link: http://annex.retroarchive.org/cdrom/nightowl- … 011A/index.html

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 22 of 25, by superfury

User metadata
Rank l33t
Rank
l33t

UniPCemu's Pentium i430fx configuration can now theoretically use the UMBs as RAM(configurable through the i430fx chipset registers), assuming the OS supports it(through a driver that enables the C000-FFFF blocks to be used as RAM).
But it does require a Pentium to POST at all. Although a plain XT BIOS with any CPU can actually be setup for said configuration. It should theoretically boot (although A20 will be enabled by default).

The x87 instruction set can only be emulated through 80286+ FPU exceptions, though.
And EMS on 80386+ using any memory manager.

Edit: Perhaps UMBPCI will work on the i430fx chipset UniPCemu implements. Although it still won't be able to use the A0000-BFFFF(video adapter) memory area due to it being mapped to be used for SMRAM. Although if it in't locked in the BIOS(it isn't used by the i430fx BIOS I tested it with), you might enable access to said RAM block at the cost of losing access to VRAM(and vice versa, with the exception of code fetches) by toggling it's enable bit.
UniPCemu at least, when the SMRAM window is enabled, will always decode to SMRAM for code fetches and (when enabled) data reads/writes. Disabling the data SMRAM access will cause data fetches to access PCI space instead, addressing the video adapter, if it's mapped there.
So it's theoretically possible to map both VRAM and code/data in that space on the i430fx, assuming the driver that handles it supports said functionality.
With all those enabled, including only the video(32K) ROM and BIOS ROM, for a total of 64K+32K=96K UMA ROM space, it should be able to support up to 640K base and 288K UMA space. If leaving the SMRAM disabled, that's still 160K UMA, so 760K of RAM to play with(928K for including SMRAM).

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

Reply 23 of 25, by Jo22

User metadata
Rank l33t
Rank
l33t

Thank you very much, I really appreciate it! 😀

The reason why I ask is mainly because of curiosity.
I'd like to test random applications if they are XT compatible in theory.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 24 of 25, by Jo22

User metadata
Rank l33t
Rank
l33t

Especially V20/V30 support would be interesting, because this chips had unique features not found in later x86 processor.

NEC V20 8088 Replacement Processor


What would you pay to upgrade your PC in speed. $400,$500, or even $600? I can
now offer you the NEC V20 8088 chip, complete and ready for installation for a
price well below that. This chip's features include:

(1) Minimum Instruction Time of 250ns
(2) Maximum Addressable Memory - 1 Mb
(3) Abundant Memory Addressing Modes
(4) FULLY IBM 8088 COMPATIBLE (5 MHZ)
(5) 14 x 16 bit register set
(6) 101 Instructions
(7) Instruction set is a superset of the 8086/8088 instruction set
(8) Bit,Byte,Word, and Block operations
(9) Bit field operation instructions
(10) Packed BCD (Binary Coded Decimal) operation instructions
(11) Multiplication/Division instructions execute at 6-8 milliseconds
(12) High speed block transfer instructions (1 Mbytes/sec)
(13) High speed calculation of effective addresses (2 clock cycles/any mode)
(14) Maskable and Non-Maskable Interrupt inputs
(15) IEEE-796 bus compatible interface
(16) FULL 8080 emulation
(17) CMOS technology (saves power consumption)
(18) Standby function


The NEC V20 is a CMOS 16-bit microprocessor with internal 16-bit architecture
and an 8-bit external data bus. The instruction set is a superset of the 8086 /
8088;however, mnemonics and execution times are different. The V20 additionally
has a powerful instruction set including bit processing, packed BCD operations
and high-speed multiplication/division operations. The V20 can also emulate an
8080 and comes with a standby mode that significantly reduces power consumption
and will greatly improve the life of your PC.

Source: V20OFFER.TXT (attached)

Attachments

  • Filename
    V20OFFER.ZIP
    File size
    1.63 KiB
    Downloads
    7 downloads
    File comment
    "NEC V20 8088 Replacement Processor"
    File license
    Public domain

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 25 of 25, by Jo22

User metadata
Rank l33t
Rank
l33t

Quick update.

I've found a site with an interesting description of the 640k "barrier". 😀
https://www.filfre.net/2017/04/the-640-k-barrier/

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//