MiSTer PCXT

Akuma
Posts: 138
Joined: Sat Dec 11, 2021 9:50 pm
Has thanked: 24 times
Been thanked: 45 times

Re: MiSTer PCXT

Unread post by Akuma »

pgimeno wrote: Thu Jun 23, 2022 9:16 pm
jca wrote: Thu Jun 23, 2022 8:14 pm It still does not work, running the command manually in the console gives:
ERROR: '/media/usb0/games/PCXT/hdd.img', file size does not match standard CHS geometry (x:16:63), please specify geometry explicitly with -g

I think someone mentioned having this error but it still worked for him. Should I try with a smaller disk, like 20MB?
That error means that the size of the file you created is not a multiple of 516096 bytes.

The standard geometry it's talking about is x cylinders (x varies), 16 heads, 63 sectors per head. A sector is 512 bytes. Since the only parameter you can vary is the number of cylinders, the size must be an exact multiple of one cylinder, that is, of 16*63*512 = 516096 bytes; otherwise you have to specify a different geometry (cylinders, heads and sectors) with the -g parameter by editing the serdrive command in the script that mounts the disk.
jca wrote: Thu Jun 23, 2022 9:39 pm This thing is driving me crazy:
On Github for serdrive I found default is a 32 MB disk, with CHS geometry 65:16:63.
I tried it but it did not work. After calculation it happens this is not 32MB but 33.54624MD.
My disk is 33,554,432 bytes, how do I calculate the damn thing?
You don't, its a computer, let it do all the hard work for you ;) *see post below*
pgimeno wrote: Thu Jun 23, 2022 9:49 pm
NML32 wrote: Thu Jun 23, 2022 9:29 pm What's the easiest way to create a raw disk image that has the correct geometry? I'm having the same issue with every raw file I create.
With Linux, try with:

Code: Select all

dd if=/dev/zero of=<target_name> bs=516096 count=<number_of_cylinders>
For a specific size, divide the required size in bytes by 516096 and round up to obtain the number of cylinders.

For example, for 20 MiB, that's 41 cylinders because 20*1024*1024/516096 = 40.63492...
Try c-style calculation, its easier:

Code: Select all

dd if=/dev/zero bs=$((16*63*512)) count=<number_of_cylinders> of=<target_name>
remax wrote: Thu Jun 23, 2022 8:32 pm
Akuma wrote: Thu Jun 23, 2022 6:34 pm Did you try "digger" by any chance?
Digger works as far as i can see
Nice, I'm holding off for a bit due to time constraints :D
User avatar
wark91
Core Developer
Posts: 334
Joined: Sun May 24, 2020 8:34 pm
Has thanked: 447 times
Been thanked: 94 times

Re: MiSTer PCXT

Unread post by wark91 »

After some tests, I found one game Commander Keen 4 (CGA version) raised a divider issue at the start of the game.
20220624_084649-screen.png
20220624_084649-screen.png (70.58 KiB) Viewed 1906 times
I tried the same HDD on PCEM and it can goes in game:
Screenshot from 2022-06-24 08-57-50.png
Screenshot from 2022-06-24 08-57-50.png (42.19 KiB) Viewed 1906 times
Thanks.
Akuma
Posts: 138
Joined: Sat Dec 11, 2021 9:50 pm
Has thanked: 24 times
Been thanked: 45 times

Re: MiSTer PCXT

Unread post by Akuma »

wark91 wrote: Fri Jun 24, 2022 7:46 am After some tests, I found one game Commander Keen 4 (CGA version) raised a divider issue at the start of the game.
Which version do you use (sha256sums) ?

v1.0

Code: Select all

66dcf6070a4bc5c8933815b15dab7145ddcccb959f8f43af2a0449b085a04366  AUDIO.CK4
5734c4eee44eab5b0a296297b27ae6f541ce33382bda5dcfd8b674bb33f23a96  CGAGRAPH.CK4
01186f8cb99257b69a4f475186deb9ba79b872ed52378131c79c21f6344753ea  GAMEMAPS.CK4
cfd35e100d4da507d773860642e8fcd02638aeea03d78ba4aa0a51589ba99116  KEEN4C.EXE
v1.1

