?? spiprog.cpp
字號:
#include "stdafx.h"
#include "resource.h"
#include <commdlg.h>
#include <cderr.h>
#include <stdlib.h>
#include <stdio.h>
#include "plugins.h"
#define hibyte(mo) (mo&0xFF000000)>>24
#define midbyte(mo) (mo&0xFF0000)>>16
#define lomidbyte(mo) (mo&0xFF00)>>8
#define lobyte(mo) mo&0xFF
void Buf2Scr(HWND,BYTE *,int);
int InitPlugins(void);
int InitDefaultHW(void);
tInit_Plugin *_Init_Plugin;
DOO *all;
HWND _wnd,_progr;
HANDLE _mycom=NULL;
int _flsize,_eesize,_pages,_poll;
int _err,_divider,_memsz,_ememsz,_toptab;
int _selected_plugin=0;
BYTE *_eeprom,*_flash=NULL;
WORD *_tstfl;
HINSTANCE _hInst,_mydll;
char _cn[20];
char *_plugins[20]; // up to 20 plugins enabled
char *_unkerr="Unknown error";
DWORD EraseChip(void)
{
DWORD rcvd;
char buff[8];
if(_mycom){
WriteFile(_mycom,"e",1,&rcvd,NULL);
ReadFile(_mycom,buff,1,&rcvd,NULL);
WriteFile(_mycom,"L",1,&rcvd,NULL);
ReadFile(_mycom,buff,1,&rcvd,NULL);
}
Sleep(10);
return 1;
}
DWORD WINAPI Buf2eep(LPVOID parm)
{
PARAMS *pe;
BYTE buft[4],rcb[4],*eebuf;
int i,eadr;
DWORD rcvd;
pe=(PARAMS *)parm;
eadr=(pe->wrdcnt)<<1;
eebuf=(BYTE *)pe->memo;
SendMessage(pe->progr,PBM_SETRANGE,0,MAKELPARAM(0,eadr));
if(pe->comm){
WriteFile(pe->comm,"P",1,&rcvd,NULL);
ReadFile(pe->comm,rcb,1,&rcvd,NULL);
for(i=0;i<eadr;i++){
wsprintf((char *)buft,"A%c%c",i>>8,i&0xFF);
WriteFile(pe->comm,buft,3,&rcvd,NULL);
ReadFile(pe->comm,rcb,1,&rcvd,NULL);
wsprintf((char *)buft,"%c%c",0x44,eebuf[i]);
WriteFile(pe->comm,buft,2,&rcvd,NULL);
ReadFile(pe->comm,rcb,1,&rcvd,NULL);
SendMessage(pe->progr,PBM_SETPOS,(WPARAM)i,0);
}
WriteFile(pe->comm,"L",1,&rcvd,NULL); // 覲礤
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -