Search found 96 matches

by MicroCoreLabs
Fri Jun 02, 2023 4:45 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Instruction prefetch cache?
Replies: 1
Views: 2674

Re: Instruction prefetch cache?

Yes, the prefetch queue is implemented the same as the real 8088. The music playing at the end of the 8088 MPH demo relies on the prefetch queue operating correctly and the PCXT core seems to run this fine. Also the tools which identify the processor type using the prefetch queue correctly identify the core as an 8088.

by MicroCoreLabs
Tue Jan 17, 2023 8:35 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Ideas for PCAT
Replies: 36
Views: 12508

Re: Ideas for PCAT

Well said... Implementing all of the protected-mode functionality is a heavy lift - but without all of this we are left with a real-mode only 386 which can only run DOS. Furthermore, I wonder if there are many games/applications which run in real mode which sense a 386 is present and then take advantage of the 32-bit instructions... If not, then th...
by MicroCoreLabs
Sat Jan 14, 2023 3:27 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: Ideas for PCAT
Replies: 36
Views: 12508

Re: Ideas for PCAT

Also from reading wikipedia, it mentions that 386 embedded chips did not have real mode at all.

Could you please share where you found this?

by MicroCoreLabs
Sat Jan 14, 2023 1:08 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: Ideas for PCAT
Replies: 36
Views: 12508

Re: Ideas for PCAT

Would a 80386 that only operates in real mode be interesting? Implementing protected mode is a heavy lift and DOS doesnt even use it...

Speaking of which, was the 386 widely used as an embedded processor? If so, was it used in real mode or was there a need for protected mode in embedded applications?

by MicroCoreLabs
Mon Dec 12, 2022 4:34 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: Ideas for PCAT
Replies: 36
Views: 12508

Re: Ideas for PCAT

If you only want a speed boost then it can be achieved most easily by making improvements to the PCXT core - I have posted notes in this forum on how it can be done. If there is no interest in this level of effort then developing a new 80286 core and chipset are even more unlikely...

by MicroCoreLabs
Sun Dec 04, 2022 5:27 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: MCL86 featured on hackaday
Replies: 2
Views: 881

Re: MCL86 featured on hackaday

The MCL86 has become more visible because of the MiSTer PCXT core which I have all of you to thank for! :)

by MicroCoreLabs
Wed Nov 30, 2022 6:35 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: Tandy 1000 TX?
Replies: 12
Views: 1949

Re: Tandy 1000 TX?

As I understand it, this team didn't make the existing 8088 emulator. They took it from another project, struggled with it for awhile, and then MCL86 improved it some. They didn't do a ground-up creation, they took an existing thing, and tweaked it to work better, and even that took a lot of work. This is not true. I am the author of the MCL86 who...
by MicroCoreLabs
Mon Nov 28, 2022 6:38 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Some 8088 instruction bugs
Replies: 3
Views: 1233

Re: Some 8088 instruction bugs

Interesting tests.. Thanks for running them! The first group which both the MCL86 and 86Box fail are MUL/DIV opcodes which have undefined flags so there is practically no way for us to emulate this behavior. The 0xF7, 0xEB is also an IMUL, so it is probably just random luck that 86Box got it correct. The 0x9F is LAHF and the MCL86 does not copy a '...
by MicroCoreLabs
Fri Nov 18, 2022 4:33 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: Interesting Tests We Could Run For x86
Replies: 25
Views: 2882

Re: Interesting Tests We Could Run For x86

Has anyone tried Area5150 with all of the bug fixes and upgrades recently?
by MicroCoreLabs
Wed Nov 16, 2022 6:25 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: PCXT Core 10Mhz CPU Speed Possible?
Replies: 101
Views: 8190

Re: PCXT Core 10Mhz CPU Speed Possible?

I can already hear the monotonous Pengo song in my head.
https://www.youtube.com/watch?v=d_aj3bG45ag

Pengo isnt much fun when the 8088 is not cycle accurate. :)
by MicroCoreLabs
Wed Nov 16, 2022 3:49 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: PCXT Core 10Mhz CPU Speed Possible?
Replies: 101
Views: 8190

Re: PCXT Core 10Mhz CPU Speed Possible?

spark2k06 wrote: Tue Nov 15, 2022 2:35 pm
kitune-san wrote: Tue Nov 15, 2022 2:31 pm hmm.. I don't know what to say.
I have not found any bottlenecks yet.
However, I would not say that there is not something that is a bottleneck.
MicroCoreLabs wrote:
Let's see what @MicroCoreLabs has to say :-)
But having ao486 already, useful for exactly what :)
You tell me. You just ran speed tests and asked me what the bottlenecks were...
by MicroCoreLabs
Wed Nov 16, 2022 3:43 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: PCXT Core 10Mhz CPU Speed Possible?
Replies: 101
Views: 8190

Re: PCXT Core 10Mhz CPU Speed Possible?

for example, how about having an 8087?
Virtually nothing uses the 8087... Maximum speed will always be useful. :)
by MicroCoreLabs
Wed Nov 16, 2022 3:41 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: PCXT Core 10Mhz CPU Speed Possible?
Replies: 101
Views: 8190

Re: PCXT Core 10Mhz CPU Speed Possible?

You can add another interface to your BIU which has the full 20-bit address and 16-bits of data (MCL86 EU is 16-bit, just like real 8088) which attaches directly to your DRAM controller block which already has ports for the BIU and DMA. When the CPU attempts an access to DRAM which you want to accelerate the access happens over this new BIU port. Y...
by MicroCoreLabs
Wed Nov 16, 2022 3:10 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: PCXT Core 10Mhz CPU Speed Possible?
Replies: 101
Views: 8190

Re: PCXT Core 10Mhz CPU Speed Possible?

They are very interesting, but would be difficult to incorporate into the same core as the current stable 4.77 MHz system. Great achievements are often difficult... You can use my MCL86jr BIU as an example which accesses an external SSRAM at both 4.77Mhz cycle accurate and fastest possible speeds. https://github.com/MicroCoreLabs/Projects/blob/mas...
by MicroCoreLabs
Tue Nov 15, 2022 6:30 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: PCXT Core 10Mhz CPU Speed Possible?
Replies: 101
Views: 8190

Re: PCXT Core 10Mhz CPU Speed Possible?

Let's see what @MicroCoreLabs has to say :-). You can try: - Running the microsequencer faster than 100Mhz. The FPGA can probably synthesize to a much faster clock speed. - For SDRAM accesses you can bypass the BIU state machine and complete cycles in the minimal time. This would yield the best results. - Mirroring the BIOS ROMs in FPGA RAM and ac...
by MicroCoreLabs
Sun Nov 13, 2022 7:13 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: PCXT Core 10Mhz CPU Speed Possible?
Replies: 101
Views: 8190

Re: PCXT Core 10Mhz CPU Speed Possible?

None of that's easy, but it seems a lot easier than an 80386-from-scratch would be. It would probably even be easier than a 286-from-scratch. But that's a guess based on zero FPGA programming experience. Developing CPU cores is time consuming and difficult.. at least it is for me.. :) Some of the recent bug fixes for the MCL86 were absolute needle...
by MicroCoreLabs
Sun Nov 13, 2022 5:20 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: PCXT Core 10Mhz CPU Speed Possible?
Replies: 101
Views: 8190

Re: PCXT Core 10Mhz CPU Speed Possible?

Even less than 25MHz could be the maximum limit imposed by the MCL86 architecture, if I'm not mistaken... I think @MicroCoreLabs said something about that.
Did I say that?

I covered this in a previous post, but you can achieve the greatest acceleration by changing the BIU to complete DRAM accesses outside of the local bus state machine.
by MicroCoreLabs
Mon Nov 07, 2022 9:49 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: IBM PCjr BIOS in PCXT Core
Replies: 27
Views: 3692

Re: IBM PCjr BIOS in PCXT Core

The MCL86 does work in a real PCjr :)

https://www.youtube.com/watch?v=BUYmz3fqxss
by MicroCoreLabs
Sun Oct 30, 2022 10:08 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: IBM PCjr BIOS in PCXT Core
Replies: 27
Views: 3692

Re: IBM PCjr BIOS in PCXT Core

For the PCjr experiment is there any way to insert a CTL-ALT-INS which, after the splash screen, begins the internal diagnostics. It will display a menu and memory count at the top the screen which would be interesting to see.
by MicroCoreLabs
Sun Oct 30, 2022 9:00 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: FDD Support Based on ao486 Implementation
Replies: 93
Views: 22555

Re: FDD Support Based on ao486 Implementation

The updated microcode has been uploaded to my GitHub repository. Please let me know how it works!
by MicroCoreLabs
Sun Oct 30, 2022 6:26 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: FDD Support Based on ao486 Implementation
Replies: 93
Views: 22555

Re: FDD Support Based on ao486 Implementation

