Noticed that an 8086 branch was merged to fpc trunk. Is it time to get out some 5.25" diskettes[1]?
[1] Shame I dumped all the accompanying hardware long ago ;) Perhaps break out DOSBOX ;)

Mailing lists / fpc-pascal / 2013-04
15 messages · 11 people · –
Reply by email Subscribe to this list Your subscription
Read-only archive. Use j and k to move between messages.
Noticed that an 8086 branch was merged to fpc trunk. Is it time to get out some 5.25" diskettes[1]?
[1] Shame I dumped all the accompanying hardware long ago ;) Perhaps break out DOSBOX ;)
I still have a portable (ahum, > 5 kg) IBM XT with 5.25" floppy disk. HD is appr. 10 MB (decaying...)
Problem of course wil be to get the compiler on the floppy disks, and then hope my HD is large enough.
(It cost about 10,000 Dfl (appr 4,500 € / $ 5000) at the time of purgase.)
Bart
The compiler itself doesn't run on the Dos real mode target, and probably never will due to memory limitations.
Jonas
I still have a portable (ahum, > 5 kg) IBM XT with 5.25" floppy disk. HD is appr. 10 MB…
Bart wroteI still have a portable (ahum, > 5 kg) IBM XT with 5.25" floppy disk. HD is appr. 10 MB (decaying...)
Yay
Zaher Dirkey
I still have a portable (ahum, > 5 kg) IBM XT with 5.25" floppy disk. HD is appr. 10 MB…
I've definitely got at least one system around older than a '386, but if it really is supposed to be an 8086 target it would have to be tested on an 8086/8088 because of extra opcodes that were added to the 186/286. I think I've got a system with 8086 or possibly V20, but it's non-PC and I don't know where its copy of DOS is (it usually ran CCP/M).
I don't know how reliable a test something like Dosbox or Bochs would be, some of them vitualise the underlying hardware while others are sloppy about what opcodes they actually implement.
So in practical terms, a strict 8086 port is probably untestable. But why would anybody want to when even embedded processors are based on a newer architecture?
Actually, I have a vintage IBM PC 5150, with a 4.77 MHz 8088 processor, so this isn't true, it's very testable actually :) However, the i8086 code generator still generates some 186/286+ instructions, so it doesn't work there yet, but I'm planning to fix this shortly. Here's a video of a few very simple Free Pascal compiled programs on a true 80186:
https://www.youtube.com/watch?v=wscin9RUiTU
(sorry for the shaky camera)
And here are the same programs, running on Charlie's (Karoly Balogh) Amiga 2000 with a A2286AT expansion card for PC emulation, which contains a real 286 CPU:
http://charlie.amigaspirit.hu/screenshots/a2000/A2000-FPC-8086-01.png
and up to -07.png
Here's the 286 card: http://amiga.resource.cx/exp/a2286at
Nikolay
OK, answering my own question then. A pure-8086 port could be valuable if it generated reliable code for something like vtprolog.pas, since this implements its own garbage collection relying on detailed knowledge of how Turbo Pascal manages its heap.
In our previous episode, Mark Morgan Lloyd said:
Heap management is mostly a RTL feature. For high TP compatibility, things like calling conventions must also match.
IOW 8086 codegeneration is not automatically full TP compatibility on the binary level.
Yes, but in the specific case I gave the program extends the heap management. In practical terms it could be replaced with a mark/release arrangement, since when the program is trying to find a solution based on predefined rules it won't be extending them.
But as it stands it's a good test of TP-compatibility.
IOW 8086 codegeneration is not automatically full TP compatibility on the binary level.
I still have a portable (ahum, > 5 kg) IBM XT with 5.25" floppy disk. HD is appr. 10 MB…
I think I still can dig out some 8" single sided single density diskettes with 160 K or something.
-Michael
Actually, for me, the most convenient way to transfer data to and from a vintage PC is via an RS232 null modem cable. You can connect it to your modern PC directly - even if you don't have an RS232 port, there are cheap USB to RS232 converters available, if necessary, while there's no normal way to attach a 5.25 inch floppy to a modern PC.
Nikolay
On Mon, Apr 29, 2013 at 7:37 PM, Nikolay Nikolov <
Hi ,
Hmm... as far as know there should be no problem to use a 5.25 floppy with a modern PC ? ... as long as the motherboard has the floppy connector and you have a cable like this
http://www.simulationexams.com/tutorials/aplus/core/images/fdd-cable.jpg ?
Most (all?) current boards no longer have a floppy connector. My most recent motherboard, a mini-atx, doesn't even have an IDE connector.
I still have my Z-80A system with two Tandon half-height 8" single sided drives. I haven't attempted to power it up in 25 years. I also have my original CP/M 80 disc and my original TurboPascal version 1.0 for Z-80 on an eight inch disc with the manual. I doubt any of the discs are readable.
Single sided, single density eight inch discs hold 243 KILO-bytes. If I remember correctly, a standard disc had 77 tracks with 26 sectors of 128 bytes per sector per track. The original 5.25" single sided disc had a capacity of 160K. I don't remember the layout.
Rolf
recent motherboard, a mini-atx, doesn't even have an IDE connector.
And of course there don't exist any USB floppy controllers... http://www.kryoflux.com/ :)
Regards,
Sven
Most (all?) current boards no longer have a floppy connector. My most recent motherboard,…
Recently, I tried reading my 20+ years old 5.25 inch 360kb floppies and almost all of them were perfectly readable, with no bad sectors and no need for retries. Even more surprising is the fact that they were labelled as SS/SD (single side/single density), but formatted at 360kb, which is a DS/DD (double side/double density) format.
Nikolay