Memory reading as DDR200?

Hey all, I have 4gb of Corsair XMS DDR400 installed, (only accepts 3gb though) on my K8N Diamond Plus. Originally it read as DDR333 in the bios, and now it is reading as DDR200. What's the deal? What should I do?

Quote from: spitfire909x on 07-May-06, 14:56:29
(only accepts 3gb though) on my K8N Diamond Plus.
Standard PC Architecture System Resources require addressing which overlaps physical memory below 4 GB:
ĄVSystem BIOS
ĄVMotherboard Resources
ĄVMemory Mapped I/O
ĄVPCI Express* Configuration Space
ĄVAdditional PCI Device Memory (Graphics Aperture)
ĄVVGA Memory
ĄVEtc...
This limitation applies to most chipsets & Windows XP 32-bit version operating system.
If more than 3GB memory is required for your system, then below two requirements must be met to:
(1). The memory controller which supports memory swap functionality is used. The latest chipsets like Intel 975X, 955X, Nvidia NF4 Ultra, Nvidia NF4, Nvidia Nforce4-4X, and AMD K8 CPU architecture can support the memory swap function.
(2). Windows XP Pro X64 Ed. (64-bit) or other OS which can address more than 4GB memory.
Quote from: spitfire909x on 07-May-06, 15:03:30
Well, for some reason it's reading as DDR333 again. I still want to get it to DDR400 though! (Voltage is set at 3.00, where should it be?)
I guess your memory modules are Double side. If so, it could only run at DDR333 due to the memory controller integrated in CPU. You could find the memory combination tab in the manual.
Quote from: spitfire909x on 07-May-06, 15:03:30
Also.. what should PCI-E freq, and voltage be at? Using (2) Geforce 7900 GT. For some reason I feel like all my settings are whacked. My CPU fsb doesnt seem right, I'm using a 4200+ x2, and it's at 200. Is that right? Sorry for all the noob questions, just want to get this computer up to optimal performance.
It is OK just to keep the settings as default. Load setup/optimized defaults.
It is appreciated to creat your rig if you have any further problems so that others could understand your problem more easily.

