| 
			
			 | 
		#16 | 
| 
			
			
			
			 Uebermensch 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,583 
				Karma: 1094606 
				Join Date: Jul 2003 
				Location: Italy 
				
				
				Device: Kindle 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Great!!!! Will try later tonight   
		
	
		
		
		
		
		
		
		
		
		
		
	
	 
		 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#17 | 
| 
			
			
			
			 Addict 
			
			![]() ![]() Posts: 285 
				Karma: 129 
				Join Date: Sep 2006 
				Location: New England 
				
				
				Device: PRS-500 · iPad · K3 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Igor, 
		
	
		
		
		
		
		
		
		
		
		
		
	
	it works like a charm. Thank you!  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#18 | 
| 
			
			
			
			 Addict 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 364 
				Karma: 1035291 
				Join Date: Jul 2006 
				Location: Redmond, WA 
				
				
				Device: iPad Mini,Kindle Paperwhite 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			This is cool. I'll try convert your Python code to C# or (if the P/Invokes get too complex) C++ next week, and then modify my RSS2Book utility to be able to automatically sync new RSS content to the reader.
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#19 | |
| 
			
			
			
			 Recovering Gadget Addict 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 5,381 
				Karma: 676161 
				Join Date: May 2004 
				Location: Pittsburgh, PA 
				
				
				Device: iPad 
				
				
				 | 
	
	
	
		
		
		
		
		 Quote: 
	
  | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#20 | 
| 
			
			
			
			 Renaissance Man 
			
			![]() Posts: 45 
				Karma: 10 
				Join Date: Sep 2006 
				Location: Seattle 
				
				
				Device: Sony Reader 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Wow, simply amazing work - and the product has barely hit the streets! 
		
	
		
		
		
		
		
		
		
		
		
		
	
	Enormous possibilities here...  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#21 | 
| 
			
			
			
			 Wizard 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,442 
				Karma: 300001 
				Join Date: Sep 2006 
				Location: Belgium 
				
				
				Device: PRS-500/505/700, Kindle, Cybook Gen3, Words Gear 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			New version with write support. I only tested it by uploading random files in /tmp so, to prevent accidental bricking of the unit, enabling upload requires manual editing of the file. If you know a little programming you'll find what to change  
		
	
		
		
			 
		 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#22 | 
| 
			
			
			
			 Addict 
			
			![]() ![]() Posts: 285 
				Karma: 129 
				Join Date: Sep 2006 
				Location: New England 
				
				
				Device: PRS-500 · iPad · K3 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			wow  
		
	
		
		
		
		
		
		
		
		
		
		
	
	![]() I know what I want to change, but I'm too chicken to be first one  
		 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#23 | 
| 
			
			
			
			 e-bookviner 
			
			![]() Posts: 56 
				Karma: 10 
				Join Date: Aug 2006 
				
				
				
				Device: Sony PRS-505, iPodTouch 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Can someone explain a bit more about how to use the ebook.py? I downloaded the python windows binary and installed it in my computer. I read some tutorial from the Python site; but still not certain about executing the command using the ebook.py. Can we add more fonts with the new version of the program?
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#24 | 
| 
			
			
			
			 Wizard 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,442 
				Karma: 300001 
				Join Date: Sep 2006 
				Location: Belgium 
				
				
				Device: PRS-500/505/700, Kindle, Cybook Gen3, Words Gear 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Process tree on my Reader: 
		
	
		
		
		
		
		
		
		
		
		
		
	
	Code: 
	1 init
  2 keventd
  7 mtdblockd
  29 msbdrv_thread
  31 sdbdrv_thread
  47 jffs2_gcd_mtd15
  49 jffs2_gcd_mtd16
  121 tinyhttp.sh
    125 tinyhttp
      126 tinyhttp
          127 tinyhttp
          128 tinyhttp
          130 tinyhttp
          131 tinyhttp
          145 tinyhttp
          147 tinyhttp
          148 tinyhttp
  123 getty
3 ksoftirqd_CPU0
4 kswapd
5 bdflush
6 kupdated
 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#25 | 
