Interrups | Categories | Contents |
AH = AFh AL = function 00h close memory 01h copy memory 02h deregister client 03h get client information (see #00702) 04h get configuration information (see #00704) 05h get first partition 06h get first region 07h get first tuple (see #00711) 08h get next partition 09h get next region 0Ah get next tuple 0Bh get Card Services information (see #00700) 0Ch get status 0Dh get tuple data (see #00712) 0Eh get first client (see #00701) 0Fh get/register Erase Queue 10h register client (see #00713) 11h reset function 12h map logical socket 13h map logical window 14h map memory page 15h map physical socket 16h map physical window 17h modify window 18h open memory 19h read memory 1Ah register MTD 1Bh release I/O 1Ch release IRQ (see #00715) 1Dh release window 1Eh release configuration (see #00716) 1Fh request I/O (see #00717) 20h request IRQ (see #00718) 21h reqeust window (see #00720) 22h request socket mask 23h return SS entry 24h write memory 25h deregister Erase Queue 26h check Erase Queue 27h modify configuration 28h register timer 29h set region 2Ah get next client 2Bh validate CIS 2Ch request exclusive access (see #00723) 2Dh release exclusive access (see #00723) 2Eh get event mask 2Fh release socket mask 30h request configuration (see #00724) 31h set event mask 32h add Socket Service 33h replace Socket Service 34h vendor-specific 35h adjust resource information 36h access configuration register 37h get first window 38h get next window 39h get memory page 3Ah request DMA 3Bh release DMA further details not yet available
Return:
??? = result code (see #00698)
See Also: AH=AEh
(Table 00698) Values for PCMCIA Card Services result codes: 00h successful 01h invalid adapter number 02h bad value for attribute field 03h bad value for base system memory address 04h invalid EDC generator specified 05h (reserved for historical reasons) 06h invalid IRQ level specified 07h invalid PC Card memory array offset 08h invalid page number specified 09h unable to complete read request 0Ah invalid size specified 0Bh invalid socket number 0Ch (reserved for historical reasons) 0Dh invalid window or interface type 0Eh invalid Vcc power level specified 0Fh invalid Vpp1 or Vpp2 power level specified 10h (reserved for historical reasons) 11h invalid window number 12h unable to complete write request 13h (reserved for historical reasons) 14h no PC Card in socket 15h service not supported by implementation 16h unsupported processor mode 17h specified speed not available 18h busy -- retry later 19h undefined error (general failure) 1Ah storage medium write protected 1Bh argument length in (E)CX is invalid 1Ch bad value(s) in argument packet 1Dh configuration has already been locked 1Eh requested resource already in use 1Fh no more items of requested type available 20h out of resources 21h invalid client handle 22h unsupported client version
(Table 00699) Values for Card Services Callback Event codes: 01h battery dead 02h battery low 03h card locked 04h card has become ready 05h card removed 06h card unlocked 07h motorized ejection complete 08h ejection requested 09h insertion complete 0Ah insertion requested
0Bh power management:
Resume0Ch power management:
Suspend 0Dh exclusive access granted 0Eh exclusive access requested 0Fh perform physical reset 10h physical reset requested 11h card has been reset 12h MTD request (read/write/etc) 14h request for client info 15h timer has expired 16h Socket Service was modified 17h write-protected 18h attention requested 40h card insertion 80h reset complete 81h erase complete 82h registration completeFormat of Card Services Information: Offset Size Description (Table 00700) 00h WORD length of information record in bytes 02h WORD signature 04h WORD number of sockets 06h WORD revision level 08h WORD Card Services level 0Ah WORD offset of vendor string 0Ch WORD length of vendor string 0Eh WORD number of functions 10h 255 BYTEs vendor string
See Also: #00702
Format of Card Services Client structure: Offset Size Description (Table 00701) 00h WORD PCMCIA socket number 02h WORD client attributes
Format of Cards Services Client Information: Offset Size Description (Table 00702) 00h WORD maximum length of data in bytes (180) 02h WORD (ret) length of returned data 04h WORD attributes (see #00703) 06h WORD revision level (BCD) 08h WORD Card Services level (BCD) 0Ah WORD revision date (DOS packed date format) (see #01666) 0Ch WORD offset to name 0Eh WORD length of name 10h WORD offset to vendor string 12h WORD length of vendor string 14h 80 BYTEs buffer for name 64h 80 BYTEs buffer for vendor string
See Also: #00700 - #00704
Bitfields for Card Services client attributes: Bit(s) Description (Table 00703) 0 memory client 1 MTD client 2 I/O client 3 all clients can share this card 4 only one client can use this card at a time
See Also: #00702
Format of Card Services configuration information: Offset Size Description (Table 00704) 00h WORD socket (usually 0000h) 02h WORD attributes (see #00705) 04h BYTE Vcc value 05h BYTE Vpp1 value 06h BYTE Vpp2 value 07h BYTE interface type (see #00706) 08h DWORD base address of configuration registers 0Ch BYTE card's Status register setting (if present) 0Dh BYTE card's Pin register setting (if present) 0Eh BYTE card's Socket/Copy register setting (if present) 0Fh BYTE card's Option register setting (if present) 10h BYTE bitmap of present card configuration registers 11h BYTE first device type 12h BYTE function code 13h BYTE SysInit mask 14h WORD manufacturer code 16h WORD manufacturer information 18h BYTE valie card register values 19h BYTE IRQ number assigned to PC Card 1Ah WORD IRQ attributes (see #00708) 1Ch WORD base port address (for I/O range 1) 1Eh BYTE number of contiguous ports (for I/O range 1) 1Fh BYTE bitmap of port attributes (for I/O range 1) (see #00709) 20h WORD base port address (for I/O range 2) 22h BYTE number of contiguous ports (for I/O range 2) 23h BYTE bitmap of port attributes (for I/O range 2) (see #00709) 24h BYTE number of I/O address lines decoded (16-bit PC Card only) 25h BYTE extended status register setting (if present) 26h BYTE bitmap of DMA attributes (see #00710)
(note:
Value at call is used to set!) 27h BYTE assigned DMA channel 28h BYTE number of I/O windows in use on logical socket 29h BYTE number of memory windows in use on logical socket
See Also: #00703 - #00724
Bitfields for Card Services Configuration attributes: Bit(s) Description (Table 00705) 0 exclusive 1 IRQ active 2 CardBus card 3-5 reserved (0) 6 DMA channel is active 7 reserved (0) 8 valid client 9 overwrite voltage value 10-15 reserved (0)
See Also: #00704
Bitfields for Card Services Configuration interface type: Bit(s) Description (Table 00706) 0 memory interface 1 I/O and memory interface 2 CardBus interface 3-7 reserved (0)
See Also: #00704
Bitfields for Card Services Configuration registers: Bit(s) Description (Table 00707) 0 option value is value 1 status value 2 pin-replacement value 3 copy value 4 extended status value 5-7 reserved (0)
See Also: #00704
Bitfields for Card Services Configuration IRQ attributes: Bit(s) Description (Table 00708) 1-0 sharing. 00 no sharing. 01 time-multiplex sharing. 10 dynamic sharing. 11 reserved 2 force pulse mode 3 first used together 4-7 reserved 8 pulse IRQ has been assigned 9-15 reserved
See Also: #00704 - #00709 - #00710 - #00715 - #00718
Bitfields for Card Services Configuration Port attributes: Bit(s) Description (Table 00709) 0 shared I/O ports 1 "CS_FirstCommonUsedCard" 2 force alias access 3 =1 sixteen-bit I/O. =0 eight-bit I/O 7-4 reserved (0)
See Also: #00704 - #00708 - #00710 - #00717
Bitfields for Card Services Configuration DMA attributes: Bit(s) Description (Table 00710) 1-0 sharing mode. 00 no sharing. 01 time-multiplex sharing. 10 dynamic sharing. 11 reserved 3-2 DMA request signal. 00 reserved. 01 DMARQ uses pin SPKR#. 10 DMARQ uses pin IOIS16#. 11 DMARQ uses pin INPACK# 4 DMA size. 0 eight bits. 1 sixteen bits 7-5 reserved (0)
See Also: #00704 - #00708 - #00709
Format of Card Services Tuple information: Offset Size Description (Table 00711) 00h WORD logical socket number 02h WORD attributes
bit 0:
Return Link tuples 04h BYTE code value of desired tuple 05h BYTE reserved (0) 06h WORD (ret) TupleFlags 08h DWORD (ret) -> Card Services Link State Information 0Ch DWORD (ret) -> Card Services CIS State Information 10h BYTE (ret) code for tuple 11h BYTE (ret) link value for tuple
See Also: #00712
Format of Card Services GetTupleData record: Offset Size Description (Table 00712) 00h WORD logical socket 02h WORD attributes 04h BYTE code value of desired tuple 05h BYTE offset into tuple from link byte 06h WORD flags 08h DWORD -> Link 0Ch DWORD -> CIS 10h WORD (call) maximum amount of data to return (0004h) 12h WORD (ret) amount of data returned 14h DWORD (ret) tuple data
See Also: #00711
Format of Card Services Client Registration record: Offset Size Description (Table 00713) 00h WORD attributes 02h WORD event mask 04h WORD client data (passed to client event handler in DI) --- 16-bit code --- 06h WORD client data selector (passed to event handler in DS) 08h WORD client data offset (passed to event handler in SI) 0Ah WORD reserved --- 32-bit code --- 06h WORD reserved 08h DWORD client data offset (passed to event handler in ESI) ------ 0Ch WORD expected Card Services version (0210h for v2.10)
Bitfields for Card Services client event codes: Bit(s) Description (Table 00714) 0 change in write-protect status 1 change in card lock 2 ejection request 3 insertion request 4 battery is dead 5 battery low 6 change in Ready 7 change in Card Detect 8 power management change 9 reset 10 Socket Services updated 11 extended status change
See Also: #00713
Format of Card Services ReleaseIRQ record: Offset Size Description (Table 00715) 00h WORD logical socket number 02h WORD attributes (see #00708) 04h BYTE assigned IRQ number to be released
Format of Card Services Release Configuration record: Offset Size Description (Table 00716) 00h WORD logical socket number
Format of Card Services Request I/O record: Offset Size Description (Table 00717) 00h WORD logical socket number 02h WORD base port 1 04h BYTE size of port range 1 05h BYTE attributes for port range 1 (see #00709) 06h WORD base port 2 08h BYTE size of port range 2 09h BYTE attributes for port range 2 (see #00709) 0Ah BYTE number of address lines (typically 16)
See Also: #00718 - #00716
Format of Card Services Request IRQ record: Offset Size Description (Table 00718) 00h WORD logical socket number 02h WORD attributes (see #00708) 04h BYTE (ret) assigned IRQ number, if successful 05h BYTE IRQ info (see #00719) 06h WORD bitmap of available IRQs (bit 0 = IRQ0, etc.) (only if bit 4 of IRQ info set)
See Also: #00717 - #00716
Bitfields for Card Services Request IRQ info flags: Bit(s) Description (Table 00719) 7 IRQ is shared 6 pulse (edge-triggered) interrupt 5 level interrupt 4 use IRQ bitmap --- bit 4 set --- 3 vendor-specific interrupt 2 bus error 1 I/O check interrupt 0 NMI --- bit 4 clear --- 3-0 IRQ number
See Also: #00718
Format of Card Services Request Window record: Offset Size Description (Table 00720) 00h WORD logical socket number 02h WORD attributes (see #00721) 04h DWORD system base adress 08h DWORD size of memory window 0Ch BYTE additional info if attributes bit ??? is set, this is the address-lines field otherwise, this is the access-speed field (see #00722)
Bitfields for Card Services Request Window attributes: Bit(s) Description (Table 00721) 0 I/O window instead of memory window 1 attribute memory instead of normal memory (16-bit PC Cards only) 2 window enabled 3 16-bit data path instead of 8-bit path (16-bit PC Cards only, v2.10+). (ignored if bit 9 set) 4 size is given in 16K pages (invalid for CardBus PC Cards) 5 shared (invalid for CardBus) 6 first shared (invalid for CardBus) 7 "CS_BindingSpecific" (memory window only) 8 card offsets are window-size granular (16-bit PC Card memory window) 9 32-bit data path (CardBus only) 10 reserved (0) 12-11 prefetch/cache. 00 neither prefetchable nor cacheable. 01 prefetchable but not cacheable. 10 prefetchable and cachable. 11 reserved 15-13 decoded base address register number (CardBus only)
See Also: #00720 - #00722
Bitfields for Card Services Request Window access-speed: Bit(s) Description (Table 00722) 6-3 mantissa. 0000 use device speed code. 0001 1.0. 0010 1.2. 0011 1.2 ???. 0100 1.5. 0101 2.0. 0110 2.5. 0111 3.0. 1000 3.5. 1001 4.0. 1010 4.5. 1011 5.0. 1100 5.5. 1101 6.0. 1110 7.0. 1111 8.0 --- if mantissa==0 --- 2-0 device speed code. 000 reserved. 001 250 ns. 010 200 ns. 011 150 ns. 100 100 ns. 101-111 reserved --- if mantissa<>0 --- 2-0 speed exponent. 000 1 ns. 001 10 ns. 010 100 ns. 011 1 us. 100 10 us. 101 100 us. 110 1 ms. 111 10 ms
See Also: #00720 - #00721
Format of Card Services Request/Release Exclusive Access record: Offset Size Description (Table 00723) 00h WORD logical socket number 02h WORD attributes (currently all reserved, must be 0000h)
Format of Card Services Request Configuration record: Offset Size Description (Table 00724) 00h WORD socket (usually 0000h) 02h WORD attributes (see #00705) 04h BYTE Vcc value 05h BYTE Vpp1 value 06h BYTE Vpp2 value 07h BYTE interface type (see #00706) 08h DWORD base address of configuration registers 0Ch BYTE card's Status register setting (if present) 0Dh BYTE card's Pin register setting (if present) 0Eh BYTE card's Socket/Copy register setting (if present) 0Fh BYTE card's Option register setting (if present) 10h BYTE bitmap of present card configuration registers 11h BYTE extended status register setting (if present)
See Also: #00704
Category: Expansion Bus Bios - Int 1Ah - P
Interrups | Categories | Contents |