Similar Messages

  • DSP memory read error.

    Hi everyone. i have a question regarding the dsk c6713. i try to create a program in labview 8.6 with dsp module, but when i try to run, an error message appears as
    "DSP memory read error. The target hardware is no longer responding. Please verify that the hardware is functioning properly and retry the VI.  Select an item from the list to see its errors. Double-click the error, or click the Show Error button, to highlight the object causing the error. You must click the Close button in this window before you can click the Run button on the VI again".
    I have searched on the internet regarding the problem, but it seems cant solve my problem. FYI, im not installing the dsk c6713 driver yet because my lecturer misplaced the cd driver + no driver can be found online. Can anyone suggest any solutions? Thank you in advance.

    I have the same problem.
    "DSP memory read error. The target hardware is no longer responding. Please verify that the hardware is functioning properly and retry the VI."

  • Speedy 33におけるmemory read error

    Labview8.5 + Labview DSP module
    OS:Windows XP (SP2)
    において
    DSP (NI-Speedy 33)を動作させようとしています.
    上記ソフトとドライバをインストールし,動作確認のため
    SampleコードであるBlink LED.viをRunしたところ,
    コンパイルの後,Speedy 33にダウンロードしようとした下記の段階でエラーが出てとまります,
    The build was unsuccessful.
    Error: DSP memory read error. The target hardware is no longer responding. Please verify that the hardware is functioning properly and retry the VI.
    ハード上のPower LEDとDigital Output Port LEDsが点灯した状態です.
    どのように現状を打開すればよろしいでしょうか?
    よろしくお願いいたします.

    平素よりNI製品をご利用頂きまして誠に有難うございます。
    日本ナショナルインスツルメンツ技術部 下田と申します。
    LabVIEW DSPモジュール等、組み込み系製品のサポートにつきましては、英語版ディスカッションフォーラムへの投稿、またはWebの資料を参照するといったWebサイトサポートのみとなりますので、本ボードでは質問をお受け致しかねます。
    誠に恐縮ではございますが、LabVIEW Embeddedボード(英語)に再度のご投稿をお願い申し上げます。
    サポートポリシーにつきましてご不明な点等ございましたら、弊社営業部までご連絡下さい。
    以上、お手数かとは存じますがご理解、ご協力の程宜しくお願い申し上げます。

  • Poor reflective memory read performanc​e

    I'm having some trouble with the GE 5565 PIORC reflective memory set of VIs for use with our reflective memory setup. I need to copy a pretty sizable chunk of memory out of reflective memory and into a DLL I've written, but the performance on the "GE 5565 PIORC:GE5565 Read (Cluster).vi" is not where I need it. I need to copy somewhere in the realm of 12k out of reflective memory at a high frequency, but the call to read those 12k takes longer than the period I need to gather the data at. I apologize in advance for the image-heavy post, but I think it's worth it to show what I've got.
    Here's a picture of my setup to benchmark the Read call runtime: 
    Here's a graph of runtimes of that Read call, in microseconds:
    I need it to run in way less than 16 ms, which doesn't seem unreasonable to me for only 12k. I did fool around with the DMA version of the Read (which I don't really understand, and the documentation is nonexistent as far as I can tell). Here's my test setup:
    And here's a chart similar to the one above:
    Way better, though I have no idea if it even does what I think it should So, I have a few questions. First, is there any way to get better performance out of that Read VI? Some other library I should be using, some setting I should be setting, some other way I should be benchmarking its performance, maybe even some way of doing this with another DLL? Second, if the Read can't achieve the performance I need, what's up with the DMA version, and how would I use it properly? Is the performance advantage that it appears to be giving real, or just an artifact of some mistaken way in which I'm using it? Thanks!

    Hi dgoes
    Windows is not a deterministic operating system so the loop cycle time that you are getting might be the best time that the windows system can achieve. In order to benchmark your code you can also use the input node and the output node of the timed loop. Check the following link.
    Timed Loop
    But it will be nice to know if you are working on a real time operating system or windows? Because unfortunately the windows operating system is not a deterministic system so the time loop might not work as expected. Here are a couple of links with information about this.
    windows 1KHz time loop limitation reason
    What is a Real-Time Operating System (RTOS)?
    Which driver are you using for the GE 5565 PIORC? Is it this one?
    GE 5565 PIORC
    If it is, please notice that this driver is neither supported nor certified by National Instruments. This card is supported with NI VeriStand. Please check the information on the following links.
    Getting Started With the GE cPCI-5565PIORC Reflective Memory Module
    GE cPCI-5565PIORC
    I hope that this information answer your questions.
    Regards
    Esteban R.

  • Memory read error causes crash, cause unknown?

    I've been getting the error below at various times, usually after I've been working for a while without saving. It appears to be random. Does anyone know what kinds of things might trigger this? Is there a fix?
    FormDesigner.exe - Application Error
    The instruction at "0x022221b2" referenced memory at "0x0000001c". The memory could not be "read".
    I haven't noticed any patterns with when it occurs. It's very frustrating, to say the least. Especially for such an expensive piece of software that I expect to be reliable.
    Thanks,
    Chris

    Acrobat Prof 7.0.5 update is now available. You can try to install the new update to see if the problem still exist.

  • LabVIEW for memory read/write?

    I know LabVIEW has In Port / Out Port vi for the I/O space read /
    write. I am wondering if LabVIEW has read/write memory vi? As we know,
    Windows 2000/XP do not allow to read/write I/O port and memory
    directly from user level(kernel level is OK).

    May be this post can be of interest to you (I haven't try this myself but it looks like a solution). Hope this helps.

  • 560ti Hawk Memory reading very high.

    Hello Svet,
    I'm also having problems with my memory temp reading abnormally high. 560ti Hawk.
    I see you are helping people with a custom vBIOS? What is the change that you are doing and is it basically cosmetic or does it have a deeper function. For instance, is the high memory temperature reported by MSI Afterburner correct? Can it cause the computer/vid card to bug out/shutdown? Does your update hopefully fix that?
    Where can I find my serial number and why do you need it? I looked through the faqs and couldn't find this info.
    My card bios info that I could find via NiBiTor
    Device ID 1200
    Sub vender ID 1462
    Sub System ID 2601
    My Bios version is: 70.24.2E.00.002
    Thanks for any help you can give me, sorry I thought using other threads would help reduce clutter.

    Quote
    I'm also having problems with my memory temp reading abnormally high. 560ti Hawk.
    I see you are helping people with a custom vBIOS? What is the change that you are doing and is it basically cosmetic or does it have a deeper function. For instance, is the high memory temperature reported by MSI Afterburner correct? Can it cause the computer/vid card to bug out/shutdown? Does your update hopefully fix that?
    no that's official updates.
    Quote
    Where can I find my serial number and why do you need it?
    you can find it at vga backside, example:
    i need this to give you the proper vbios

  • Added Memory Read as 3200, not 6400?

    I recently added 8 gigs of 5400 ddr2 Crucial memory to my powermac g5 dual core. However, in About This Mac, the memory only reads as 3200 speed. Why would this happen? I removed all old memory so there is only 5400 memory in the machine now. Thanks

    Hi Rich, you don't say which exact G5/2.0 GHz you have, (there are 3 different ones), but 2 of those Models will read 3200 & one 4200 no matter what the potential DDR is, it's the Mac's HW that limits it, this being said, it may or may not have a lower CAS rate than standard PC3200 RAM.
    http://eshop.macsales.com/item/Other%20World%20Computing/3200DDR2GBP/
    http://eshop.macsales.com/item/Other%20World%20Computing/3200DDR2GBP/
    http://eshop.macsales.com/item/Other%20World%20Computing/42DDR2PAIR4G/
    In other words, ot's not going to read higher than your Mac can handle/set up.

  • Memory reading as 166mhz on a K7N2 Delta2

    Hi,
    I have just installed an K7N2 Delta2 mobo into a case with a 333mhz XP-3000 and put a couple of strips of DDR333 PC2700 memory.
    I am having problems with installing Windows XP with file copying errors and blue screens at random.
    Something I noticed before I go down the route of new PSU, BIOS etc is that the memory on the boot screen is saying DDR at 166mhz in Dual Channel Mode.  Should this not read DDR at 333mhz.
    I have tried some other memory (crucial) becasue I know that the current memory is only value stuff and this Crucial memory fails to allow me to install XP also.
    Should DDR333 memory be seen as 166mhz on the post screen?

    Hi,
    Thanks BOSSKILLER.
    I have found the memory test to show up thousands of errors so replaced with another type which doesn't error and it still fails to install XP.  The only way I had to get around it and for it to be fine is to set the CPU to "By SPD" and that then works.
    Interestingly, I put the failed memory into a MSI KM4M-L board and ran the memory test and it doesn't error.  I am writing this response with a machine using this failed memory.  It seems like a compatibility issue.
    I still have "DDR at 166mhz" on the post screen so if thats right then I'm done.
    Thanks for your help.

  • Memory Read/Write (LabView)

    I'm trying to do something that is probably simple but I seem to be missing something. I need to read and write to a memory location (such as 0D00:0000) through LabView. I have downloaded accessHW (Port and Memory Utilities for Windows) but it still doesn't seem to work. I checked and the cvirte.dll and accessHW.dll are loaded when I run LabView (6.0). Any clues?

    Try using the read port and write port functions native to LabVIEW. They are under the advanced palette in Port VIs. They are called In Port and Out Port, and read and write to memory locations.
    However...I have not been successful in using these very well, probably because I haven't a clue about writing manually to the memory locations.
    Good luck, and please let everyone know how you do.

  • What type of SDHC Memory Reader do I need to transfer 32g of pictures to Iphoto?

    I have a MAC OS X 10.5.8 computer . Can I transfer 32Gig of pictures with  seperate SDHC Card Reader?

    Of course. If you have a SDHC card, you just have to buy a reader and connect it to your computer. Then, open iPhoto, choose the SDHC card in the sidebar and copy the pictures you need

  • Memory read for follow up transaction

    Hi ,
    Can anyone please help me how to capture memory value for follow up transaction? Here is my busniess case:
    1) User creates Lead
    2) From Lead, using manual follow up user creates Order
    3) When you are creating order as a follow up system gives pop-up asking to save the lead, if yes then lead will be saved and order will be created.
    4) My requirment here is When user click on "Yes", I would like to change my qualification to blank, if qualification level is other than "blank".
    How to capture "YES" from memory to change qualification level.
    Any thoughts? Thanks for your time.
    Thanks,
    Ajay

    Agree but my question is how to capture "yes" value from pop up screen in CRM_ORDER_SAVE BADI?
    Thanks,
    Ajay

  • Slight static during major memory read/write

    It just started doing this. Random static comes on whenever I load a big program like firefox. Stops as soon as firefox is done loading. (not a page, the application)
    Does the same thing for other programs like openoffice.

    The enterprise manager said the the datafile needs recovery but when I execute the recover I receive:
    638.1497.793881221 thread=3 sequence=638
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of recover command at 09/13/2012 10:45:57
    ORA-00283: recovery session canceled due to errors
    RMAN-11003: failure during parse/execution of SQL statement: alter database recover logfile '+RECOVERYREP/dpctrdb/archivelog/2012_09_13/thread_3_seq_638.1497.793881221'
    ORA-00283: recovery session canceled due to errors
    ORA-10562: Error occurred while applying redo to data block (file# 7, block# 3282782)
    ORA-10564: tablespace MDBE2ES3TBS
    ORA-01110: data file 7: '+DATAREP/dpctrdb/datafile/mdbe2es3.274.789498073'
    ORA-10560: block type '0'
    ORA-00600: internal error code, arguments: [4553], [2], [0], [], [], [], [], [], [], [], [], []

  • Java - Write And Read From memory Like CheatEngine ( Writing not working?)

    Hello Oracle Forum
    I came here some time ago to ask about javaFX , i solved all my issues and im right now waiting for javaFx tot ake over swing and hmm, im working on learning LIBGDX to create games in java.
    However, im in need to create an app to change values of memory to fix a bug in an old program that i have, and the only way until now is using cheatEngine, So i decided to take a tutorial and learn how to do that in java.
    Well, im able to read from the memory but the write isnt working somehow... Im posting the code here, if anyone can give me a hint, i would thank and a lot, because theres a community that really needs this app to automate the fix without using cheat engine.
    package MainStart;
    import com.br.HM.User32;
    import com.br.kernel.Kernel32;
    import com.sun.jna.Memory;
    import com.sun.jna.Native;
    import com.sun.jna.Pointer;
    import com.sun.jna.ptr.IntByReference;
    public class Cheater {
        static Kernel32 kernel32 = (Kernel32) Native.loadLibrary("kernel32", Kernel32.class);
        static User32 user32 = (User32) Native.loadLibrary("user32", User32.class);
        static int readRight = 0x0010;
        static int writeRight = 0x0020;
        //static int PROCESS_VM_OPERATION = 0x0008;
        public static void main(String[] args) {
            //Read Memory
            //MineSweeper = Campo Minado
            int pid = getProcessId("Campo Minado"); // get our process ID
            System.out.println("Pid = " + pid);
            Pointer readprocess = openProcess(readRight, pid); // open the process ID with read priviledges.
            Pointer writeprocess = openProcess(writeRight, pid);
            int size = 4; // we want to read 4 bytes
            int address = 0x004053C8;
            //Read Memory
            Memory read = readMemory(readprocess, address, size); // read 4 bytes of memory starting at the address 0x00AB0C62.
            System.out.println(read.getInt(0)); // print out the value!      
            //Write Memory
            int writeMemory = writeMemory(writeprocess, address, new short[0x22222222]);
            System.out.println("WriteMemory :" + writeMemory);
            Memory readM = readMemory(readprocess, address, size);
            System.out.println(readM.getInt(0));
        public static int writeMemory(Pointer process, int address, short[] data) {
            IntByReference written = new IntByReference(0);
            Memory toWrite = new Memory(data.length);
            for (long i = 0; i < data.length; i++) {
                toWrite.setShort(0, data[new Integer(Long.toString(i))]);
            boolean b = kernel32.WriteProcessMemory(process, address, toWrite, data.length, written);
            System.out.println("kernel32.WriteProcessMemory : " + b); // Retorna false
            return written.getValue();
        public static Pointer openProcess(int permissions, int pid) {
            Pointer process = kernel32.OpenProcess(permissions, true, pid);
            return process;
        public static int getProcessId(String window) {
            IntByReference pid = new IntByReference(0);
            user32.GetWindowThreadProcessId(user32.FindWindowA(null, window), pid);
            return pid.getValue();
        public static Memory readMemory(Pointer process, int address, int bytesToRead) {
            IntByReference read = new IntByReference(0);
            Memory output = new Memory(bytesToRead);
            kernel32.ReadProcessMemory(process, address, output, bytesToRead, read);
            return output;
    package com.br.HM;
    import com.sun.jna.Native;
    import com.sun.jna.Pointer;
    import com.sun.jna.Structure;
    import com.sun.jna.platform.win32.WinDef.RECT;
    import com.sun.jna.ptr.ByteByReference;
    import com.sun.jna.ptr.IntByReference;
    import com.sun.jna.win32.StdCallLibrary.StdCallCallback;
    import com.sun.jna.win32.W32APIOptions;
    * Provides access to the w32 user32 library. Incomplete implementation to
    * support demos.
    * @author Todd Fast, [email protected]
    * @author [email protected]
    public interface User32 extends W32APIOptions {
        User32 INSTANCE = (User32) Native.loadLibrary("user32", User32.class, DEFAULT_OPTIONS);
        Pointer GetDC(Pointer hWnd);
        int ReleaseDC(Pointer hWnd, Pointer hDC);
        int FLASHW_STOP = 0;
        int FLASHW_CAPTION = 1;
        int FLASHW_TRAY = 2;
        int FLASHW_ALL = (FLASHW_CAPTION | FLASHW_TRAY);
        int FLASHW_TIMER = 4;
        int FLASHW_TIMERNOFG = 12;
        public static class FLASHWINFO extends Structure {
            public int cbSize;
            public Pointer hWnd;
            public int dwFlags;
            public int uCount;
            public int dwTimeout;
        int IMAGE_BITMAP = 0;
        int IMAGE_ICON = 1;
        int IMAGE_CURSOR = 2;
        int IMAGE_ENHMETAFILE = 3;
        int LR_DEFAULTCOLOR = 0x0000;
        int LR_MONOCHROME = 0x0001;
        int LR_COLOR = 0x0002;
        int LR_COPYRETURNORG = 0x0004;
        int LR_COPYDELETEORG = 0x0008;
        int LR_LOADFROMFILE = 0x0010;
        int LR_LOADTRANSPARENT = 0x0020;
        int LR_DEFAULTSIZE = 0x0040;
        int LR_VGACOLOR = 0x0080;
        int LR_LOADMAP3DCOLORS = 0x1000;
        int LR_CREATEDIBSECTION = 0x2000;
        int LR_COPYFROMRESOURCE = 0x4000;
        int LR_SHARED = 0x8000;
        Pointer FindWindowA(String winClass, String title);
        int GetClassName(Pointer hWnd, byte[] lpClassName, int nMaxCount);
        public static class GUITHREADINFO extends Structure {
            public int cbSize = size();
            public int flags;
            Pointer hwndActive;
            Pointer hwndFocus;
            Pointer hwndCapture;
            Pointer hwndMenuOwner;
            Pointer hwndMoveSize;
            Pointer hwndCaret;
            RECT rcCaret;
        boolean GetGUIThreadInfo(int idThread, GUITHREADINFO lpgui);
        public static class WINDOWINFO extends Structure {
            public int cbSize = size();
            public RECT rcWindow;
            public RECT rcClient;
            public int dwStyle;
            public int dwExStyle;
            public int dwWindowStatus;
            public int cxWindowBorders;
            public int cyWindowBorders;
            public short atomWindowType;
            public short wCreatorVersion;
        boolean GetWindowInfo(Pointer hWnd, WINDOWINFO pwi);
        boolean GetWindowRect(Pointer hWnd, RECT rect);
        int GetWindowText(Pointer hWnd, byte[] lpString, int nMaxCount);
        int GetWindowTextLength(Pointer hWnd);
        int GetWindowModuleFileName(Pointer hWnd, byte[] lpszFileName, int cchFileNameMax);
        int GetWindowThreadProcessId(Pointer hWnd, IntByReference lpdwProcessId);
        interface WNDENUMPROC extends StdCallCallback {
             * Return whether to continue enumeration.
            boolean callback(Pointer hWnd, Pointer data);
        boolean EnumWindows(WNDENUMPROC lpEnumFunc, Pointer data);
        boolean EnumThreadWindows(int dwThreadId, WNDENUMPROC lpEnumFunc, Pointer data);
        boolean FlashWindowEx(FLASHWINFO info);
        Pointer LoadIcon(Pointer hInstance, String iconName);
        Pointer LoadImage(Pointer hinst, // handle to instance
                String name, // image to load
                int type, // image type
                int xDesired, // desired width
                int yDesired, // desired height
                int load // load options
        boolean DestroyIcon(Pointer hicon);
        int GWL_EXSTYLE = -20;
        int GWL_STYLE = -16;
        int GWL_WNDPROC = -4;
        int GWL_HINSTANCE = -6;
        int GWL_ID = -12;
        int GWL_USERDATA = -21;
        int DWL_DLGPROC = 4;
        int DWL_MSGRESULT = 0;
        int DWL_USER = 8;
        int WS_EX_COMPOSITED = 0x20000000;
        int WS_EX_LAYERED = 0x80000;
        int WS_EX_TRANSPARENT = 32;
        int GetWindowLong(Pointer hWnd, int nIndex);
        int SetWindowLong(Pointer hWnd, int nIndex, int dwNewLong);
        int LWA_COLORKEY = 1;
        int LWA_ALPHA = 2;
        int ULW_COLORKEY = 1;
        int ULW_ALPHA = 2;
        int ULW_OPAQUE = 4;
        boolean SetLayeredWindowAttributes(Pointer hwnd, int crKey,
                byte bAlpha, int dwFlags);
        boolean GetLayeredWindowAttributes(Pointer hwnd,
                IntByReference pcrKey,
                ByteByReference pbAlpha,
                IntByReference pdwFlags);
         * Defines the x- and y-coordinates of a point.
        public static class POINT extends Structure {
            public int x, y;
         * Specifies the width and height of a rectangle.
        public static class SIZE extends Structure {
            public int cx, cy;
        int AC_SRC_OVER = 0x00;
        int AC_SRC_ALPHA = 0x01;
        int AC_SRC_NO_PREMULT_ALPHA = 0x01;
        int AC_SRC_NO_ALPHA = 0x02;
        public static class BLENDFUNCTION extends Structure {
            public byte BlendOp = AC_SRC_OVER; // only valid value
            public byte BlendFlags = 0; // only valid value
            public byte SourceConstantAlpha;
            public byte AlphaFormat;
        boolean UpdateLayeredWindow(Pointer hwnd, Pointer hdcDst,
                POINT pptDst, SIZE psize,
                Pointer hdcSrc, POINT pptSrc, int crKey,
                BLENDFUNCTION pblend, int dwFlags);
        int SetWindowRgn(Pointer hWnd, Pointer hRgn, boolean bRedraw);
        int VK_SHIFT = 16;
        int VK_LSHIFT = 0xA0;
        int VK_RSHIFT = 0xA1;
        int VK_CONTROL = 17;
        int VK_LCONTROL = 0xA2;
        int VK_RCONTROL = 0xA3;
        int VK_MENU = 18;
        int VK_LMENU = 0xA4;
        int VK_RMENU = 0xA5;
        boolean GetKeyboardState(byte[] state);
        short GetAsyncKeyState(int vKey);
    package com.br.kernel;
    import com.sun.jna.*;
    import com.sun.jna.win32.StdCallLibrary;
    import com.sun.jna.ptr.IntByReference;
    // by deject3d
    public interface Kernel32 extends StdCallLibrary
        // description from msdn
        //BOOL WINAPI WriteProcessMemory(
        //__in   HANDLE hProcess,
        //__in   LPVOID lpBaseAddress,
        //__in   LPCVOID lpBuffer,
        //__in   SIZE_T nSize,
        //__out  SIZE_T *lpNumberOfBytesWritten
        boolean WriteProcessMemory(Pointer p, int address, Pointer buffer, int size, IntByReference written);
        //BOOL WINAPI ReadProcessMemory(
        //          __in   HANDLE hProcess,
        //          __in   LPCVOID lpBaseAddress,
        //          __out  LPVOID lpBuffer,
        //          __in   SIZE_T nSize,
        //          __out  SIZE_T *lpNumberOfBytesRead
        boolean ReadProcessMemory(Pointer hProcess, int inBaseAddress, Pointer outputBuffer, int nSize, IntByReference outNumberOfBytesRead);
        //HANDLE WINAPI OpenProcess(
        //  __in  DWORD dwDesiredAccess,
        //  __in  BOOL bInheritHandle,
        //  __in  DWORD dwProcessId
        Pointer OpenProcess(int desired, boolean inherit, int pid);
        /* derp */
        int GetLastError();
    http://pastebin.com/Vq8wfy39

    Hello there,
    this tutorial was exactly what I needed, so thank you.
    Your problem seems to be in this line:
    int writeMemory = writeMemory(writeprocess, address, new short[0x22222222]); 
    The problem is, you're creating a new short array with the length of 0x22222222. Which not only results in an java.lang.OutOfMemoryError: Java heap space
    but also, if it would work, would create an empty array with the length of 0x22222222.
    I think you want to write 0x22222222 as value in your address.
    Correctly stored the code you'd need to write would be:
    short[] sarray = new short[]{(short) 0x22222222};
    But because the value is too long for the short, the value stored in your array would be the number 8738.
    I think, what you want to do is to store the number 572662306, which would be the hex value, stored in an int variable.
    So first of all you need to strip down your hex-value to shorts:
    Short in Java uses 16 Bit = 2 Byte. 0x22222222 -> 0x2222 for your high byte and 0x2222 for your low byte
    So your array would be
    short[] sarray = new short[]{0x2222,0x2222};//notice, that sarray[0] is the lowbyte and sarray[1] the high byte, if you want to store 20 it would be new short[]{20,0} or if you use hex new short[]{0x14,0x00}
    The next part is your writeToMemory Method. If I'm right, the method in the tutorial is a little bit wrong. The right version should be this:
    public static int writeMemory(Pointer process, int address, short[] data) {
      IntByReference written = new IntByReference(0);
      int size = data.length*Short.SIZE/8;
      Memory toWrite = new Memory(size);
      for (int i = 0; i < data.length; i++) {
      toWrite.setShort(i*Short.SIZE/8,
      data[i]);
      boolean b = kernel32.WriteProcessMemory(process, address, toWrite,
      size, written);
      return written.getValue();
    You need to calculate your offset right. And the size of your memory. Maybe you could write this method not with shorts, but with integers. But this should work.
    If you pass your new array to this function, it should write 0x22222222 to your adress. If you read out your toWrite value with toWrite.getInt(0) you get the right value.
    And there is one more thing. In order to write data to a process, you need to grant two access rights:
    A handle to the process memory to be modified. The handle must have PROCESS_VM_WRITE and PROCESS_VM_OPERATION access to the process.
    You have to grant the right to write data: PROCESS_VM_WRITE: 0x0020 and PROCESS_VM_OPERATION: 0x0008
    So your writeProcess needs to get initialized this way:
    Pointer writeprocess = openProcess(0x0020|0x0008,pid);
    I hope this works for you. Let me know.
    Greetings
    Edit:
    Because every data you write will be 1 byte to whatever count of byte I think the best way is to use the following method to write data to the memory:
    public static void writeMemory(Pointer process, long address, byte[] data)
      int size = data.length;
      Memory toWrite = new Memory(size);
      for(int i = 0; i < size; i++)
      toWrite.setByte(i, data[i]);
      boolean b = kernel32.WriteProcessMemory(process, address, toWrite, size, null);
    You can see some changes. First I changed all address values from int to long, because some addresses are out of range. And with all, i mean all. Not only in writeMemory, but also in readMemory and in your kernel32 Class.
    Second I don't use the IntByReference anymore..
    To use this method you need to store your data the following way if you would write 4 Byte data:
    byte[] values = new byte[]{0x14,0x00,0x00,0x00};
    This value would be the number 20. Index 0 will be the lowest byte and index 3 will be the highest byte.
    And one more thing I wrote is an method which you can use to calculate your address if you have a baseAddress.
    If you restart your program/game your old addresses won't point at the same values of your game. With some research (I use CheatEngine) you can get the baseaddress. This one will alway be the same.
    To get from your baseaddress to the dynamic adress you use offsets.
    public static long findDynAddy(Pointer process, int[] offsets, long baseAddress)
      long pointer = baseAddress;
      int size = 4;
      Memory pTemp = new Memory(size);
      long pointerAddress = 0;
      for(int i = 0; i < offsets.length; i++)
      if(i == 0)
      kernel32.ReadProcessMemory(process, pointer, pTemp, size, null);
      pointerAddress = ((pTemp.getInt(0)+offsets[i]));
      if(i != offsets.length-1)
      kernel32.ReadProcessMemory(process, pointerAddress, pTemp, size, null);
      return pointerAddress;
    This methods gets a process, an array of offsets (hex-values) and your baseadress and returns the dynamic address.
    For Solitaire the following code would give you the address to the score:
    long baseAddr = 0x10002AFA8L;
      int[] offsets = new int[]{0x50,0x14};
      long addr = findDynAddy(process, offsets, baseAddr);
    If somebody wants to get the whole code (user32, kernel32 and the cheater) just pm me and I will give you a link.

  • Can't open SD memory with external memory card reader.

    I have a SD memory disk i use with my camera.  I have connected to an external card reader and my macbook air has been able to open the disk in the past.
    Not sure why, but now it gives me a popup error saying "Disk was not ejected properly.".  I've tried rebooting the macbook, and disconnecting and reconnecting the USB memory reader.  But it didn't fix the problem.  The popup is constantly poping up and I can't view files in the card. 
    This same disk using the same card reader can be open using a Windows PC.  I can see all the pictures on the memory card.
    Please tell me how to get the macbook to recognize this SD memory disc again.

    Hi,
    See this below link.
    [http://help.sap.com/saphelp_nw04/helpdata/en/12/bb0a412a06f023e10000000a155106/frameset.htm]
    [Shared memory error with jcmon;
    Thanks,
    Shambo

Maybe you are looking for

  • Can I open a new browser window from a movie clickbox

    Hi, This is a last question from me, I hope. (I'm within a month of delivery, and my boss keeps saying 'a user's asked for this or that', but I'm meeting many of their requests with technical obstacles. Oh dear.) Here's the question: From a caption c

  • Regarding Function Module AC_DOCUMENT_RECORD

    Hi All, I am working on one Report in which I am calling the function module <b>AC_DOCUMENT_RECORD</b>. I am Exporting values for all the parameters to this function except I_AWSYS, I_AWTYP_INCL,I_AWTYP_EXCL. These parameters will be treated as Defau

  • Calling a funtion package from forms

    Hi All, I am trying to call a function package in the forms, but I get the below error. Any help Please.. the code in the trigger : DECLARE CURSOR C1 IS SELECT ' Rule Id: ' || R.rule_id ||' R_SUPP: ' || ROUND(R.rule_support , 2) || ' R_CONF: ' || ROU

  • Mini player does not display tracks internet radio

    Hi, i downloaded iTunes 11 a couple of days ago and noticed that the mini player does not display the tracks played on internet radio stations. It keeps displaying the track that was playing when switched from the main screen to the mini player. Anyo

  • Fetchmail: Server certificate verification error

    I'm using fetchmail to fetch our mails from our ISP. After upgrading my server from 10.3.9 to 10.4.8, fetchmail is logging the following four lines for each poll: fetchmail[39]: Server CommonName mismatch: *.mail.my_isp.com != pop.my_domain.com\n fet