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

📄 dsk-disp.hpp

📁 一个嵌入式系统的C代码
💻 HPP
字号:
//*************************************************************************//  MODULE : Disk Animation header for the RCOS O/S simulator		  *//  AUTHOR : Ron Chernich                                                 *//  PURPOSE: Define absolute screen locations of elements comprising the  *//	     disk drive graphic displays used by RCOS.  Where possible,   *//	     all screen locations are relative to each other.		  *//  HISTORY:                                                              *//   23-AUG-94	Preliminary layout.					  *//*************************************************************************#ifndef __DISK_DISP__  #define __DISK_DISP__  #include "gfx.hpp"  #include "obj.hpp"  #include "cpmfs.hpp"  #include "display.h"  #include "message.hpp"  /////////////////  // Relative display constants for the disk animation  //  #define INDEX_RAD	3		// radius of disk index hole  #define HUB_RAD	7		// radius of disk hub hole  #define HEAD_X	9		// Head width  #define HEAD_Y	6		// Head height  #define ARM_X		5		// Head movement arm width  #define X_MARGIN	10		// from left margin + between units  #define TQ_ROWS	4		// no of transfers to show + 1  #define TQ_COLS	5		// " PID  Opr  Trk  Sec  Sid "  #define TQ_CELL_X	32		// Width of each column  #define TQ_CELL_Y	20		// height of all rows  #define TQ_GAP	10		// gap between disk and queue box  #define TQ_WIDTH	(TQ_COLS * TQ_CELL_X)  #define TQ_HEIGHT	(TQ_ROWS * TQ_CELL_Y)  //////////////////////////////  // Colors used for disk display..  //  #define PLATTER_COLOR	   _Brown  #define HEAD_COLOR	   _Yellow  #define TQ_TXT_COLOR	   _BrightWhite  #define TQ_HDR_COLOR     _Blue  #define TQ_BG_COLOR	   _White  #define IDX_NORM_COLOR   _White  #define IDX_SENSE_COLOR  _LightRed  #define READ_COLOR	   _LightGreen  #define WRITE_COLOR	   _LightRed  #if defined(MSC700) || defined(SYM60) || defined(UNIX)    #define TQ_BDR  _Black  #elif defined(BC31)    #define TQ_BDR  _BrightWhite  #endif    ////////////////  // A class to render and animate a disk unit. Units are drawn in unit  // ID order, left to right, with one pixel per track - so limit  // instances to 80 tracks max, please..  //  class DiskAnim : public WinPainter {    point  PtSpinPos;		// centre of disk platter    point  PtIndexPos;		// current index hole location    INT16  nHeadPosY;		// current graphic head position    UINT16 nLid;		// "our" logical unit ID (0 = "A:" etc)    UINT16 nTracks;		// 0 < nTracks <= 80    UINT16 nDiskRad;		// calculated platter radius in pixels  public:    DiskAnim (UINT16, UINT16);   ~DiskAnim (void) { }    void Paint (void);		// mandatory WinPainter member    void PaintTQ (void);	// full draw of queue box    void DiskSeek (INT16);	// head missile animator    void DiskSpin (UINT16);	// index hole animator    void RefreshTQ (TransQ*, INT16 = 0);	// queue update  };#endif/********************************** eof **********************************/

⌨️ 快捷键说明

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