19 June 2003

SnoopyPro logfile dumper progresses. The format is quite inefficient — some data is stored up to three times. A sample of what I have so far:

      Value might be a short: (short) 1970 [2 bytes]
    Number of packets: 1970
    1970 URB pointers skipped
      Value might be a short: (short) 65535 [2 bytes]
      Value might be an integer: (int) 17147967 [4 bytes]
    Plugin timestamp: 17147967
      Value might be a short: (short) 1 [2 bytes]
    Timestamp is relative (1 == true): 1
    
    -----------------------------------------------
    URB 0 starts at 7890 within file
    
    Sequence: (unsigned short) 1 [2 bytes]
      Length might be a short: (short) 4 [2 bytes]
    SnoopyPro URB object name: CURB
    Unknown: (int) 1 [4 bytes]
    
    Function: GET_DESCRIPTOR_FROM_DEVICE (0x000b)
    Time relative to start of dump: 10
      Value might be a short: (short) 0 [2 bytes]
    Endpoint: 0
    Pipe handle: 0x00000000
    Flags: (unsigned int) 4 [4 bytes]
    Status: (int) 0 [4 bytes]
    Link: (unsigned int) 0 [4 bytes]
    
    Length: (unsigned int) 96 [4 bytes]
    Direction (0 to, 1 from): (int) 0 [4 bytes]
    Sequence number: (unsigned int) 1 [4 bytes]
    Timestamp: (unsigned int) 17147977 [4 bytes]
    
    URB header:
    Length: (unsigned short) 80 [2 bytes]
    Function: (unsigned short) 11 [2 bytes]
    Status: (unsigned int) 0 [4 bytes]
    Skipped device handle pointer
    Flags: (unsigned int) 34 [4 bytes]
    
    -----------------------------------------------
    URB 1 starts at 7964 within file
    
    Sequence: (unsigned short) 1 [2 bytes]
      Length might be a short: (short) 20 [2 bytes]
    SnoopyPro URB object name: CURB_ControlTransfer
    Unknown: (int) 1 [4 bytes]
    
    Function: CONTROL_TRANSFER (0x0008)
    Time relative to start of dump: 10
      Value might be a short: (short) 0 [2 bytes]
    Endpoint: 0
    Pipe handle: 0x82af53d8
    Flags: (unsigned int) 6 [4 bytes]
    Status: (int) 0 [4 bytes]
    Link: (unsigned int) 0 [4 bytes]
    

…And so on…