Reply 280 of 352, by jal
- Rank
- Oldbie
Heh, really cool.
Heh, really cool.
Interesting project.
May I ask why did you decide to do it in Rust?
Thanks.
DrH wrote on 2024-10-02, 01:48:Interesting project.
May I ask why did you decide to do it in Rust?Thanks.
No particular reason, I had been curious about the things I had been reading about Rust, and wanted to learn a new language. My original plans for the emulator were very modest, so I didn't think it would be too much of an issue learning emulation and Rust at the same time.
Turns out I really like Rust as a language, so that's good.
MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc
Thanks for the answer, @GloriousCow.
I'm considering the same thing. I never did an emulator before and at first I was thinking about doing it in C, but I'm reading a lot of good things regarding Rust.
Maybe, I'll give it a shot.
Thank again!
I didn't set out to make a disk image converter, but it sort of worked out that it was convenient to let you do so.
I define a set of image capability flags, determine what flags the loaded image requires, and use that to enumerate a list of compatible, write-supported output formats, which are then presented via the ui as "Save As" targets.
Here the option to save back to the source image is grayed-out because I haven't implemented writing to MFM format - but you can save the image as 86F or PRI if you like.
There's now a file browser too, so you can load from and save to directories outside of MartyPC's media directory.
I am going to limit the number of writable formats to be sure that the ones I do support can have their bugs ironed out. For bitstream images, that means 86F and PRI, for sector images that's going to be PSI, and if no deviation from a standard format is detected, IMG (for either bitstream or sector)
MartyPC will convert raw sector images of standard format to bitstream images internally, so that means if you build a disk image from a directory or zip file, you can save it as 86F or PRI, too.
MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc
I specifically installed Windows 10 to run MartyPC. But I still can't run it, it shows this error. Can you tell me what to do?
SoftCat wrote on 2024-10-05, 23:24:I specifically installed Windows 10 to run MartyPC. But I still can't run it, it shows this error. Can you tell me what to do?
It looks like it was unable to detect your video card. What do you have?
MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc
GloriousCow wrote on 2024-10-06, 22:17:SoftCat wrote on 2024-10-05, 23:24:I specifically installed Windows 10 to run MartyPC. But I still can't run it, it shows this error. Can you tell me what to do?
It looks like it was unable to detect your video card. What do you have?
I have two video cards on my laptop:
1) Intel Sandy Bridge GT2 (HD 3000) Integrated Graphics Controller;
2) NVIDIA GF119M (GeForce 610M).
I was able to run MartyPC 0.2.1, but I couldn't make EGA. Could you explain in detail what needs to be done for EGA?
SoftCat wrote on 2024-10-07, 21:36:I have two video cards on my laptop:
1) Intel Sandy Bridge GT2 (HD 3000) Integrated Graphics Controller;
2) NVIDIA GF119M (GeForce 610M).
Maybe MartyPC gets confused about there being two video cards?
JAL
SoftCat wrote on 2024-10-08, 00:04:I was able to run MartyPC 0.2.1, but I couldn't make EGA. Could you explain in detail what needs to be done for EGA?
If 0.2.1 works but 0.2.2 doesn't, you need to follow the instructions in the release notes for 0.2.2 regarding older video cards.
The fastest way to use EGA is to add --machine-config-overlays=ibm_ega to your command line
MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc
jal wrote on 2024-10-08, 07:27:Maybe MartyPC gets confused about there being two video cards?
JAL
The main problem is they're both 13 years old. wgpu dropped support for dx11
MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc
Right, didn't think of that 😁.
JAL
GloriousCow wrote on 2024-10-08, 16:14:SoftCat wrote on 2024-10-08, 00:04:I was able to run MartyPC 0.2.1, but I couldn't make EGA. Could you explain in detail what needs to be done for EGA?
If 0.2.1 works but 0.2.2 doesn't, you need to follow the instructions in the release notes for 0.2.2 regarding older video cards.
The fastest way to use EGA is to add --machine-config-overlays=ibm_ega to your command line
Thank you very much for your answer!
how about native flux image support?
sure why not
MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc
I want to set the EGA mode to 768x200. The full raster will be 1032x262, pixel clock 16.257 MHz. But I get something wrong. Is it my mistake or the emulator?
SoftCat wrote on 2024-10-11, 22:44:I want to set the EGA mode to 768x200. The full raster will be 1032x262, pixel clock 16.257 MHz. But I get something wrong. Is it my mistake or the emulator?
would that have worked on an IBM 5154 monitor?
MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc
GloriousCow wrote on 2024-10-11, 23:17:SoftCat wrote on 2024-10-11, 22:44:I want to set the EGA mode to 768x200. The full raster will be 1032x262, pixel clock 16.257 MHz. But I get something wrong. Is it my mistake or the emulator?
would that have worked on an IBM 5154 monitor?
I don't have any old monitors. It definitely works on an LCD monitor via scandubler. I think it would even work on an IBM 5153 monitor. It has 200 lines and a horizontal frequency like CGA.
SoftCat wrote on 2024-10-11, 22:44:I don't have any old monitors. It definitely works on an LCD monitor via scandubler.
what model of EGA card are you using? I am not emulating a multisync monitor.
SoftCat wrote on 2024-10-11, 23:24:I think it would even work on an IBM 5153 monitor. It has 200 lines and a horizontal frequency like CGA.
It would not.
MartyPC: A cycle-accurate IBM PC/XT emulator | https://github.com/dbalsom/martypc
GloriousCow wrote on 2024-10-11, 23:39:what model of EGA card are you using? I am not emulating a multisync monitor. […]
SoftCat wrote on 2024-10-11, 22:44:I don't have any old monitors. It definitely works on an LCD monitor via scandubler.
what model of EGA card are you using? I am not emulating a multisync monitor.
SoftCat wrote on 2024-10-11, 23:24:I think it would even work on an IBM 5153 monitor. It has 200 lines and a horizontal frequency like CGA.
It would not.
EGA card Gemini VC-001. Multisync monitor is not needed here at all. Look:
14318000/114 ~= 16257000/129,
14318000/912 ~= 16257000/1032.
And otherwise everything is like CGA.