Code: Select all

66dcf6070a4bc5c8933815b15dab7145ddcccb959f8f43af2a0449b085a04366  AUDIO.CK4
5734c4eee44eab5b0a296297b27ae6f541ce33382bda5dcfd8b674bb33f23a96  CGAGRAPH.CK4
01186f8cb99257b69a4f475186deb9ba79b872ed52378131c79c21f6344753ea  GAMEMAPS.CK4
f838ee104b4670a1454956b9de5bd38118551fb5eaa55a8aa11ff6c6e5850eb0  KEEN4C.EXE
User avatar
wark91
Core Developer
Posts: 334
Joined: Sun May 24, 2020 8:34 pm
Has thanked: 447 times
Been thanked: 94 times

Re: MiSTer PCXT

Unread post by wark91 »

@akuma,
I have those

Code: Select all

sha256sum *
66dcf6070a4bc5c8933815b15dab7145ddcccb959f8f43af2a0449b085a04366  AUDIO.CK4
46385dcfe78e0afb1efce228874ca9f6a27362218059abc87b5522ee5d4d1f53  CATALOG.EXE
5734c4eee44eab5b0a296297b27ae6f541ce33382bda5dcfd8b674bb33f23a96  CGAGRAPH.CK4
99e449c4d29160f0e6c464a55ce150c05661132c59f171fb49fb5c15761e6a27  CONFIG.CK4
01186f8cb99257b69a4f475186deb9ba79b872ed52378131c79c21f6344753ea  GAMEMAPS.CK4
f838ee104b4670a1454956b9de5bd38118551fb5eaa55a8aa11ff6c6e5850eb0  KEEN4C.EXE
0f5236fbb2990c20ec686a8e0444e2552f183b2cd35c4a0c9408eab6b14e0b47  ORDER.FRM
7d81cfb816451e366809c34f604b35c69c08f0148222899108b86c7b867906dd  README.DOC
so it is version 1.1.

Thanks !
User avatar
NML32
Posts: 288
Joined: Sun May 24, 2020 6:57 pm
Has thanked: 272 times
Been thanked: 43 times

Re: MiSTer PCXT

Unread post by NML32 »

What version of DOS is recommended? Currently I'm using MS DOS 3.3 but I'm thinking maybe MS DOS 5.0 would be better.
Any suggestions for this PCXT core?
dmckean
Posts: 307
Joined: Sat Jan 16, 2021 7:03 am
Has thanked: 387 times
Been thanked: 95 times

Re: MiSTer PCXT

Unread post by dmckean »

NML32 wrote: Fri Jun 24, 2022 1:30 pm What version of DOS is recommended? Currently I'm using MS DOS 3.3 but I'm thinking maybe MS DOS 5.0 would be better.
Any suggestions for this PCXT core?
MS DOS 3.3 is small, lightweight and fast on an XT. The later versions use up more conventional memory.
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: MiSTer PCXT

Unread post by Malor »

breiztiger wrote: Thu Jun 23, 2022 7:12 pm
As for the HD controller, I would settle for having a proper implementation of an 8-bit IDE interface on the 300h I/O port, so that I can use it with the XTIDE Universal BIOS in its default configuration.
Pc xt has st506 not ide for thé real world :D
While true, ST506 was horrible, and you could only tell the difference if you were running really low-level stuff, like calling into the BIOS on the controller to lay down a low-level format.

Simulating all that nonsense would be a huge pain for almost no benefit. IDE is tremendously better and will run about 99.9% of software in exactly the same way. It's not "authentic", but doing crap like low-level formats when your backing store is a disk file on a modern filesystem is just silly.

I mean, with ST506, you had to read the bad sectors off a sticker on the top of the drive (all drives had bad sectors), and enter those into the low level format BIOS routine in your hard drive controller. What possible purpose would replicating that behavior serve?
held
Posts: 209
Joined: Sun Sep 26, 2021 2:18 pm
Has thanked: 27 times
Been thanked: 31 times

