static void procmapsmsg( char **msgbufp, int mode )
{
if( isv37 )
{
char *mailbuf = *msgbufp;
BPTR f = Open( "T:MD_MAPS.LST", MODE_NEWFILE );
if( f )
{
int rc;
Write( f, mailbuf, strlen( mailbuf ) );
Close( f );
execrexx( mode ? "MapsDel" : "MapsAdd" );
if( ( rc = getfilelen( "T:MD_MAPS.LST" ) ) > 0 )
{
myFreeVec( mailbuf );
mailbuf = myAllocVec( rc + 1, 0 );
mailbuf[árc ]á= 0;
f = Open( "T:MD_MAPS.LST", MODE_OLDFILE );
Read( f, mailbuf, rc );
Close( f );
*msgbufp = mailbuf;
}
DeleteFile( "T:MD_MAPS.LST" );
}
}
}
static void domapsadd(int mode)
{
FILE *f;
struct mvnode *n;
struct List mvlist;
void *scs;
char buff[256];
struct IntuiMessage *mp,im;
int done=0,mailsize=0;
int markcount;
void *mvpool;
int rc;
rtSetWaitPointer(w);
f = fopen( "microdot.mapsblist", "r" );
if( !f )
{
if( askreq( "Keine Brettliste vorhanden!\nBestellen Sie zuerst per MAPS eine Brettliste und\nwarten Sie, bis diese eingelesen wurde.", "Brettliste bestellen|Abbruch" ) )
{
sendmapsreq( 1 );
}
ClearPointer( w );
return;
}
mvpool=LibCreatePool(MEMF_CLEAR,4096,2048);
NewList(&mvlist);
w->Flags |= WFLG_RMBTRAP;
while((fgets(buff,256,f)))
{
clnl( buff );
addmvnode( mvpool, &mvlist, buff );
}
fclose(f);
scs=pushscs();
setupscroller(&mvlist,3);
displayscroller();
preport(0,1,"Bretter per MAPS %sbestellen: Markieren Sie die gewⁿnschten Bretter",(mode)?"ab":"");
preport(0,1,(markcount)?"BRETTAUSWAHL: Insgesamt %lD Brett%s, %lD markiert":"BRETTAUSWAHL: Insgesamt %lD Brett%s",brettcount,(brettcount==1)?"":"er",markcount);
ml = askreq( "M÷chten Sie ihre MicroDot 1.0/1.6-Installation\nin das neue Datenbankformat umwandeln lassen?\n\nACHTUNG!\nDie Wandlung kann nicht mehr rⁿckgΣngig gemacht werden!",
"Umwandeln|Abbruch" );
if( ml )
{
convertmd1();
goto retry;
}
exit( 0 );
}
/* Brettliste kaputt? */
if( prefs.flags2 & MDF2_PREFSLOADED )
{
if( ( ml = getfilelen( "microdot.boardix.bak" ) ) > ( int ) sizeof( struct brett ) )
{
ml = askreq( "Die Brettliste \"microdot.boardix\" ist defekt.\nEs existiert aber eine wahrscheinlich\nintakte Sicherheitskopie der Liste mit %lD EintrΣgen.\nSoll die Sicherheitskopie installiert werden?",