Deutsch   English   Français   Italiano  
<vaa21m$tla1$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: mm0fmf <none@invalid.com>
Newsgroups: comp.sys.raspberry-pi
Subject: Re: RP2350 and Pico 2 - things missing
Date: Fri, 23 Aug 2024 14:15:33 +0100
Organization: A noiseless patient Spider
Lines: 42
Message-ID: <vaa21m$tla1$1@dont-email.me>
References: <v9lbfn$10qjj$2@dont-email.me> <v9pj3v$1qse0$7@dont-email.me>
 <lin8sjFbh5vU1@mid.individual.net> <va6s6f$c7dr$1@dont-email.me>
 <50ae75b3cdb83be61d995844169642d211670e3e.camel@munted.eu>
 <20240822115703.a377f409dd25c1b1f76f6c61@eircom.net>
 <va9k44$s0gf$2@dont-email.me>
 <20240823111241.fa25c2e204942a50ef8ccac5@eircom.net>
 <va9vs6$tm8l$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 23 Aug 2024 15:15:34 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="b29b52dd74c872cda3ff143c88fe4972";
	logging-data="972097"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1+ThhzYqAqUv0t9g4C+MCPX"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:kp/TQL8N1YX+LmetrEV+Ba9+UAA=
Content-Language: en-GB
In-Reply-To: <va9vs6$tm8l$1@dont-email.me>
Bytes: 2635

On 23/08/2024 13:38, The Natural Philosopher wrote:
> Not in any compiler I used.

It was in 16bit MS C Compiler, Watcom C, Borland C, Zorland/Zortech 
C/C++. In fact the availability of memory models exceeding small and 
large was a desirability of 8086 compilers. Such large code small data, 
small code, large data and huge (large code and large data). In fact the 
legacy of NEAR and FAR keywords lived on for a long time.

Certainly MS Visual Studio 2019 includes header files for code designed 
for Windows (windef.h) with the following legacy definitions still:

#ifndef pascal
#define pascal      __ONLY_IN_WINELIB(__stdcall)
#endif
#ifndef _pascal
#define _pascal     __ONLY_IN_WINELIB(__stdcall)
#endif
#ifndef __export
#define __export    __ONLY_IN_WINELIB(__stdcall)
#endif
#ifndef near
#define near        __ONLY_IN_WINELIB(/* nothing */)
#endif
#ifndef far
#define far         __ONLY_IN_WINELIB(/* nothing */)
#endif
#ifndef _near
#define _near       __ONLY_IN_WINELIB(/* nothing */)
#endif
#ifndef _far
#define _far        __ONLY_IN_WINELIB(/* nothing */)
#endif
#ifndef NEAR
#define NEAR        __ONLY_IN_WINELIB(/* nothing */)
#endif
#ifndef FAR
#define FAR         __ONLY_IN_WINELIB(/* nothing */)
#endif

Segment registers still exist on x86-64 CPUS.