User Tools

Site Tools


pocket386:lcd_controller

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
pocket386:lcd_controller [2024/05/17 12:18] agiripocket386:lcd_controller [2024/05/19 22:38] (current) natalie
Line 5: Line 5:
 The Pocket 386's LCD drive board is based on the Realtek RTD2660. This controller in combination with its firmware supports a menu for adjusting basic display settings. However, unlike most similar LCD drive boards, the Pocket 386 does not have any controls directly connected to the board. Instead, key presses are intercepted by the base unit's keyboard controller, which then sends commands to the LCD controller. The Pocket 386's LCD drive board is based on the Realtek RTD2660. This controller in combination with its firmware supports a menu for adjusting basic display settings. However, unlike most similar LCD drive boards, the Pocket 386 does not have any controls directly connected to the board. Instead, key presses are intercepted by the base unit's keyboard controller, which then sends commands to the LCD controller.
  
-8086YES has not posted schematics or a PCB design file for the LCD drive board, so we must reverse engineer it to learn more about how it works.+The manufacturer has not posted schematics or a PCB design file for the LCD drive board, so we must reverse engineer it to learn more about how it works.
  
-Special note: I found firmware source for the Book 8088's LCD controller [[https://github.com/zhblue/RTD2660|here]]. It's unclear if this is the same as what's used in the Pocket 386. I ignored this and blackbox RE'd everything+Special note: I found firmware source for the Book 8088's LCD controller [[https://github.com/zhblue/RTD2660|here]]. It's unclear if this is the same as what's used in the Pocket 386. I ignored this and blackbox RE'd everything. A dump of the LCD controller's flash for safekeeping is available [[index|on the main Pocket 386 page here]].
  
 ===== Hardware ===== ===== Hardware =====
Line 19: Line 19:
 ==== Signals ==== ==== Signals ====
  
-  * **Red wire:** Active-low enable line for the LCD. Bringing this high will disconnect the H/Vsync and RGB lines from the LCD controller, through U7 (TS5V330 analog switch) and U8/U9 (74LVC1G125 buffers). Pulled up to the 3v3 reg's Vin through R5 (4k7)+  * **Red wire:** Active-low enable line for the LCD, used in external VGA mode. Bringing this high will disconnect the H/Vsync and RGB lines from the LCD controller, through U7 (TS5V330 analog switch) and U8/U9 (74LVC1G125 buffers). Pulled up to the 3v3 reg's Vin through R5 (4k7)
   * **Black wire:** TTL serial data from the keyboard controller. This is uni-directional to the LCD controller. As far as I know, the KBC is driving it at 5V levels. Tends to float around 4V when driven high. Pulled up to 3.3v through R20 (4k7)   * **Black wire:** TTL serial data from the keyboard controller. This is uni-directional to the LCD controller. As far as I know, the KBC is driving it at 5V levels. Tends to float around 4V when driven high. Pulled up to 3.3v through R20 (4k7)
  
Line 64: Line 64:
  
 The OSD also randomly goes corrupt in various ways. Sometimes the first time you open the OSD or S-OSD it will already be corrupt and unreadable. It's unclear why this happens... software bugs, power supply glitches, ...? The OSD also randomly goes corrupt in various ways. Sometimes the first time you open the OSD or S-OSD it will already be corrupt and unreadable. It's unclear why this happens... software bugs, power supply glitches, ...?
 +
 +===== PCB Shots =====
 +{{ :pocket386:img20240516053820.jpg?300 |}} {{ :pocket386:img20240516053841.jpg?300 |}} {{ :pocket386:img20240516053848.jpg?300 |}}
  
 ===== Acknowledgements ===== ===== Acknowledgements =====
-Thanks girlmux for their assistance.+Thanks caela for your assistance. 
pocket386/lcd_controller.1715948338.txt.gz · Last modified: 2024/05/17 12:18 by agiri