Re: MiSTer PCXT

Unread post by held »

According to wiki: https://en.wikipedia.org/wiki/IBM_Personal_Computer_XT
  • Also known as IBM XT, PC/XT, XT
  • Type Personal computer
  • Release date March 8, 1983; 39 years ago
  • Discontinued April 1987
  • Operating system IBM BASIC / PC DOS 2.0-3.20 / PC/IX / SCO Xenix / Minix
  • CPU Intel 8088 @ 4.77 MHz
  • Memory 128–640 KB RAM
  • Storage 10–20 MB hard drive
  • Graphics MDA, CGA
According to wiki: https://en.wikipedia.org/wiki/MS-DOS
  • Version 3.3 (OEM) – First version to support 3.5-inch, 1.44 MB floppy drives and diskettes, extended and logical partitions, directory tree copying with XCOPY, improved support for internationalization (COUNTRY.SYS),[58] networked file flush operations[59]
  • Version 3.3a (OEM)
  • Version 3.30; Release date: February, 1988[60]
  • Version 3.30A (OEM, DTK); Release date: July, 1987[61]
  • Version 3.30T (OEM, Tandy); Release date: July, 1990[62]
  • Version 3.31 (Compaq OEM only)[nb 1] – supports FAT16B with partitions larger than 32 MiB;[nb 2] Release date: November, 1989[63]
Was this core supposed to be Tandy compatible?
User avatar
spark2k06
Core Developer
Posts: 865
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 961 times

Re: MiSTer PCXT

Unread post by spark2k06 »

dmckean wrote: Fri Jun 24, 2022 1:41 pm
NML32 wrote: Fri Jun 24, 2022 1:30 pm What version of DOS is recommended? Currently I'm using MS DOS 3.3 but I'm thinking maybe MS DOS 5.0 would be better.
Any suggestions for this PCXT core?
MS DOS 3.3 is small, lightweight and fast on an XT. The later versions use up more conventional memory.
I have identified that the problem of not being able to use the high memory (UMB) is due to some incompatibility with the DOSMAX application, when this is identified and solved, we will be able to have 630Kb of conventional memory available in MSDos 6.22.
User avatar
spark2k06
Core Developer
Posts: 865
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 961 times

Re: MiSTer PCXT

Unread post by spark2k06 »

Malor wrote: Fri Jun 24, 2022 1:42 pm
breiztiger wrote: Thu Jun 23, 2022 7:12 pm
As for the HD controller, I would settle for having a proper implementation of an 8-bit IDE interface on the 300h I/O port, so that I can use it with the XTIDE Universal BIOS in its default configuration.
Pc xt has st506 not ide for thé real world :D
While true, ST506 was horrible, and you could only tell the difference if you were running really low-level stuff, like calling into the BIOS on the controller to lay down a low-level format.

Simulating all that nonsense would be a huge pain for almost no benefit. IDE is tremendously better and will run about 99.9% of software in exactly the same way. It's not "authentic", but doing crap like low-level formats when your backing store is a disk file on a modern filesystem is just silly.

I mean, with ST506, you had to read the bad sectors off a sticker on the top of the drive (all drives had bad sectors), and enter those into the low level format BIOS routine in your hard drive controller. What possible purpose would replicating that behavior serve?
To a real PCXT you can also add an ISA card with a real IDE controller, the ST506 is just another ISA card with another type of HD. So let's look at it like this, it's as if we had replaced one card for another in a PCXT.
jca
Top Contributor
Posts: 1911
Joined: Wed May 27, 2020 1:59 pm
Has thanked: 145 times
Been thanked: 454 times

Re: MiSTer PCXT

Unread post by jca »

spark2k06 wrote: Fri Jun 24, 2022 2:03 pm To a real PCXT you can also add an ISA card with a real IDE controller, the ST506 is just another ISA card with another type of HD. So let's look at it like this, it's as if we had replaced one card for another in a PCXT.
Not only that but the HDD BIOS was on the controller, the motherboard BIOS did not support HDD.
dmckean
Posts: 307
Joined: Sat Jan 16, 2021 7:03 am
Has thanked: 387 times
Been thanked: 95 times

Re: MiSTer PCXT

Unread post by dmckean »

spark2k06 wrote: Fri Jun 24, 2022 2:03 pm
Malor wrote: Fri Jun 24, 2022 1:42 pm
breiztiger wrote: Thu Jun 23, 2022 7:12 pm

Pc xt has st506 not ide for thé real world :D
While true, ST506 was horrible, and you could only tell the difference if you were running really low-level stuff, like calling into the BIOS on the controller to lay down a low-level format.

Simulating all that nonsense would be a huge pain for almost no benefit. IDE is tremendously better and will run about 99.9% of software in exactly the same way. It's not "authentic", but doing crap like low-level formats when your backing store is a disk file on a modern filesystem is just silly.

I mean, with ST506, you had to read the bad sectors off a sticker on the top of the drive (all drives had bad sectors), and enter those into the low level format BIOS routine in your hard drive controller. What possible purpose would replicating that behavior serve?
To a real PCXT you can also add an ISA card with a real IDE controller, the ST506 is just another ISA card with another type of HD. So let's look at it like this, it's as if we had replaced one card for another in a PCXT.
I actually ran with this configuration back in the day as buying an IDE drive and 8-bit IDE controller was MUCH cheaper than buying a large MFM hard disk.
jca
Top Contributor
Posts: 1911
Joined: Wed May 27, 2020 1:59 pm
Has thanked: 145 times
Been thanked: 454 times

Re: MiSTer PCXT

Unread post by jca »

Very important:
You must install the exe file contained in the attached zip and make sure to run it before loading a different core.
Attachments
park13.zip
(4.62 KiB) Downloaded 96 times
User avatar
spark2k06
Core Developer
Posts: 865
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 961 times

Re: MiSTer PCXT

Unread post by spark2k06 »

@kitune-san, I'm making a revert of the latest changes, up to the changes corresponding to beta 1.0... my experience with GitHub is not very complete so I haven't finished it yet, I will do it.

I'll tell you why. Finally the latest proposed improvements in DMA seem to be affecting the loading of the HD image via serial port, but specifically in the Juko ST BIOS, in Sergey's BIOS it works. However, before this change the image loading works fine on both.

As for the keyboard improvement proposal, I have to do more tests, but although it works fine again in the 8088 BIOS, it doesn't seem to work well in Juko ST, this is my feeling, I have to test it more and today I won't have more time for it.....

I'll let you know what's new or more details about it. Nevertheless, thanks for the huge effort you are doing to improve all these aspects.
User avatar
spark2k06
Core Developer
Posts: 865
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 961 times

Re: MiSTer PCXT

Unread post by spark2k06 »

Nowadays, I prioritise the correct operation of Juko ST or IBM 5160 against Sergey's 8088, the reason is the one I already mentioned...apart from the keyboard issue, the feeling is that it is slower, the screen scrolls are slower, I don't know why. I like this BIOS a lot, but I prefer smooth scrolls, as soon as that can be revised in the BIOS code, I have no doubt to go back to it... as it provides more information per screen and it is Open Source.
jordi
Posts: 225
Joined: Thu Jun 11, 2020 10:11 am
Has thanked: 87 times
Been thanked: 71 times

Re: MiSTer PCXT

Unread post by jordi »

I've created this video-tutorial on how to use this core:
https://www.youtube.com/watch?v=0nRsPjLSqxE

I hope I was clear enough, I'm a bit sick.
breiztiger
Top Contributor
Posts: 427
Joined: Sun May 24, 2020 7:17 pm
Has thanked: 23 times
Been thanked: 93 times

Re: MiSTer PCXT

Unread post by breiztiger »

as i remember i haven't get any ide controler on xt pc

