2014年2月28日 星期五

RU command line

RU provides command line interface but only few knows.  I personally use it a lot because sometimes using command is faster than navigating the cursor to change registers.

Command can be toggled with key `. 

You can use that key to toggle between main screen (registers) and command line below the screen (same line as clock is displayed).


Here is the commands listed in help (F1) screen:


  • o x, y
    Output value y to port x
    o 2e 55 - out 0x55 to port 0x2e
  • i x
    Input (read) value from port x
    i 40
    00 - value read is 00
  • w x,y
    Write value y to register #x
    w fe 0f - register #fe = 0xf
  • f [x,y] z
    Fill value z from register #x to #y
    x,y are optional, it will fill 256 bytes if x,y are not specified.
    f 55 - fill current page (256 bytes) with 0x55
    f 0,10 aa - fill 0xaa from register #0 to #10
  • g x
    Go to register #x, this change the cursor to register #x
  • s string
    Search string in the current page, case sensitive
    s AMI - search "AMI"
  • sv values
    Search hex values separated by space
    sv 01 22 ff - search value 0x01 0x02 0xff (from low to high address)
    sv ff2201 - search a dword (same as above 3 values)
  • sv be45 23 5c6912f3 - search 0x45 0xbe 0x23 0xf3 0x12 0x69 0x5c
  • q
    Quit RU
  • off
    Turn off the system
  • reboot
    Reboot to INT19 (DOS only)
  • up/down arrow
    Browse commands you used.  So you don't have to type the last command you used before.

2014年1月16日 星期四

How do I use RU to access SIO?

RU removed the SIO auto-detection because it is out of date (Updated: auto-detection is back: here).  However you can still access the SIO chip manually.  Usually you have to enter configuration mode for accessing SIO registers.  RU will call open config before accessing each SIO register and then close config.   You can use CTRL-O and CTRL-Y to instruct RU to do open and close config.  Here is an example how to read a SIO chip:

  1. ALT-2: ISA
    Select Index and Data port= 2e and 2f
  2. CTRL-O to open config (enter config) for SIO chip
    List the commands here to open config like:
    o 2e 87
    o 2e 1
    o 2e 55
    o 2e 55
    So the configuration sequence 87h,01h,55h,55h will be sent to port 2eh before read/write register.
    Update: You can use a more convenient way now:
    o 2e 87 1 55 55
  3. CTRL-Y to close config
    o 2e 2
    o 2f 2
    Then index 2 register will be set to 2 (BIT1=1) to close the config.
RU will call OpenConfig -> Read/Write register -> Call CloseConfig.
p.s. I plan to add back SIO auto-detection but it will take some time (which I don't have now).

2013年12月30日 星期一

RU.EFI+EXE 5.08.0163 beta

Major features:
  1. RU.EFI now accepts command line arguments just like RU.EXE. Type RU /? to display the supported commands.
  2. RU /D command
    It saves ACPI or SMBIOS data to file as requested by VW.  Command format is like below.  It saves the data in ASCII format.  Each ACPI table or SMBIOS type starting with a string like "RSDT" and then followed by hex values dumped.
    RU /d acpi filename
    RU /d smbios filename
  3. ALT-L
    This will display the human readable list of the registers just like the previous post.  You can see the SMBIOS also list the strings.  Use this to select the register you want instead of jump around the main register area by numbers.  For example, you can select the MBR signature then it will jump to offset 0x1fe of MBR.
  4. Fixed HDD identify (ALT-5) is not working with AHCI mode.  I believe it should work in most Intel boards.
Minor changes:
  1. Improved speed of saving memory to binary (SHIFT-F2) and register file (F2).  Now it only takes 1 second in usual cases.
  2. Save SMBIOS type with the exact size of that type instead of always 256 bytes.
  3. Fixed compare all PCI registers are not working since 5.07
  4. Added ACPI table details for HPET, MCFG, FPDT, DMAR, BGRT, SPCR, UEFI, TPM2, WDAT, WDRT, WPBT, DBGP, DBG2.  You can see that by TAB / SHIFT-TAB or ALT-L
  5. Added SMBIOS table details from SMBIOS spec 2.8.  You can see that by TAB/ SHIFT-TAB or ALT-L
  6. CTRL-C (close config) is changed to CTRL-Y.
  7. Fixed that RU hangs when F000 cleared (CSM enabled)
  8. SMBUS: Remove vendor selection.
  9. Fixed SMBUS was not working on some systems.
  10. Fixed clock generator access is not working on RoseCity platform.
  11. Fixed RU.EFI CTRL-D, CTRL-A is not working inside open/close config window.
  12. Improve SIO read/write speed.
  13. Fixed RU.EXE may hang for 20 minutes when RU.EXE starts. 
Again, RU could be buggy.  I did not test all the scenarios.  I can't guarantee what you read from RU is correct.
Download RU 5.08.0163 here
Password: 154670937