Do not modify searchform.php, as you want to use the default search for other pages. The below html code will create a custom form for you. Just paste the code in the template and you got your custom search form.
<form method="get" id="searchform" action="<?php bloginfo('home'); ?>/">
<input type="text" value="" name="s" id="s" />
<input type="hidden" name="search-type" value="books" />
<input name="submit" type="submit" value="Go" />
</form>
Assuming that your custom post type is 'books'. By default your search results will use search.php file. So, we will check if the value is books then we will load a custom search query written in books-search.php. Otherwise you can load the existing code present is search.php.
In your search.php file:
if(isset($_GET['search-type'])) {
$type = $_GET['search-type'];
if($type == 'books') {
load_template(TEMPLATEPATH . '/books-search.php');
}
}else{
// Your current code
}
Now in books-search.php use:
$args = array( 'post_type' => 'books' );
$args = array_merge( $args, $wp_query->query );
query_posts( $args );
This will search only for books post type.