Code Monkey home page Code Monkey logo

cachex's Introduction

spath's Cache Explorer

This is a fork of the Cache Explorer tool, written by spath, a member of the CDFreaks (now called MyCE) forums. It aims to obtain information about a CD drive's cache size for audio data and examine if it's possible to disable cached reads in a particular model.

The original post where the source had been shared was luckily archived by the Internet Archive here along with the archive itself. Unfortunately, no licencing information is available, so for all I know I'm infringing spath's copyright by making modifications to the software.

There's also a discussion thread in the Hydrogenaudio forums.

The root commit of this repository represents the source as it appeared in the originally shared archive.

cachex's People

Contributors

lighterowl avatar

Stargazers

hirosof avatar  avatar t3nzin avatar Brandon Lopez avatar ddddddddddp avatar bujiraso avatar

Watchers

 avatar James Cloos avatar  avatar

cachex's Issues

Different results with 0.8, 0.10, 0.11 x86 and 0.11 x64 with Plextor Premium

Hi there, @xavery.
I wanted to test my Plextor drive to see if I could use --usefua with EAC, but I'm getting different results with v0.8 from spath and v0.11 from you:

H:\DiscImageCreator>cachex -i -p -k -c -n 3 l:

CacheExplorer 0.8 - [email protected]

Drive on L is  PLEXTOR  CD-R   PREMIUM   1.07

[+] Buffer size: 8192 kB, read cache is enabled
[+] Supported read commands: BEh A8h(FUA) 28h(FUA) D4h(FUA) D5h(FUA) D8h(FUA)
[+] Plextor flush command: accepted
[+] Plextor flush tests: 3/3
[+] Testing cache line size:
 1171 kB / 510 sectors
 1171 kB / 510 sectors
 1171 kB / 510 sectors
[+] Testing cache disabling: not supported
H:\DiscImageCreator>cachex-amd64.exe -i -p -k -c -n 3 l:

CacheExplorer 0.11 - https://github.com/xavery/cachex, based on
CacheExplorer 0.9 - [email protected]

Drive on l: is  PLEXTOR  CD-R   PREMIUM   1.07

[+] Supported read commands: BEh A8h(FUA) 28h(FUA) 28h_12(FUA) D4h(FUA) D5h(FUA)
 D8h(FUA)
[+] Plextor flush command: rejected
[+] Testing cache line size:
 1171 kB / 510 sectors
 1171 kB / 510 sectors
 1171 kB / 510 sectors
[+] Testing cache disabling: not supported

Any idea of what could be happening?

Read command autodetection is unreliable on Windows

Read command autodetection seems to work unreliably on Windows, as DeviceIoControl returns TRUE and the ScsiStatus member is set to zero, which leads cachex to think that literally every possible command is supported. This is reproducible with the oldest code available (i.e. 2895d95) so something must've changed in Windows or the code has been (and still is) using that call incorrectly all this time.

Perhaps one way to fix it would be to request sense data when calling DeviceIoControl or checking if the requested number of bytes was actually read.

Example :

> cachex -i d:

CacheExplorer 0.9 - [email protected]

Drive on D is  TSSTcorp CDDVDW SE-208AB  TS03

[+] Buffer size: 1024 kB, read cache is enabled
[+] Supported read commands: BEh A8h(FUA) 28h(FUA) D4h(FUA) D5h(FUA) D8h(FUA)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.