📄 rip.c
字号:
else
{
wtmpy = RIP_LINE3_STARTY + ( _bRipEntry - ENTRY_TRACK1) * 35 + 5;
vSetRipXY(RIP_CENTER_X + 2, RIP_MENU_ENDX - 6, wtmpy, wtmpy + 30);
vChgColRep(WB_RIP_MENU, RIP_BG_HILI_COL, RIP_MENU_COL_BG);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_COL_BLACK);
_bRipEntry++;
wtmpy = RIP_LINE3_STARTY + ( _bRipEntry - ENTRY_TRACK1) * 35 + 5;
_bNewRipTracknum++;
vSetRipXY(RIP_CENTER_X + 2, RIP_MENU_ENDX - 6, wtmpy, wtmpy + 30);
vChgColRep(WB_RIP_MENU, RIP_MENU_COL_BG, RIP_BG_HILI_COL);
vChgColRep(WB_RIP_MENU, RIP_COL_BLACK, RIP_COL_BLUE);
}
break;
case ENTRY_TRACK8:
wtmpy = RIP_LINE3_STARTY + ( _bRipEntry - ENTRY_TRACK1) * 35 + 5;
vSetRipXY(RIP_CENTER_X + 2, RIP_MENU_ENDX - 6, wtmpy, wtmpy + 30);
vChgColRep(WB_RIP_MENU, RIP_BG_HILI_COL, RIP_MENU_COL_BG);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_COL_BLACK);
_bRipEntry = ENTRY_SELECT_ALL;
vSetRipXY(RIP_CENTER_X + 2, RIP_3D4_X - 18,
RIP_LINE6_STARTY + 2, RIP_MENU_ENDY - 6);
vChgColRep(WB_RIP_MENU, RIP_COL_AMETHYST, RIP_BG_HILI_COL);
vChgColRep(WB_RIP_MENU, RIP_COL_BLACK, RIP_COL_BLUE);
break;
case ENTRY_SPEED:
case ENTRY_BITRATE:
case ENTRY_ID3:
wtmpy = RIP_ENTRY_LEFT_Y + (_bRipEntry - ENTRY_SPEED)*39;
vSetRipXY(RIP_ENTRY_LEFT_X, RIP_CENTER_X - 20, wtmpy, wtmpy + 34);
vChgColRep(WB_RIP_MENU, RIP_BG_HILI_COL, RIP_COL_AMETHYST);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_COL_BLACK);
_bRipEntry++;
wtmpy = RIP_ENTRY_LEFT_Y + (_bRipEntry - ENTRY_SPEED)*39;
vSetRipXY(RIP_ENTRY_LEFT_X, RIP_CENTER_X - 20, wtmpy, wtmpy + 34);
vChgColRep(WB_RIP_MENU, RIP_COL_AMETHYST, RIP_BG_HILI_COL);
vChgColRep(WB_RIP_MENU, RIP_COL_BLACK, RIP_COL_BLUE);
break;
case ENTRY_USB:
wtmpy = RIP_ENTRY_LEFT_Y + (_bRipEntry - ENTRY_SPEED)*39;
vSetRipXY(RIP_ENTRY_LEFT_X, RIP_CENTER_X - 20, wtmpy, wtmpy + 34);
vChgColRep(WB_RIP_MENU, RIP_BG_HILI_COL, RIP_COL_AMETHYST);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_COL_BLACK);
_bRipEntry = ENTRY_START;
vSetRipXY(2, RIP_1D4_X - 2, RIP_LINE6_STARTY + 2, RIP_MENU_ENDY - 6);
vChgColRep(WB_RIP_MENU, RIP_COL_AMETHYST, RIP_BG_HILI_COL);
vChgColRep(WB_RIP_MENU, RIP_COL_BLACK, RIP_COL_BLUE);
break;
default:
break;
}
}
void vOptionsUp(void) large
{
WORD wtmpy;
switch(_bRipEntry)
{
case ENTRY_TRACK2:
case ENTRY_TRACK3:
case ENTRY_TRACK4:
case ENTRY_TRACK5:
case ENTRY_TRACK6:
case ENTRY_TRACK7:
case ENTRY_TRACK8:
wtmpy = RIP_LINE3_STARTY + ( _bRipEntry - ENTRY_TRACK1) * 35 + 5;
_bNewRipTracknum --;
vSetRipXY(RIP_CENTER_X + 2, RIP_MENU_ENDX - 6, wtmpy, wtmpy + 30);
vChgColRep(WB_RIP_MENU, RIP_BG_HILI_COL, RIP_MENU_COL_BG);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_COL_BLACK);
_bRipEntry --;
wtmpy = RIP_LINE3_STARTY + ( _bRipEntry - ENTRY_TRACK1) * 35 + 5;
vSetRipXY(RIP_CENTER_X + 2, RIP_MENU_ENDX - 6, wtmpy, wtmpy + 30);
vChgColRep(WB_RIP_MENU, RIP_MENU_COL_BG, RIP_BG_HILI_COL);
vChgColRep(WB_RIP_MENU, RIP_COL_BLACK, RIP_COL_BLUE);
break;
case ENTRY_TRACK1:
case ENTRY_SPEED:
break;
case ENTRY_BITRATE:
case ENTRY_ID3:
case ENTRY_USB:
wtmpy = RIP_ENTRY_LEFT_Y + (_bRipEntry - ENTRY_SPEED)*39;
vSetRipXY(RIP_ENTRY_LEFT_X, RIP_CENTER_X - 20, wtmpy, wtmpy + 34);
vChgColRep(WB_RIP_MENU, RIP_BG_HILI_COL, RIP_COL_AMETHYST);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_COL_BLACK);
_bRipEntry --;
wtmpy = RIP_ENTRY_LEFT_Y + (_bRipEntry - ENTRY_SPEED)*39;
vSetRipXY(RIP_ENTRY_LEFT_X, RIP_CENTER_X - 20, wtmpy, wtmpy + 34);
vChgColRep(WB_RIP_MENU, RIP_COL_AMETHYST, RIP_BG_HILI_COL);
vChgColRep(WB_RIP_MENU, RIP_COL_BLACK, RIP_COL_BLUE);
break;
case ENTRY_SELECT_ALL:
case ENTRY_SELECT_NONE:
vSetRipXY(RIP_CENTER_X, RIP_MENU_ENDX,
RIP_LINE6_STARTY, RIP_MENU_ENDY - 4);
vChgColRep(WB_RIP_MENU, RIP_BG_HILI_COL, RIP_COL_AMETHYST);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_COL_BLACK);
if(7 + (stct_rip.bRipPageNum - 1) * 6 >= MAX_TRACK_NUM)
{
_bRipEntry = ENTRY_TRACK1 + MAX_TRACK_NUM - (stct_rip.bRipPageNum - 1) * 6 - 1;
_bNewRipTracknum = MAX_TRACK_NUM;
}
else
{
_bRipEntry = ENTRY_TRACK8;
_bNewRipTracknum = stct_rip.bRipPageNum * 6 + 1 + 1;
}
wtmpy = RIP_LINE3_STARTY + ( _bRipEntry - ENTRY_TRACK1) * 35 + 5;
vSetRipXY(RIP_CENTER_X + 2, RIP_MENU_ENDX - 6, wtmpy, wtmpy + 30);
vChgColRep(WB_RIP_MENU, RIP_MENU_COL_BG, RIP_BG_HILI_COL);
vChgColRep(WB_RIP_MENU, RIP_COL_BLACK, RIP_COL_BLUE);
break;
case ENTRY_START:
case ENTRY_EXIT:
vSetRipXY(0, RIP_MENU_ENDX, RIP_LINE6_STARTY, RIP_MENU_ENDY - 4);
vChgColRep(WB_RIP_MENU, RIP_BG_HILI_COL, RIP_COL_AMETHYST);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_COL_BLACK);
_bRipEntry = ENTRY_USB;
wtmpy = RIP_ENTRY_LEFT_Y + (_bRipEntry - ENTRY_SPEED)*39;
vSetRipXY(RIP_ENTRY_LEFT_X, RIP_CENTER_X - 20, wtmpy, wtmpy + 34);
vChgColRep(WB_RIP_MENU, RIP_COL_AMETHYST, RIP_BG_HILI_COL);
vChgColRep(WB_RIP_MENU, RIP_COL_BLACK, RIP_COL_BLUE);
break;
default:
break;
}
}
void vOptionsEntry(void) large
{
BYTE bOffsetX, btmp, bBitrate;
switch(_bRipEntry)
{
case ENTRY_TRACK1:
{
if(stct_rip.bRipPageNum > 1)
{
stct_rip.bRipPageNum --;
vReDrawTrackList(stct_rip.bRipPageNum, PAGE_UP);
_bNewRipTracknum++;
}
else
vISShowHook();
break;
}
case ENTRY_TRACK2:
case ENTRY_TRACK3:
case ENTRY_TRACK4:
case ENTRY_TRACK5:
case ENTRY_TRACK6:
case ENTRY_TRACK7:
vISShowHook();
break;
case ENTRY_TRACK8:
stct_rip.bRipPageNum++;
vReDrawTrackList(stct_rip.bRipPageNum, PAGE_DOWN);
_bNewRipTracknum --;
break;
case ENTRY_SPEED:
vSetRipXY(RIP_CENTER_X - 125, RIP_CENTER_X - 24,
RIP_ENTRY_LEFT_Y + 2, RIP_ENTRY_LEFT_Y + 32);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_BG_HILI_COL);
if(stct_rip.fgHighSpeed == FALSE)
{
stct_rip.fgHighSpeed = TRUE;
vShowMsg(WB_RIP_MENU, OSD_MSG_SPEED_NORMAL + stct_rip.fgHighSpeed,
RIP_CENTER_X - 103, RIP_ENTRY_LEFT_Y + 2,
RIP_BG_HILI_COL, RIP_COL_BLUE);
}
else
{
stct_rip.fgHighSpeed = FALSE;
vShowMsg(WB_RIP_MENU, OSD_MSG_SPEED_NORMAL + stct_rip.fgHighSpeed,
RIP_CENTER_X - 125, RIP_ENTRY_LEFT_Y + 2,
RIP_BG_HILI_COL, RIP_COL_BLUE);
}
break;
case ENTRY_BITRATE:
if(stct_rip.bRipBitrate == RIP_BITRATE_320kbps)
stct_rip.bRipBitrate = RIP_BITRATE_96kbps;
else
{
stct_rip.bRipBitrate++;
}
if(stct_rip.bRipBitrate < RIP_BITRATE_112kbps)
bOffsetX = 15;
else
bOffsetX = 0;
vSetRipXY(RIP_CENTER_X - 125, RIP_CENTER_X - 22,
RIP_ENTRY_LEFT_Y + 41, RIP_ENTRY_LEFT_Y + 71);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_BG_HILI_COL);
vShowMsg(WB_RIP_MENU, OSD_MSG_96KBPS + (stct_rip.bRipBitrate - RIP_BITRATE_96kbps),
RIP_CENTER_X - 125 + bOffsetX, RIP_ENTRY_LEFT_Y + 41,
RIP_BG_HILI_COL, RIP_COL_BLUE);
switch(stct_rip.bRipBitrate)
{
case RIP_BITRATE_96kbps:
bBitrate = SV_CD_RIP_96K;
break;
case RIP_BITRATE_112kbps:
bBitrate = SV_CD_RIP_112K;
break;
case RIP_BITRATE_192kbps:
bBitrate = SV_CD_RIP_192K;
break;
case RIP_BITRATE_256kbps:
bBitrate = SV_CD_RIP_256K;
break;
case RIP_BITRATE_320kbps:
bBitrate = SV_CD_RIP_320K;
break;
default:
bBitrate = SV_CD_RIP_128K;
break;
}
vSetSharedInfo(SI_CD_RIP_BITRATE, bBitrate);
vWriteDspSharedBInfo(B_ENC_BITRATE, bBitrate);
vSetSharedInfo(SI_CD_RIP_PROGRESS, 0);
break;
case ENTRY_ID3:
if(stct_rip.fgRipID3 == FALSE)
{
stct_rip.fgRipID3 = TRUE;
vSetSharedInfo(SI_CD_RIP_ID3, 1);
vShowMsg(WB_RIP_MENU, OSD_MSG_RIP_YES,
RIP_CENTER_X - 100, RIP_ENTRY_LEFT_Y + 80,
RIP_BG_HILI_COL, RIP_COL_BLUE);
}
else
{
stct_rip.fgRipID3 = FALSE;
vSetSharedInfo(SI_CD_RIP_ID3, 0);
vSetRipXY(RIP_CENTER_X - 125, RIP_CENTER_X - 22,
RIP_ENTRY_LEFT_Y + 80, RIP_ENTRY_LEFT_Y + 110);
vChgColRep(WB_RIP_MENU, RIP_COL_BLUE, RIP_BG_HILI_COL);
vShowMsg(WB_RIP_MENU, OSD_MSG_RIP_NO,
RIP_CENTER_X - 100, RIP_ENTRY_LEFT_Y + 80,
RIP_BG_HILI_COL, RIP_COL_BLUE);
}
break;
///////////////////////////////////////
case ENTRY_USB:
_bRipSlot++;
vSetDevice();
break;
case ENTRY_START:
if(_bpRipTrkNum[0] == 0)
break;
if(bRipGetUsbNs() == 0)
{
stct_rip.bRipError = DEVICE_ERROR;
vShowRipError();
break;
}
_bRipEntry = ENTRY_NULL;
vDrawRipping();
break;
case ENTRY_SELECT_NONE:
vISDrawAllHook(FALSE);
break;
case ENTRY_SELECT_ALL:
vISDrawAllHook(TRUE);
break;
////////////////////////////////////////////////////
case ENTRY_EXIT:
vExitRipMenu();
break;
case ENTRY_CANCEL:
// kilocmd stop rip
vSendUopCmd(UOP_STOP, 0, 0, SV_STOP_FORCE);
vShowRipPage();
break;
case ENTRY_REPLACE_OK:
vDrawReplaceOk();
break;
case ENTRY_REPLACE_CANCEL:
vDrawReplaceCancel();
break;
default:
break;
}
}
BOOL fgOptionsState(void) large
{
switch(_bIRKey)
{
case IR_LEFT:
vOptionsLeft();
_bIRKey = IR_NONE;
break;
case IR_RIGHT:
vOptionsRight();
_bIRKey = IR_NONE;
break;
case IR_UP:
vOptionsUp();
_bIRKey = IR_NONE;
break;
case IR_DOWN:
vOptionsDown();
_bIRKey = IR_NONE;
break;
case IR_ENTER:
case IR_PLAY:
case IR_PLAY_ENTER:
vOptionsEntry();
_bIRKey = IR_NONE;
break;
case IR_EJECT:
if(stct_rip.bRipState == RIP_RIP_START_STATE)
{
stct_rip.bRipState = RIP_RIP_EJECT_STATE;
vSendUopCmd(UOP_STOP, 0, 0, SV_STOP_FORCE);
_bIRKey = IR_NONE;
}
else
{
vExitRipMenu();
stct_rip.bRipState = RIP_RIP_EJECT_STATE;
}
break;
case IR_POWER:
if(stct_rip.bRipState == RIP_RIP_START_STATE)
{
stct_rip.bRipState = RIP_RIP_POWER_STATE;
vSendUopCmd(UOP_STOP, 0, 0, SV_STOP_FORCE);
_bIRKey = IR_NONE;
}
else
{
vExitRipMenu();
stct_rip.bRipState = RIP_RIP_POWER_STATE;
}
break;
case IR_SUB_TITLE:
if(stct_rip.bRipState != RIP_RIP_START_STATE)
{
//vSendUopCmd(UOP_STOP, 0, 0, SV_STOP_FORCE);
vExitRipMenu();
}
_bIRKey = IR_NONE;
break;
default:
_bIRKey = IR_NONE;
break;
}
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -