Sujet : Re: OT: horrible 8086 segmentation
De : tnp (at) *nospam* invalid.invalid (The Natural Philosopher)
Groupes : comp.sys.raspberry-piDate : 27. Nov 2024, 12:40:07
Autres entêtes
Organisation : A little, after lunch
Message-ID : <vi70eo$3vogk$8@dont-email.me>
References : 1 2
User-Agent : Mozilla Thunderbird
On 26/11/2024 17:37, Josef Möllers wrote:
On 25.11.24 18:33, mm0fmf wrote:
[...]
e.g.
"
// start of barrel
EventRec far* searchp = (EventRec far*) work.bufs;
>
"
>
>
My eyes! My eyes! That was COMPACT model code, so 64k of code and 1MB of data, code addresses were 16bit offsets to the CS reg and data was far so 32 bits of segment and offset of DS or ES. And of course you had to be extra careful of any pointer arithmetic as a far pointer wrapped after 64k. You had to use slower HUGE pointers to get automatic normalisation. God it was shit.
>
And to consider that, at that time, processors like MC68000 or NS32016 were readily available.
Backwards compatibility.
DOS came from 8080 based CP/M , to run on an 8086, to where 8 bit code could be easily ported.
And so we were stick with that architecture.
A prime example off 'mass marketing always wins over excellence'
and
'nothing succeeds like success'
-- Labour - a bunch of rich people convincing poor people to vote for rich people by telling poor people that "other" rich people are the reason they are poor.Peter Thompson