home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Club Amiga de Montreal - CAM
/
CAM_CD_1.iso
/
files
/
215.lha
/
AmyLoad
/
newscale.c
< prev
next >
Wrap
C/C++ Source or Header
|
1996-02-14
|
1KB
|
52 lines
#include <exec/types.h>
#include <exec/lists.h>
#include <devices/load.h>
#include "execdef.h"
#include "loadrecord.h"
#include "windowinfo.h"
#include "NewScale.proto"
extern loadrequest *loadRequest;
extern long maxTicks;
extern long maxChip;
extern long maxFast;
extern long maxMem;
Bool
NewScale(window_info, record, data_value)
WindowInfo *window_info;
LoadRecord *record;
LoadDataValue data_value;
{
short new_scale;
long max_value;
switch(record->type)
{
case CPU:
case BLITTER:
max_value = maxTicks;
break;
case CHIPMEM:
max_value = maxChip;
break;
case FASTMEM:
max_value = maxFast;
break;
case ALLMEM:
max_value = maxMem;
break;
}
new_scale = data_value / max_value + 1;
if (new_scale != record->scale)
{
record->scale = new_scale;
record->scaled_ticks = new_scale * max_value;
record->deltay = window_info->height / new_scale;
record->moduloy = window_info->height % new_scale;
return TRUE;
}
return FALSE;
}