Develop and Download Open Source Software

Browse CVS Repository

Contents of /enbanfukusyaya/EnbanKensa/common/cmd.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.5 - (show annotations) (download) (as text)
Sun Dec 11 15:25:30 2005 UTC (18 years, 4 months ago) by bananajinn
Branch: MAIN
CVS Tags: HEAD
Changes since 1.4: +161 -161 lines
File MIME type: text/x-chdr
*** empty log message ***

1 /**
2 * 円盤複写屋 - EnbanKensa
3 * Copyright (C) 2005 Kagetani Hideto
4 * cmd.h - MMCコマンド送信関数群定義
5 * $Date: 2005/12/11 15:21:45 $
6 * $Revision: 1.4 $
7 */
8 #ifndef __CMD_H__
9 #define __CMD_H__
10
11 #include "aspi.h"
12 #include "struct.h"
13 #include "drive.h"
14
15
16 // ASPI Command
17 #define CMD_TEST_UNIT_READY 0x00
18 #define CMD_REZERO_UNIT 0x01
19 #define CMD_REQUEST_SENSE 0x03
20 #define CMD_FORMAT_UNIT 0x04
21 #define CMD_READ6 0x08
22 #define CMD_SEEK6 0x0b
23 #define CMD_INQUIRY 0x12
24 #define CMD_MODE_SELECT6 0x15
25 #define CMD_RESERVE 0x16
26 #define CMD_RELEASE 0x17
27 #define CMD_MODE_SENSE6 0x1a
28 #define CMD_START_STOP 0x1b
29 #define CMD_RECIEVE_DIAG 0x1c
30 #define CMD_SEND_DIAG 0x1d
31 #define CMD_PREVENT_ALLOW 0x1e
32 #define CMD_READ_CAPACITY 0x25
33 #define CMD_READ10 0x28
34 #define CMD_SEEK10 0x2b
35 #define CMD_VERIFY 0x2f
36 #define CMD_PRE_FETCH 0x34
37 #define CMD_WRITE_BUFFER 0x3b
38 #define CMD_READ_BUFFER 0x3c
39 #define CMD_READ_SUBCHANNEL 0x42
40 #define CMD_READ_TOC 0x43
41 #define CMD_READ_HEADER 0x44
42 #define CMD_PLAY_AUDIO10 0x45
43 #define CMD_PLAY_AUDIO_MSF 0x47
44 #define CMD_PLAY_TRACK_INDEX 0x48
45 #define CMD_PLAY_RELATIVE10 0x49
46 #define CMD_PAUSE 0x4b
47 #define CMD_MODE_SELECT10 0x55
48 #define CMD_MODE_SENSE10 0x5a
49 #define CMD_PLAY_AUDIO12 0xa5
50 #define CMD_READ12 0xa8
51 #define CMD_PLAY_RELATIVE12 0xa9
52 #define CMD_SET_CD_SPEED 0xbb
53 #define CMD_MECHANISM_STATUS 0xbd
54 #define CMD_READ_CD 0xbe
55 #define CMD_READ_CD_DA 0xd4
56 #define CMD_READ_P_W_SUBCODE 0xd6
57 #define CMD_WRITE10 0x2a
58 #define CMD_WRITE12 0xaa
59 #define CMD_WRITE_AND_VERIFY 0x2e
60 #define CMD_SYNCHRONIZE_CACHE 0x35
61 #define CMD_READ_DISC_INFO 0x51
62 #define CMD_READ_TRACK_INFO 0x52
63 #define CMD_RESERVE_TRACK 0x53
64 #define CMD_REPAIR_TRACK 0x58
65 #define CMD_READ_MASTER_CUE 0x59
66 #define CMD_CLOSE_TRACK_SESSION 0x5b
67 #define CMD_READ_BUFFER_CAPACITY 0x5c
68 #define CMD_SEND_CUE_SHEET 0x5d
69 #define CMD_SEND_OPC_INFOMATION 0x54
70 #define CMD_BLANK 0xa1
71 #define CMD_READ_CD_MSF 0xb9
72 #define CMD_AUDIO_SCAN 0xba
73 #define CMD_GET_CONFIGURATION 0x46
74 #define CMD_GET_PERFORMANCE 0x4C
75 #define CMD_READ_DVD_STRUCTURE 0xad
76 #define CMD_READ_FORMAT_CAPACITIES 0x23
77 #define CMD_REPORT_KEY 0xa4
78 #define CMD_SEND_EVENT 0xa2
79 #define CMD_SEND_KEY 0xa3
80 #define CMD_SET_READ_AHEAD 0xa7
81 #define CMD_SET_STREAMING 0xb6
82 #define CMD_SEND_DVD_STRUCTURE 0xbf
83
84
85 #ifdef __cplusplus
86 extern "C" {
87 #endif
88
89 extern WORD Get2bytes(BYTE *buf);
90 extern DWORD Get3bytes(BYTE *buf);
91 extern DWORD Get4bytes(BYTE *buf);
92 extern void Set2bytes(BYTE *buf, WORD value);
93 extern void Set3bytes(BYTE *buf, DWORD value);
94 extern void Set4bytes(BYTE *buf, DWORD value);
95
96 extern DWORD MSF2LBA(BYTE min, BYTE sec, BYTE frame, BOOL force_positive);
97 extern BOOL LBA2MSF(DWORD lba, BYTE *min, BYTE *sec, BYTE *frame);
98
99 extern int SendTestUnitReady(CMDDRIVE *drive);
100 extern int SendStartStop(CMDDRIVE *drive, BYTE immed, BYTE load_eject, BYTE start_or_load);
101 extern int SendPreventAllow(CMDDRIVE *drive, BYTE prevent);
102 extern int SendModeSense(CMDDRIVE *drive, BYTE page_control, BYTE page_code);
103 /* page_control */
104 #define MSPC_CURRENT 0
105 #define MSPC_CHANGEABLE 1
106 #define MSPC_DEFAULT 2
107 #define MSPC_SAVED 3
108 extern int SendModeSelect(CMDDRIVE *drive, BYTE pf);
109 extern int SendReadToc(CMDDRIVE *drive, WORD track_sess_num, BYTE msf, BYTE format);
110 /* format */
111 #define RTF_TOC 0
112 #define RTF_SESS 1
113 #define RTF_FULLTOC 2
114 #define RTF_PMA 3
115 #define RTF_ATIP 4
116 #define RTF_CDTEXT 5
117 extern int SendReadDiscInfo(CMDDRIVE *drive);
118 extern int SendReadTrackInfo(CMDDRIVE *drive, WORD track_num);
119 extern int SendCloseTrackSession(CMDDRIVE *drive, BYTE immed, BYTE type, WORD track_num);
120 /* type */
121 #define CTST_CLOSETRACK 1
122 #define CTST_CLOSESESSION 2
123 extern int SendReadSubchannel(CMDDRIVE *drive, BYTE track_num, BYTE msf, BYTE subq, BYTE format);
124 #define RSCF_CURRENT_POS 1
125 #define RSCF_MCN 2
126 #define RSCF_ISRC 3
127 extern int SendReadCD(CMDDRIVE *drive, DWORD addr, DWORD len);
128 extern int SendReadFormatCapacities(CMDDRIVE *drive);
129 extern int SendFormatUnit(CMDDRIVE *drive, BYTE fmtdata, BYTE cmplist, BYTE format_code, WORD len);
130 #define FUFC_CDRW 7
131 #define FUFC_OTHER 1
132 extern int SendSetCdSpeed(CMDDRIVE *drive, WORD read_speed, WORD write_speed, BYTE rotctl);
133 extern int SendSetStreaming(CMDDRIVE *drive);
134 extern int SendSynchronizeCache(CMDDRIVE *drive, BYTE immed);
135 extern int SendReserveTrack(CMDDRIVE *drive, DWORD size);
136 extern int SendRead10(CMDDRIVE *drive, DWORD lba, WORD len, DWORD buflen);
137 extern int SendWrite10(CMDDRIVE *drive, DWORD lba, WORD len, DWORD buflen);
138 extern int SendSeek10(CMDDRIVE *drive, DWORD lba);
139 extern int SendSendCueSheet(CMDDRIVE *drive, void *cuesheet, DWORD len);
140
141 extern int SendLongRead12(CMDDRIVE *drive, DWORD lba, DWORD len, DWORD buflen,
142 DWORD total_blocks);
143 extern int SendLongReadCD(CMDDRIVE *drive, DWORD addr, DWORD len,
144 DWORD total_blocks);
145
146 extern int OpenTray(CMDDRIVE *drive);
147 extern int CloseTray(CMDDRIVE *drive);
148 extern int GetDiscType(CMDDRIVE *drive, int *disc_type_ret, BOOL bWaitDisc);
149 extern int CheckReady(CMDDRIVE *drive, BOOL bWaitDisc);
150 extern int BlankDisc(CMDDRIVE *drive, BYTE type);
151 extern int WaitProgress(CMDDRIVE *drive, const char *message, BOOL meter1);
152 extern void DispCommandError(CMDDRIVE *drive);
153 extern int GetSubQ(CMDDRIVE *drive, DWORD lba, DWORD len);
154
155
156 #ifdef __cplusplus
157 }
158 #endif
159
160 #endif /* !__CMD_H__ */
161

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26