I now see that the CF/OV flags are used by iDIV and DIV so need to be cleared. IMUL and MUL clears these flags in the microcode so no changes are needed. I will update the microcode ASAP. IDIV is easy because the first microcode instruction is currently a NOP which can easily be changed to the CF/OV clear instruction. DIV will be a bit harder are t...
by MicroCoreLabs
Sat Oct 29, 2022 6:10 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Some Research Over the Keyboard Issues on Hang Shift for Keyb sp
Replies: 16
Views: 1645

Re: Some Research Over the Keyboard Issues on Hang Shift for Keyb sp

Yes, it looks like changing that line of microcode to a NOP is the best fix. I verified that each 0xF6 opcode sets the Carry and Overflow flags independently so there is no need to pre-zero them when the 0xF6 opcode is recognized. The mistake was when a microcode operation is shared between opcodes I tried to perform it just once to save the microc...
by MicroCoreLabs
Sat Oct 29, 2022 5:22 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Some Research Over the Keyboard Issues on Hang Shift for Keyb sp
Replies: 16
Views: 1645

Re: Some Research Over the Keyboard Issues on Hang Shift for Keyb sp

Yes, the NOT opcode should not affect any flags, but I am clearing them in the common 0xF6 code. Your NOP fix may be the best fix, but let me investigate to make sure this solution will not affect other 0xF6 opcodes. Thanks!
by MicroCoreLabs
Sun Sep 25, 2022 6:44 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: 8088 CPU
Replies: 8
Views: 1611

Re: 8088 CPU

When a word access is executed to an I/O device (out, in), is the address incremented on the second access?
Yes it does increment. Please see my BIU code on GitHub. Also remember that the address will wrap over the segment.

For example a word read at 0xAFFFF will read from 0xAFFFF and then 0xA0000. It will not read from 0xAFFFF and 0xB0000.
by MicroCoreLabs
Sun Sep 25, 2022 1:08 am
Forum: IBM PC, PCXT, Tandy 1000
Topic: 8088 CPU
Replies: 8
Views: 1611

Re: 8088 CPU

It would be very hard to emulate this behavior exactly so I just picked a number in the middle of the range which yielded good results.
This was my full statement.

Practically anything can be done in a software emulator so there is no surprise that cycle-exact emulators exist. Doing so in microcode running in an FPGA is a different story...
by MicroCoreLabs
Sat Sep 24, 2022 6:20 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: 8088 CPU
Replies: 8
Views: 1611

Re: 8088 CPU

The MCL86 is cycle accurate, but not cycle exact. I'm not sure anyone has achieved this yet in hardware but I believe the MCL86 comes the closest. For opcodes which complete in a range of clock cycles like MUL and DIV the MCL86 will use a number in the middle of the range. The real 8086 uses a combination of microcode and hardware for multiply and ...
by MicroCoreLabs
Fri Sep 23, 2022 9:29 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Interesting Tests We Could Run For x86
Replies: 25
Views: 2882

Re: Interesting Tests We Could Run For x86

These are all good points but I will leave it as a project for someone else. :)
by MicroCoreLabs
Fri Sep 23, 2022 4:11 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Interesting Tests We Could Run For x86
Replies: 25
Views: 2882

Re: Interesting Tests We Could Run For x86

It looks like PCXT passed all that tests :), this is how it looks like after running "runall.bat": Yes, this was the desired result! :) I wrote all of these tests on a genuine IBM PCXT using QEdit and then ran them on a PC which had an MCL86 installed. For opcodes which failed I single-stepped the same test on both computers using D86 to...
by MicroCoreLabs
Thu Sep 22, 2022 8:43 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Interesting Tests We Could Run For x86
Replies: 25
Views: 2882

Re: Interesting Tests We Could Run For x86

Here are the tests I wrote to verify the MCL86 core which touch on the opcodes, addressing modes, and flags. https://github.com/MicroCoreLabs/Projects/tree/master/MCL86/Tests It compiles using A86 into .COM files which run under DOS. I'm sure they are not 100% exhaustive but were good enough to verify the core to a large degree. Source code is simp...
by MicroCoreLabs
Sun Sep 18, 2022 8:47 pm
Forum: IBM PC, PCXT, Tandy 1000
Topic: Saving BRAM To Facilitate Ports and New Developments
Replies: 25
Views: 2938

Re: Saving BRAM To Facilitate Ports and New Developments

Maybe you can try using distributed/LUT RAM for the 16KB of MCL86 microsequencer ROM instead of block RAM since you seem to have lots of spare LUTs?