| 
			
			 | 
		#16 | |
| 
			
			
			
			 Grand Sorcerer 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 11,470 
				Karma: 13095790 
				Join Date: Aug 2007 
				Location: Grass Valley, CA 
				
				
				Device: EB 1150, EZ Reader, Literati, iPad 2 & Air 2, iPhone 7 
				
				
				 | 
	
	
	
		
		
		
		
		 Quote: 
	
 Once you figure it out please add it to the wiki. Dale  | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#17 | |
| 
			
			
			
			 GuteBook/Mobi2IMP Creator 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,958 
				Karma: 2530691 
				Join Date: Dec 2007 
				Location: Toronto, Canada 
				
				
				Device: REB1200 EBW1150 Device: T1 NSTG iLiad_v2 NC Device: Asus_TF Next1 WPDN 
				
				
				 | 
	
	
	
		
		
		
		
		 Quote: 
	
 Here is an excerpt of the ParseRecord0 code: Code: 
	    my $version;     # EReader version
                     # Expected values are:
                     # 02 - PalmDoc Compression
                     # 10 - Inflate Compression
                     # >255 - data is in Record 1
    my $headerdata;  # used for holding temporary data segments
    my $offset;
    my %header;
    my @list;
    debug(1,"DEBUG: EReader Record 0 is ",length($data)," bytes");
    $headerdata = substr($data,0,16);
    @list = unpack('nnNnnnn',$headerdata);
    $header{version}        = $list[0]; # Bytes 0-1
    $header{unknown2}       = $list[1]; # Bytes 2-3
    $header{unknown4}       = $list[2]; # Bytes 4-7
    $header{unknown8}       = $list[3]; # Bytes 8-9
    $header{unknown10}      = $list[4]; # Bytes 10-11
    $header{nontextoffset}  = $list[5]; # Bytes 12-13
    $header{nontextoffset2} = $list[5]; # Bytes 14-15
    $headerdata = substr($data,16,16);
    @list = unpack('nnNnnnn',$headerdata);
    $header{unknown16}    = $list[0];
    $header{unknown18}    = $list[1];
    $header{unknown20}    = $list[2];
    $header{unknown22}    = $list[3];
    $header{unknown24}    = $list[4];
    $header{footnoterecs} = $list[5];
    $header{sidebarrecs}  = $list[6];
    $headerdata = substr($data,32,24);
    @list = unpack('nnnnnnnnnnnn',$headerdata);
    $header{bookmarkoffset}   = $list[0];
    $header{unknown34}        = $list[1];
    $header{nontextoffset3}   = $list[2];
    $header{unknown38}        = $list[3];
    $header{imagedataoffset}  = $list[4];
    $header{imagedataoffset2} = $list[5];
    $header{metadataoffset}   = $list[6];
    $header{metadataoffset2}  = $list[7];
    $header{footnoteoffset}   = $list[8];
    $header{sidebaroffset}    = $list[9];
    $header{lastdataoffset}   = $list[10];
    $header{unknown54}        = $list[11];
Last edited by nrapallo; 04-28-2009 at 10:30 PM.  | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#18 | |
| 
			
			
			
			 Sigil & calibre developer 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,487 
				Karma: 1063785 
				Join Date: Jan 2009 
				Location: Florida, USA 
				
				
				Device: Nook STR 
				
				
				 | 
	
	
	
		
		
		
		
		 Quote: 
	
  | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#19 | 
| 
			
			
			
			 reader 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,977 
				Karma: 5183568 
				Join Date: Mar 2006 
				Location: Mississippi, USA 
				
				
				Device: Kindle 3, Kobo Glo HD 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			It won't work for Linux users, unless the limitations of MakeBook are acceptable (or can Wine be used with DropBook?), but a simple work around for eReader output is to write out PML and let DropBook do this rest.  This is the approach taken in ereader2ereader in two steps.  There are other advantages of doing this, such as simplifying debugging of conversion issues (experts on PML can see the document source).  Also, what Calibre's eReader output should look like is either identically PML -> DropBook or that plus some extra frills.  So developing direct eReader output will be simplified if the PML option is in place.
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#20 | |
| 
			
			
			
			 Sigil & calibre developer 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,487 
				Karma: 1063785 
				Join Date: Jan 2009 
				Location: Florida, USA 
				
				
				Device: Nook STR 
				
				
				 | 
	
	
	
		
		
		
		
		 Quote: 
	
 The conversion framework for 0.6 is Input -> OEB -> output. The eReader output would be Input -> OEB -> (html -> pml -> complied into an eReader formatted pdb file). Everything except the last step of the output is working. Since the OEB -> pml is working I'm going to modify it to be an output format (at some point before the 0.6 release). So you will be able to create an eReader file using DropBook from another input format with the help of Calibre. However, you will have to do that step manually.  | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#21 | |
