
/*****************************************************************************/

/* File K480Z.C - RML 480Z Kermit - Machine-dependent data & routines
		Chris Kennington	5th July 1985.		*/


#include  "stdio.h"
#include  "b:kext.h"


/* Data which is either machine-dependent or contains text which would
	not be appropriate for the Nimbus version.
   All escape-sequences and general control strings are built into and
	output by assembler-coded routines found in CS4COM.ZSM.		*/


char head1[]	= "  RML 480Z  Kermit  File  Transfer  Program,";

char backto[]	= " OK - back to CP/M; ";
char eprompt[]	= "\r\04KmF4> ";
char prompt[]   = "\r\04Km480Z";	/* \04 to unlock screen		*/



curset(lin,col)		/* set cursor position		*/
char	lin, col;
{
    static  char  msg[] = {0x16, 32, 32, 0};

    msg[1] = lin+32;
    msg[2] = col+32;
    txtout(msg);
    return;
}		/* End of curset()			*/



fpanel()		/* call front panel		*/
{
    jump(0x0013);		/* magic address (ROS)	*/
    outc(NL);
    return;
}			/* End of fpanel()		*/



unsigned  getram(bytes)		/* get reused memory		*/
/* Allocates the memory used by driver code etc. for overwriting */
int	bytes;
{
    extern	unsigned	drivers();
    static	unsigned	base, top;
    static	char	flag = 0;
    unsigned	*six;
    int		ret;
    char	c;

    if (flag == 0) {
	base = &drivers;
	six = 0x0006;		/* CP/M => bottom of BDOS	*/
	top = *six - 256;
	++flag;
    }
    ret = base;
    base += bytes;
    if (base < top)
	return(ret);		/* OK			*/
    printmsg("Not enough store.");
    kermkill(1);
}			/* End of getram()			*/


/*******************  END of K480Z.C ****************************/