| 
			
			
			
			 Addict 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 364 
				Karma: 1035291 
				Join Date: Jul 2006 
				Location: Redmond, WA 
				
				
				Device: iPad Mini,Kindle Paperwhite 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Igor, my knowledge of Python is very rudimentary. I can understand basic stuff but I'm a bit fuzzy when trying to parse the way you interface with UsbReceiveProc and UsbSendProc. Clearly the first parameter is a request index but after that it looks like you're passing in a struct, and some variable length data. Can you explain it a bit to someone who's more familiar with C?
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#26 | 
| 
			
			
			
			 Wizard 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,442 
				Karma: 300001 
				Join Date: Sep 2006 
				Location: Belgium 
				
				
				Device: PRS-500/505/700, Kindle, Cybook Gen3, Words Gear 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Is this better? 
		
	
		
		
		
		
		
		
		
		
		
		
	
	Code: 
	struct Request {
 DWORD reqNo;
 DWORD reserved[2];
 DWORD extralen;
};
struct Answer {
 DWORD reserved[3];
 DWORD dataLen;
 char  data[1]; //variable length
};
struct SendBuffer {
 DWORD type; //0x10005 for WriteFile
 DWORD reserved[2];
 DWORD dataLen;
 char  data[1]; //variable length
};
int UsbReceiveProc(Request* request, size_t answersize, Answer* answer);
void UsbBuffFree(Answer* answer);
int UsbSendProc(Request* request, SendBuffer* buf, size_t sendsize, DWORD* bytesSent);
Code: 
	struct FileOpenRequest: Request {
 DWORD nPathLen;
 char path[1]; //variable length
};
struct FileOpenAnswer: Asnswer {
 DWORD hFile;
};
 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#27 | 
| 
			
			
			
			 Addict 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 364 
				Karma: 1035291 
				Join Date: Jul 2006 
				Location: Redmond, WA 
				
				
				Device: iPad Mini,Kindle Paperwhite 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Thanks, that is helpful. Looks like this will be a bitch to code in C# with P/Invoke; I'll probably have to write a native C shim layer.
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#28 | |
| 
			
			
			
			 Fanatic 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 556 
				Karma: 1057213 
				Join Date: Sep 2006 
				Location: North Eastern U.S. 
				
				
				Device: Sony Reader 
				
				
				 | 
	
	
	
		
		
		
		
		 Quote: 
	
   Just in case you added a file to the place, from where it will not be automatically deleted on reboot.Hopefully, at some point someone will start messing with the TTF fonts, and go ahead and replace them, and the problem of cyrillic support will be more or less solved. BTW, how come we don't see Igor and Slava at the Russian E-Book forums?     
		 | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#29 | 
| 
			
			
			
			 Wizard 
			
			![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,442 
				Karma: 300001 
				Join Date: Sep 2006 
				Location: Belgium 
				
				
				Device: PRS-500/505/700, Kindle, Cybook Gen3, Words Gear 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Yeah I will add delete support too. However, you can already start messing with fonts on PC, as the core code is almost the same on both platforms. The fonts configuration is specified in kconfig.xml, element fsk/rootvm/ui/font. I tried editing it a bit but could not make Russian working. Maybe someone else will succeed.
		 
		
	
		
		
		
		
		
		
		
		
		
		
	
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#30 | 
| 
			
			
			
			 Addict 
			
			![]() ![]() Posts: 285 
				Karma: 129 
				Join Date: Sep 2006 
				Location: New England 
				
				
				Device: PRS-500 · iPad · K3 
				
				
				 | 
	
	
	
		
		
		
		
		 
			
			Adding new font didn't help much, even with updating kconfig.xml. Also, Reader (and CONNECT) seems to use Times style font by default. 
		
	
		
		
		
		
		
		
		
		
		
		
	
	Another thought. One could upload new RC script to init.d to run custom commands when Reader reboots, any volunteers ?-)  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
![]()  | 
            
        
            
            
  | 
    
			 
			Similar Threads
		 | 
	||||
| Thread | Thread Starter | Forum | Replies | Last Post | 
| PRS-500 Reader Internals 2.0 (pics!) | lint | Sony Reader Dev Corner | 60 | 11-18-2013 09:25 AM | 
| Kindle DX Internals | revilo | Amazon Kindle | 0 | 06-15-2009 05:50 AM | 
| Kindle 2 Internals | JSWolf | Amazon Kindle | 19 | 02-27-2009 03:45 PM | 
| PRS-500 Connect internals | igorsk | Sony Reader Dev Corner | 1 | 10-12-2006 05:50 AM | 
| iLiad Iliad internals | ali | iRex Developer's Corner | 39 | 07-21-2006 05:28 AM |