🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: net.micro.atari16
Article #1536

Re: i'm learning, but slowly

#1536
From: Gert Poletiek
Date: Fri, 15 Aug 1986 09:12
75 lines
2803 bytes
In article <469@imagen.UUCP> turner@imagen.UUCP writes:
>~~~~~~~~~~~~~~~~~~~\ lineater, \~~~~~~~~~~~~~~~~~~~~~
>
>i'm porting uE3.7 to the ST and have run into a few problems,
>perhaps some kind soul could help me. I am using Megamax C to do it.
>
>1) when i call a sub-command using Pexec(0,STcmd,STargs,STenv)
>[assume they are all char *] the first character of STargs gets
>dropped or more likely the ptr is getting incremented by 1, putting
>a leading blank in STargs works but seems silly
>
	Pexex does not work exactly like the unix execve, it has to be called
	like this:

	/* if MEGAMAX, DRI etc */
	int success;
	/* if LATTICE .. */
	short succes;

	succes = Pexec(0,STcmd,STargs,STenv)


	Pexec ( mode, name, tail, envp )
	int mode;
	char	*name;
	PasChar *tail;
	char	*envp;


	Now your problem pops up :
	the tail parameter is not a standard C string ( 0 terminated ) but
	is a standard PASCAL string, the first byte is the character count,
	and the string needs not be nul terminated.

	try this before you pass the string to Pexec:

	j = strlen ( tail );
	for ( i=0; i<j; i++ )
		tail[i+1]=tail[i];
	tail[0] = strlen ( &tail[1] );


>
>2) when the program is called from another (i.e. the megamax shell)
>the cursor does not appear, if it is called from the desktop all works
>fine, i have tried calling Cursconf and naming the file .prg, .tos
>or .ttp but to not avail
>


	A program like emacs should have the .tos or .ttp extension.
	If everything works fine from the desktop you should not worry,
	MEGAMAX should.

>3) if Initmous(0,0,0) is used to disable the mouse (is that
>correct?) i know that you use kbdvbase to get the address of the
>system interrupt routine, but what about the param struct ? just
>malloc some memory before exiting the program and pray ?
>


	The easiest way to get rid of the mouse pointer is calling the
	AES routine "graf_mous". ( But be sure to turn it back on
	when emacs quits, because there is a counter involved, that keeps
	track of the number of mouse hides in the system.



Hope this solves the problems..

Gert Poletiek
Dutch National Institute for High Energy Physics
Amsterdam
The Netherlands
Technical Details
Message-ID: <196@nikhefh.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!mcvax!nikhefh!gert
References: <469@imagen.UUCP>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!mcvax!nikhefh!gert
From: gert@nikhefh.uucp (Gert Poletiek)
Newsgroups: net.micro.atari16
Subject: Re: i'm learning, but slowly
Message-ID: <196@nikhefh.UUCP>
Date: Fri, 15-Aug-86 05:12:29 EDT
Article-I.D.: nikhefh.196
Posted: Fri Aug 15 05:12:29 1986
Date-Received: Sun, 17-Aug-86 06:13:52 EDT
References: <469@imagen.UUCP>
Reply-To: gert@nikhefh.UUCP (Gert Poletiek)
Distribution: net
Organization: NIKHEF-H  Amsterdam (the Netherlands)
Lines: 74
Apparently-To: rnews@mcvax