| 
			
			
			
			 reader 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,977 
				Karma: 5183568 
				Join Date: Mar 2006 
				Location: Mississippi, USA 
				
				
				Device: Kindle 3, Kobo Glo HD 
				
				
				 | 
	
	
	
		
		
		
		
		 Quote: 
	
 Having already imposed on you for PML output, recall that =X= asked for PML input: It isn't your job, necessarily, to make life easier for DRM circumvention, but if DRM-free eReader .pdb's are added as input to Calibre the process for makeing an ePub will be DRM-ed eReader -> PML (ereader2pml.py) -> DRM-free eReader (DropBook) -> ePub (Calibre). If Calibre supported PML input then the DropBook step could be skipped for input.  | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#22 | 
| 
			
			
			
			 Sigil & calibre developer 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,487 
				Karma: 1063785 
				Join Date: Jan 2009 
				Location: Florida, USA 
				
				
				Device: Nook STR 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			I haven't forgotten and it is on my todo list once I finish turning all of the device drivers into plugins. The main thing I need look into for PML input is how to best support images. I'm thinking of making it a sub-type of the zip input where images and PML files will be required to be in a zip file. While this is a bit more cumbersome than just feeding it the PML file it would allow for more flexibility (multiple pml files making up one book for instance).
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#23 | 
| 
			
			
			
			 Sigil & calibre developer 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,487 
				Karma: 1063785 
				Join Date: Jan 2009 
				Location: Florida, USA 
				
				
				Device: Nook STR 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			I just wanted to let every one know about the progress I've made with pml and ereader output.  
		
	
		
		
		
		
		
		
		
		
		
		
	
	PML input and output are both supported in 0.6. A zip file with the extension pmlz with pml and images is produced with output. A zip file with the extension pmlz can be used for input as well as a stand alone pml file. However, a stand alone pml file will have referenced images ignored. Use pmlz if you want images included. The big news is, I can create working text based ereader books. Images are not yet working but I hope to have that fixed by the end of today. Once I get everything working I will be adding the format information I've figured out to the wiki. The plan is to get a beta for 0.6 out later this month once it's released testing would be much appreciated.  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#24 | 
| 
			
			
			
			 Sigil & calibre developer 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,487 
				Karma: 1063785 
				Join Date: Jan 2009 
				Location: Florida, USA 
				
				
				Device: Nook STR 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			eReader output is finished and working. I've put the information regarding the file format on the wiki under the eReader section.
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#25 | 
| 
			
			
			
			 Wizard 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,671 
				Karma: 12205348 
				Join Date: Mar 2008 
				
				
				
				Device: Galaxy S, Nook w/CM7 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Very cool thank you for the update.  Let me know when/if you need some testers. 
		
	
		
		
		
		
		
		
		
		
		
		
	
	=X=  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
![]()  | 
            
        
            
            
  | 
    
			 
			Similar Threads
		 | 
	||||
| Thread | Thread Starter | Forum | Replies | Last Post | 
| Classic G:RSS: Optimized Google Reader (RSS) for the Nook [BETA Testers needed] | Fmstrat | Barnes & Noble NOOK | 24 | 12-28-2010 01:22 PM | 
| Ereader needed for my holiday | chickentaste | Which one should I buy? | 4 | 08-02-2010 11:12 AM | 
| eReader output SERIOUSLY flawed | JSWolf | Calibre | 16 | 03-21-2010 08:50 AM | 
| eReader output (pdb) has too much space on my iPhone | bthoven | Calibre | 7 | 10-27-2009 08:43 AM | 
| Web Browsing from the Ebw-1150 - BETA Testers needed | Nate the great | Fictionwise eBookwise | 26 | 09-22-2008 12:52 AM |