i know that today we have this kind of isa card but in 1980s, i don't think so

and to have a real xt core we must have original setup
CPC-Power Staff
User avatar
spark2k06
Core Developer
Posts: 865
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 961 times

Re: MiSTer PCXT

Unread post by spark2k06 »

breiztiger wrote: Fri Jun 24, 2022 4:03 pm as i remember i haven't get any ide controler on xt pc

i know that today we have this kind of isa card but in 1980s, i don't think so

and to have a real xt core we must have original setup
It is also a question of cost-benefit, IDE will be easier to do, so it will be done for sure, the other alternative will always be there...and if it is done, it would be offered to select one or the other from the OSD.
dmckean
Posts: 307
Joined: Sat Jan 16, 2021 7:03 am
Has thanked: 387 times
Been thanked: 95 times

Re: MiSTer PCXT

Unread post by dmckean »

breiztiger wrote: Fri Jun 24, 2022 4:03 pm as i remember i haven't get any ide controler on xt pc

i know that today we have this kind of isa card but in 1980s, i don't think so

and to have a real xt core we must have original setup
They certainly existed in the 80s. Remember that the PCXT clone era spanned more than a decade. They were still being made and sold as late as 1992. I didn't own my first XT clone until 1989.
User avatar
tontonkaloun
Posts: 354
Joined: Sun May 24, 2020 7:38 pm
Has thanked: 152 times
Been thanked: 51 times

Re: MiSTer PCXT

Unread post by tontonkaloun »

The IDE was release in 1986, but it's true that PC XT hard drives were often MFMs
Bas
Top Contributor
Posts: 518
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 60 times
Been thanked: 225 times

Re: MiSTer PCXT

Unread post by Bas »

There's always SCSI if you want a challenge! On a more serious note, having a SCSI interface figured out could benefit Amiga, AO486 and more computer cores.
dmckean
Posts: 307
Joined: Sat Jan 16, 2021 7:03 am
Has thanked: 387 times
Been thanked: 95 times

Re: MiSTer PCXT

Unread post by dmckean »

Bas wrote: Fri Jun 24, 2022 5:16 pm There's always SCSI if you want a challenge! On a more serious note, having a SCSI interface figured out could benefit Amiga, AO486 and more computer cores.
I think the Sparcstation core has working SCSI.
breiztiger
Top Contributor
Posts: 427
Joined: Sun May 24, 2020 7:17 pm
Has thanked: 23 times
Been thanked: 93 times

Re: MiSTer PCXT

Unread post by breiztiger »

finaly we'll got frankenstein pc not pc xt ;-)
CPC-Power Staff
thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: MiSTer PCXT

Unread post by thorr »

I am in support of SCSI support. It certainly existed back in the day and was often considered the superior option. If this can be taken from the Sparcstation core, that would be great. However, I have my doubts that it would just drop in unless it is equivalent to an Adaptec controller because SCSI required Adaptec drivers from what I recall. I can't remember how you can boot off it before loading the drivers (chicken and the egg). Maybe a floppy would be the boot drive. It seems that IDE support is the simplest overall solution though. I don't know if IDE requires a certain version of DOS, but being able to run DOS 3.1 should be possible to be more authentic with the core IMO. Also, I am fully in support of a proper full low level IDE implementation rather than a hack so it will work with any OS. Of course, I will happily accept whatever we can get. :-)
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: MiSTer PCXT

Unread post by Malor »

breiztiger wrote: Fri Jun 24, 2022 4:03 pm as i remember i haven't get any ide controler on xt pc

i know that today we have this kind of isa card but in 1980s, i don't think so

and to have a real xt core we must have original setup
Doing ST506 will be really hard and really unnecessary. There's ZERO benefit to running MFM or RLL. All it adds is irrelevant hassle. It's backed by a file, it's not real hardware, so adding all that complexity does. no. good.

