⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 client.c

📁 一个C style Assembler的source code
💻 C
字号:
#include <stdio.h>#include <ctype.h>#include <bios.h>#include "Com.h"#include "Port.h"typedef unsigned char byte;typedef unsigned int word;#define Up    0x148#define Left  0x14b#define Right 0x14d#define Down  0x150int KeyHit(void) {   return _bios_keybrd(_KEYBRD_READY);}int Keyboard(void) {   int Ch = _bios_keybrd(_KEYBRD_READ);   return (Ch&0xff) == '\0'? 0x100 | (Ch >> 8)&0xff: Ch&0xff;}main() {   int Ch; FILE *FP = 0; char Buf[80];   OpenPort(COM2, 9600, PAR_NONE | DATA8 | STOP1, 0x4000);   while (1) {      if (KeyHit()) switch (Ch = Keyboard()) {         case 0x1b: if (FP != 0) fclose(FP), FP = 0; break;         case Left: ClosePort(); exit(0);         case Down:            if (FP != 0) break;            printf("Binary Load.  Filename: "); gets(Buf); putchar('\n');            FP = fopen(Buf, "rb");            if (FP == 0) {               printf("Cannot find %s.\n", Buf); break;            }            while ((Ch = fgetc(FP)) != EOF) {               Send(Ch&0xff);               while ((Ch = Recv()) != -1) putchar(Ch);            }            fclose(FP); FP = 0;         break;         case Up:            if (FP != 0) break;            printf("Acsii Dump.  Filename: "); gets(Buf); putchar('\n');            FP = fopen(Buf, "w");            if (FP == 0) {               printf("Cannot find %s.\n", Buf); break;            }         break;         default: Send(Ch);         case '\0': break;      }      while ((Ch = Recv()) != -1) {         putchar(Ch);         if (FP != 0) fputc(Ch, FP);      }   }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -