Changeset 7258c6a in buchla-68k for ram/initi.c
- Timestamp:
- 07/09/2017 04:45:34 PM (7 years ago)
- Branches:
- master
- Children:
- 8618599
- Parents:
- 0292fbb
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
ram/initi.c
r0292fbb r7258c6a 17 17 #include "instdsp.h" 18 18 19 extern u nsigned setipl(unsignedarg);20 21 extern u nsigned tofpu(unsignedtime);22 extern u nsigned fromfpu(unsignedfputime);23 24 extern short s_inst[], vce2trg[], vce2grp[];25 26 extern short curfunc; /* current function number */27 extern short curinst; /* current instrument number */28 extern short curpnt; /* current point number (absolute) */29 extern short curvce; /* current voice number */30 extern short cxval; /* graphics cursor x value */31 extern short editsw; /* edit mode switch */32 extern short initcfg; /* initialization cfg value */33 extern short npts; /* number of points in function */34 extern short pecase; /* point edit case variable */35 extern short pntsv; /* point selection state variable */36 extern short subj; /* edited point number (relative) */37 extern short temax; /* time upper limit */38 extern short temin; /* time lower limit */39 40 extern char*funcndx[256][2]; /* function header pointers */41 42 extern short idbox[][8]; /* display box parameters */43 extern short instmod[12]; /* intrument data modified */44 45 extern short fnoff[]; /* instrument fn to FPU fn table */19 extern uint16_t setipl(uint16_t arg); 20 21 extern uint16_t tofpu(uint16_t time); 22 extern uint16_t fromfpu(uint16_t fputime); 23 24 extern int16_t s_inst[], vce2trg[], vce2grp[]; 25 26 extern int16_t curfunc; /* current function number */ 27 extern int16_t curinst; /* current instrument number */ 28 extern int16_t curpnt; /* current point number (absolute) */ 29 extern int16_t curvce; /* current voice number */ 30 extern int16_t cxval; /* graphics cursor x value */ 31 extern int16_t editsw; /* edit mode switch */ 32 extern int16_t initcfg; /* initialization cfg value */ 33 extern int16_t npts; /* number of points in function */ 34 extern int16_t pecase; /* point edit case variable */ 35 extern int16_t pntsv; /* point selection state variable */ 36 extern int16_t subj; /* edited point number (relative) */ 37 extern int16_t temax; /* time upper limit */ 38 extern int16_t temin; /* time lower limit */ 39 40 extern int8_t *funcndx[256][2]; /* function header pointers */ 41 42 extern int16_t idbox[][8]; /* display box parameters */ 43 extern int16_t instmod[12]; /* intrument data modified */ 44 45 extern int16_t fnoff[]; /* instrument fn to FPU fn table */ 46 46 47 47 extern struct instpnt *pntptr; /* pointer to edited point */ … … 55 55 56 56 #include "dfltins.h" /* short dfltins[]; default instrument */ 57 #include "ptoftab.h" /* short ptoftab[]; pitch to frequency table */58 59 short finival[NFINST] = { /* initial function values */57 #include "ptoftab.h" /* int16_t ptoftab[]; pitch to frequency table */ 58 59 int16_t finival[NFINST] = { /* initial function values */ 60 60 61 61 FPUVAL(500), /* 0: Freq 1 */ … … 76 76 }; 77 77 78 short expbit[16] = { /* FPU time exponent bit expansion table */78 int16_t expbit[16] = { /* FPU time exponent bit expansion table */ 79 79 80 80 0x0001, /* 0 */ … … 106 106 */ 107 107 108 short segtime(short pn, unsignedptime)108 int16_t segtime(int16_t pn, uint16_t ptime) 109 109 { 110 110 register struct instpnt *pp; 111 register short i;112 register u nsignedtacc;111 register int16_t i; 112 register uint16_t tacc; 113 113 114 114 pp = &vbufs[curvce].idhpnt[vbufs[curvce].idhfnc[curfunc].idfpt1]; … … 129 129 */ 130 130 131 void setseg( short pn, unsignedptime)132 { 133 register short i;134 register u nsignedtacc;131 void setseg(int16_t pn, uint16_t ptime) 132 { 133 register int16_t i; 134 register uint16_t tacc; 135 135 register struct instpnt *pp; 136 136 … … 154 154 */ 155 155 156 short timeto(short fn, short pj)156 int16_t timeto(int16_t fn, int16_t pj) 157 157 { 158 158 register struct instdef *ip; 159 159 register struct instpnt *pt; 160 register short tf, pm, pn;160 register int16_t tf, pm, pn; 161 161 162 162 ip = &vbufs[curvce]; … … 234 234 */ 235 235 236 short vtoy(short val, short window)237 { 238 register short yval;236 int16_t vtoy(int16_t val, int16_t window) 237 { 238 register int16_t yval; 239 239 240 240 if (val GT 1000) … … 244 244 245 245 if (window < 12) 246 return(( short)(idbox[window][1] + (((yval - 56) * 100L) / 540L)));246 return((int16_t)(idbox[window][1] + (((yval - 56) * 100L) / 540L))); 247 247 else 248 248 return(yval); … … 259 259 */ 260 260 261 short ttox(unsigned time, short window)262 { 263 register short xval;261 int16_t ttox(uint16_t time, int16_t window) 262 { 263 register int16_t xval; 264 264 265 265 if (time < 128) /* 0..127 */ 266 xval = 8 + ( short)(((time * 1000L) / 2309L));266 xval = 8 + (int16_t)(((time * 1000L) / 2309L)); 267 267 else if (time < 256) /* 128..255 */ 268 xval = 64 + ( short)((((time - 128) * 1000L) / 2309L));268 xval = 64 + (int16_t)((((time - 128) * 1000L) / 2309L)); 269 269 else if (time < 512) /* 256..511 */ 270 xval = 120 + ( short)((((time - 256) * 1000L) / 4636L));270 xval = 120 + (int16_t)((((time - 256) * 1000L) / 4636L)); 271 271 else if (time < 1024) /* 512..1023 */ 272 xval = 176 + ( short)((((time - 512) * 1000L) / 9290L));272 xval = 176 + (int16_t)((((time - 512) * 1000L) / 9290L)); 273 273 else if (time < 2048) /* 1024..2047 */ 274 xval = 232 + ( short)((((time - 1024) * 1000L) / 18600L));274 xval = 232 + (int16_t)((((time - 1024) * 1000L) / 18600L)); 275 275 else if (time < 4096) /* 2048..4095 */ 276 xval = 288 + ( short)((((time - 2048) * 1000L) / 37218L));276 xval = 288 + (int16_t)((((time - 2048) * 1000L) / 37218L)); 277 277 else if (time < 8192) /* 4096..8191 */ 278 xval = 344 + ( short)((((time - 4096) * 1000L)/ 74454L));278 xval = 344 + (int16_t)((((time - 4096) * 1000L)/ 74454L)); 279 279 else if (time < 16384) /* 8192..16383 */ 280 xval = 400 + ( short)((((time - 8192) * 1000L) / 148927L));281 else if (time < (u nsigned)32768) /* 16384..32767 */282 xval = 456 + ( short)((((time - 16384) * 1000L) / 309113L));280 xval = 400 + (int16_t)((((time - 8192) * 1000L) / 148927L)); 281 else if (time < (uint16_t)32768) /* 16384..32767 */ 282 xval = 456 + (int16_t)((((time - 16384) * 1000L) / 309113L)); 283 283 else 284 284 xval = 509; … … 288 288 289 289 if (window < 12) 290 return(( short)(idbox[window][0] + (((xval - 8) * 100L) / 599L)));290 return((int16_t)(idbox[window][0] + (((xval - 8) * 100L) / 599L))); 291 291 else 292 292 return(xval); … … 303 303 */ 304 304 305 short selpnt(void)305 int16_t selpnt(void) 306 306 { 307 307 register struct idfnhdr *fp; 308 308 309 register short i, xv, np;310 311 short lo_x, lo_x_pt, hi_x, hi_x_pt;309 register int16_t i, xv, np; 310 311 int16_t lo_x, lo_x_pt, hi_x, hi_x_pt; 312 312 313 313 fp = &vbufs[curvce].idhfnc[curfunc]; … … 385 385 */ 386 386 387 void newinst( short inst)387 void newinst(int16_t inst) 388 388 { 389 389 curinst = inst; … … 398 398 */ 399 399 400 void newvce( short voice)400 void newvce(int16_t voice) 401 401 { 402 402 curvce = voice; … … 415 415 */ 416 416 417 void setivce( short voice)418 { 419 register short i, j, k, oldi;417 void setivce(int16_t voice) 418 { 419 register int16_t i, j, k, oldi; 420 420 register struct instdef *ip; 421 421 … … 460 460 void modinst(void) 461 461 { 462 short f, i, grp, oldi;462 int16_t f, i, grp, oldi; 463 463 464 464 if (NOT instmod[curvce]) { … … 511 511 void initi(struct instdef *ip) 512 512 { 513 register short i, mintfpu, rb;513 register int16_t i, mintfpu, rb; 514 514 515 515 memsetw(ip, 0, sizeof (struct instdef) / 2); … … 558 558 void initil(void) 559 559 { 560 register short i;560 register int16_t i; 561 561 562 562 setipl(FPU_DI); /* disable FPU interrupts */
Note:
See TracChangeset
for help on using the changeset viewer.