🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: net.micro.atari16
Article #1524

Re: i'm learning, but slowly

#1524
From: Chris Metcalf
Date: Thu, 14 Aug 1986 06:46
43 lines
3092 bytes
In article <469@imagen.UUCP> turner@imagen.UUCP writes:
>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.

I've just finished doing a port to the Atari with Megamax.  Not entirely
straightforward.  The problem with Pexec() is an annoying one.  It's not
that the first character of the args is being dropped; rather, the
first character of the arg string is supposed to be the LENGTH of the
rest of the string (0-127).  You can't specify a longer argument list 
than that, and you have to tell Pexec() how long the arg list is.  Remember,
we're dealing with an MS-DOS/CPM lookalike computer here, and the
"commandline" argument is simply copied into the new program's base
page starting at location 0x0080.

I didn't run into your other problem, with losing the cursor.  I don't
know why that should happen; I get a cursor with mine.  Certainly avoid
naming the file "emacs.prg", since you're guaranteed not to get a cursor
that way.  I also don't know why you're using Initmous(); there's no mouse
pointer when I run emacs (is it for character input, or ...?).

One problem I ran into with porting to emacs is that calling Bconin() or
Crawcin() always return ^@ for "extended function" keys like the cursor keys.
I eventually got around this problem by calling appl_init() and appl_exit()
in ttopen() and ttclose(), and using evnt_keybd() to get characters from
the keyboard.  Kind of ugly.  But Bconstat() and Bconout() work fine for
typeahead detection and fast character output.

One possibly undocumented feature of the Atari's lowlevel VT52 emulation
is that it DOES support reverse field.  If you output an ^[p the output
goes into reverse field; use ^[q to return to normal.  Convenient!  To
use it, fix up the vt52rev() function in vt52.c and add "revexist = TRUE"
to vt52open() (as well as defining REVSTA in estruct.h).

The only fix I still want to make to Atari emacs is to add a 50-line
mode for monochrome; once I've got that in place I'll submit some diffs
(probably to Lawrence, the emacs coordinator).  I already hacked up a nice
Amiga version; I love that 80 x 50 line screen, and running Emacs on the
ST over the serial line as a background job on the Amiga isn't bad either...

Yours in MicroEMACS hacking,

Chris Metcalf (metcalf@yale.ARPA)		   ..!decvax!yale!metcalf
	      (metcalf@yalecs.BITNET)		..!ihnp4!hsi!yale!metcalf
Technical Details
Message-ID: <15247@ucbvax.BERKELEY.EDU>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!lll-crg!nike!ucbcad!ucbvax!miro.Berkeley.EDU!metcalf
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!lll-crg!nike!ucbcad!ucbvax!miro.Berkeley.EDU!metcalf
From: metcalf@miro.Berkeley.EDU (Chris Metcalf)
Newsgroups: net.micro.atari16
Subject: Re: i'm learning, but slowly
Message-ID: <15247@ucbvax.BERKELEY.EDU>
Date: Thu, 14-Aug-86 02:46:06 EDT
Article-I.D.: ucbvax.15247
Posted: Thu Aug 14 02:46:06 1986
Date-Received: Thu, 14-Aug-86 20:18:38 EDT
References: <469@imagen.UUCP>
Sender: usenet@ucbvax.BERKELEY.EDU
Reply-To: metcalf@miro.Berkeley.EDU (Chris Metcalf)
Organization: University of California, Berkeley
Lines: 43