Look at what the Monotech NuXT is doing... it's a new motherboard that takes an 8088 or NEC V10 chip. The design principle seems to be "the best possible XT". It provides 832K of total RAM, onboard VGA, and onboard 8-bit IDE. They're not interested in trying to simulate ST506. Not having to deal with low level formatting is a feature, not a bug.
thorr wrote: Fri Jun 24, 2022 6:04 pm I am in support of SCSI support. It certainly existed back in the day and was often considered the superior option. If this can be taken from the Sparcstation core, that would be great. However, I have my doubts that it would just drop in unless it is equivalent to an Adaptec controller because SCSI required Adaptec drivers from what I recall. I can't remember how you can boot off it before loading the drivers (chicken and the egg). Maybe a floppy would be the boot drive. It seems that IDE support is the simplest overall solution though. I don't know if IDE requires a certain version of DOS, but being able to run DOS 3.1 should be possible to be more authentic with the core IMO. Also, I am fully in support of a proper full low level IDE implementation rather than a hack so it will work with any OS. Of course, I will happily accept whatever we can get. :-)
There might be enough room on the FPGA, but you've got a problem with XTs that pretty much all their interrupts are taken. Implementing SCSI on an XT will probably require that other period hardware be disabled to free up an IRQ.

In real life, I think you almost never saw SCSI on an XT. It wasn't really possible until the AT, which had a few 16-bit interrupts that were free. Even then it could be a huge hassle if you wanted a sound card, networking, and SCSI all at the same time.

edit: also, building a convincing SCSI chip on an FPGA would probably be a freaking science project. That could take a year or more, all by itself.
MicroCoreLabs
Core Developer
Posts: 96
Joined: Sun Jun 05, 2022 6:12 pm
Location: California
Has thanked: 6 times
Been thanked: 86 times
Contact:

Re: MiSTer PCXT

Unread post by MicroCoreLabs »

edit: also, building a convincing SCSI chip on an FPGA would probably be a freaking science project. That could take a year or more, all by itself.
Perhaps if a NIOS soft-processor was integrated into the FPGA a disk controller could be handled in software written in C...
dmckean
Posts: 307
Joined: Sat Jan 16, 2021 7:03 am
Has thanked: 387 times
Been thanked: 95 times

Re: MiSTer PCXT

Unread post by dmckean »

Malor wrote: Fri Jun 24, 2022 6:36 pm
Doing ST506 will be really hard and really unnecessary. There's ZERO benefit to running MFM or RLL. All it adds is irrelevant hassle. It's backed by a file, it's not real hardware, so adding all that complexity does. no. good.

Look at what the Monotech NuXT is doing... it's a new motherboard that takes an 8088 or NEC V10 chip. The design principle seems to be "the best possible XT". It provides 832K of total RAM, onboard VGA, and onboard 8-bit IDE. They're not interested in trying to simulate ST506. Not having to deal with low level formatting is a feature, not a bug.
I agree with all of this but adapting our existing 16-bit IDE module to 8-bit will probably require a bit of work too. We should probably just go with whatever is the easiest to implement. I'm not sure who else we can reach out to for help with this.
breiztiger
Top Contributor
Posts: 427
Joined: Sun May 24, 2020 7:17 pm
Has thanked: 23 times
Been thanked: 93 times

Re: MiSTer PCXT

Unread post by breiztiger »

i think basic floppy first ;-)
CPC-Power Staff
Bas
Top Contributor
Posts: 518
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 60 times
Been thanked: 225 times

Re: MiSTer PCXT

Unread post by Bas »

SCSI was a bit of a jest. It's not really XT although the machine has ISA and was legitimately expandable with SCSI. I would also not bother with a full blown ST506. Just a facsimile that serves out sectors which come from the backing file should suffice. Mocking the actual controller just enough to fool the original, unmodified BIOS would be the farthest this would need to go I'd say.
thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: MiSTer PCXT

Unread post by thorr »

The NIOS soft processor sounds interesting. I am not sure if that would allow PCEM code to convert to FPGA with some massaging, but if so, that would be awesome, assuming the end result is cycle accurate reproduction of hardware in FPGA.
Post Reply