Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Paul

Pages: 1 [2] 3 4 ... 12
General Discussion / Testing 2.5.0
« on: December 02, 2014, 08:08:04 PM »
This is the release candidate for 2.5.0.  Anyone who would like to test, feel free and please post if you find any issues.

2.5.0 RC1

2.5.0 RC2 (Lollipop MOGA crash test)

2.5.0 RC3 (New squashed branch)

If you have any previous test builds installed, you may need to uninstall them first to avoid signature conflicts.

General Discussion / Preparing 2.5.0
« on: November 08, 2014, 02:36:57 PM »
Starting a thread to talk about my progress with 2.4.5 (just so everyone knows I haven't disappeared again).

First step was to pull from upstream (*) into our forked repositories (*).  I have completed this step.

Gillou68310 should now be able to commit his dynarec fixes to our forked repository, so from there I will be able to submit a pull request to Richard, and also merge it down into our main repository.

My next step is to merge the changes from upstream down into our main repository.  I have started this, but it has turned out to be somewhat more complicated than I was anticipating.  Various things were moved and renamed on master to make syncing with upstream simpler.  Unfortunately this doesn't help syncing to the 2.4-bugfixes branch.

My initial attempt was to sync core, rsp-hle, ui-console (front-end), audio-sdl, gles2rice (video-rice), and gles2glide64 (video-glide64mk2) all in one fell swoop.  After some conflict resolution, however, I reached an impasse with gles2glide64.  Getting errors like:

Code: [Select]
jni/gles2glide64/projects/android/../../src/Glitch64/glState.cpp:84:13: error: previous declaration of 'void cache_glClearColor(GLclampf, GLclampf, GLclampf, GLclampf)' with 'C++' linkage
/home/paul/bin/android-ndk-r10c/platforms/android-9/arch-arm/usr/include/GLES/gl.h:594:25: error: conflicts with new declaration with 'C' linkage
jni/gles2glide64/projects/android/../../src/Glitch64/glState.cpp:99:13: error: previous declaration of 'void cache_glClearDepthf(GLclampf)' with 'C++' linkage
/home/paul/bin/android-ndk-r10c/platforms/android-9/arch-arm/usr/include/GLES/gl.h:595:25: error: conflicts with new declaration with 'C' linkage
jni/gles2glide64/projects/android/../../src/Glitch64/glState.cpp:148:13: error: previous declaration of 'void cache_glDepthRangef(GLclampf, GLclampf)' with 'C++' linkage

Soo.. trying to do everything at once was a bad idea.  I will need to scrap my local changes and try again.  This time I will be a little more careful:

Step 1: Sync only core, rsp-hle, and audio-sdl
    Commit these three together, since they tend to be the easiest to sync from upstream

Step 2: Sync front-end (ui-console)
    Commit separately so I can back out if there are problems.  This library likely doesn't need to be updated anyway.

Step 3: Compile and test the app using gles2n64 to see if any new problems arose
    If front-end update created issues, back out of the previous commit and test again.

Step 4: Sync gles2rice (video-rice)

Step 5: Compile and test the app using gles2rice to make sure the update worked

Step 6: Sync gles2glide64

Step 7: Attempt to debug the aforementioned problem.  If unable, back out of the previous commit and leave updating gles2glide64 to someone smarter :P

Paul's Projects / N64 Cartridge Dump (for Gameshark Pro)
« on: September 13, 2014, 09:27:28 AM »
-- This slot is reserved for the most recent working releases --

General Discussion / I'm alive ;D
« on: August 22, 2014, 12:06:47 AM »
Hey, everyone, it has been a while since I've been on the forum (obviously).  Just wanted to let everyone know that I am still alive, and to explain why I haven't been around.  Oh, and thank you xperia64 for really helping out!

Those of you who have known me from groups other than my forum here (probably not many of you) might know that I have many, many interests and hobbies.  Some of my other hobbies include freshwater aquariums (I even have four 10-gallon tanks in my closet for experimenting with guppy genetics), I enjoy capturing reptiles, gardening, I collect rose bushes, and I love experimenting with various plant propagation techniques (I currently have three air-layered branches on the pecan tree in our back yard for example).  In the past I've had many other varried hobbies as well, including rocketry, rabbit hunting with beagles, teaching and showing dogs in obedience and agility, and raising show cavies (guinea pigs).

I tend to jump into new hobbies with both feet.  Examples that everyone here probably knows about: when I was teaching myself Java I wrote the SoundSystem library.  Soon after buying my first Android phone, I started the Mupen64Plus AE project.  Notice a pattern?  These are just two recent examples, but really every large project I've started in the past has coincided with a new interest.

Well, a friend of my wife recently got me interested in planting bananas.  True to my nature, we soon had six varieties of banana plants growing in our yard, and I am now working on a new big project: developing a new method of tissue-culturing bananas, cheaply, organically, and with recycled common household items and products.  I have plans for a new forum centred around bananas, videos and tutorials for keeping them in colder climate zones, and fun projects like the "kitchen tissue culturing" one I'm working on now.

So what's the point of all this rambling?  Well, between my new project, a tight budget, and being very busy with work, that is why I have not been involved on here for the past few months.  Part of the reason for a complete 180 with my new hobby, is that now my actual job is computer programming.  This has made it considerably less appealing to do in my free time (my previous job had nothing to do with computer programming, so that is why many of my previous projects were computer-related).

All this said, I realize that I do have an obligation to the community here, so I plan to start logging on more often, and get back to publishing updates again.  I probably won't be committing anything significant myself for the foreseeable future.  I'll try and get back up to speed over the next few days.. I honestly have no idea what has been going on with Mupen64Plus lately (that's the beauty of open source projects-- they don't depend on one person!)

General Discussion / ptitSeb Gles2glide64 test
« on: January 13, 2014, 10:03:59 AM »
This build uses ptitSeb's updated version of gles2glide64.  It has a different frame-skipping strategy and several other optimizations.  I branched off the 2.4 branch, so it can be compared with a recent published version of Mupen64Plus AE for a fair comparison.  I'm interested in seeing how it  compares WRT game compatibility and speed.  I gave it another app name and package id, so both can be installed at the same time to make comparisons easier.

TEST #1: ptitSeb Gles2Glide64 plugin

TEST #2: ptitSeb Gles2Glide64, Neon and Float optimizations only

TEST #3: ptitSeb Gles2Glide64, Neon and Float optimizations only, plus updates by Gilles

I had time to run only a couple of very quick tests to make sure it wasn't crashing, so I am not at all positive that I have the frameskipping config hooked up properly (and possibly other build settings-- need to look at it more closely).  I'll have to take a closer look when I get home from work, and will post another build if changes are necessary.  If the frameskipping config is hooked up properly, then it would seem to have solved the flashing problem in Paper Mario without having to disable frameskip (this is actually the reason I am not convinced it is hooked up, haha ;D).

During my recent internet browsings, I have come across a few folks who have problems with "Unable to find native library" errors for various apps, on devices with the Huawei K3V2 CPU (such as the Ascend Mate).  I'm curious if this problem affects Mupen64Plus AE (if not, I'd like to run a few tests to help the other developers out who have apps which are affected by the problem).  Just checking if anyone on here has one of those devices.

General Discussion / Searching issues on github
« on: December 24, 2013, 10:21:21 AM »
Does anyone know if there is a way to search issues on github (in particular the closed ones)?  I hate having to browse through pages of issues trying to find one that I remembered seeing months ago.  I suppose I could just maintain my own records as folks post them, but seems like searching should be possible through github itself (I tend to be blind, so it wouldn't be a surprise if I missed it).

General Discussion / CheatFile class
« on: December 24, 2013, 01:27:57 AM »
@xperia64: The CheatFile class is written and ready to use.  Thought I would post a couple of quick examples on usage.

Files you may want to import:
Code: [Select]

To load mupencheat.txt (assuming name is updated in
Code: [Select]
CheatFile mupencheat_txt = new CheatFile( mAppData.mupencheat_txt );
To insert a new cheat at the top of the list for a game with the given CRC.  In this example, the cheat has two codes, the second one with options:
Code: [Select]
        CheatBlock newCheat = new CheatBlock( "Make believe cheat", "This cheat does absolutely nothing" );
        CheatCode plainCode = new CheatCode( "12345678", "9012", null );
        newCheat.add( plainCode );
        LinkedList<CheatOption> options = new LinkedList<CheatOption>();
        CheatOption option1 = new CheatOption( "1234", "Some option" );
        options.add( option1 );
        CheatOption option2 = new CheatOption( "3456", "Some other option" );
        options.add( option2 );
        CheatCode optionCode = new CheatCode( "abcdef01", "????", options );
        newCheat.add( optionCode );
        CheatSection cheatSection = mupencheat_txt.match( "^" + crc.replace( ' ', '-' ) + ".*" );
        cheatSection.add( 0, newCheat );

And finally, to save the changes:
Code: [Select];
That's probably enough to get you started.  Take a look at the CheatFile class and its sub-classes.  There are functions for adding, inserting, and removing both cheats (class CheatBlock) within a section, or codes (class CheatCode) within a cheat.  Should be flexible for whatever type of editor you come up with.  Let me know if anything isn't clear.  If it would be helpful, I can rewrite the current Play menu to use this class instead of ConfigFile, for reference.

General Discussion / Major fixes to gles2rice plugin
« on: November 01, 2013, 11:22:12 PM »
Gillou68310 has done a lot of work on the gles2rice video plugin, and I thought I would post a build for folks to try out on different devices and games.  Things that are addressed are some black texture issues, multi-texturing (such as Link's shield), and fog.  Please note any improvements, problems that are fixed, or regressions:

Gles2rice, various fixes (Update: added fog option in video settings)

This second build has a fix specifically for the missing heart in Zelda OOT and MM.  We need to test to make sure it doesn't break something else, though.  (I built this one before adding the fog option, so don't worry about that)  If you notice a problem with this build, do a comparison with the first build above to see if it is specific to this fix:

Gles2rice, missing heart fix (no fog option in this build)

Gkes2rice, missing heart fix, BUILD #2 (latest fog update also in this build)

Support / N64 controller + Rapnet adapter, buttons react to analog
« on: October 21, 2013, 07:35:26 PM »
In an email from Sowden:

My recommendation was to isolate whether the problem is with the controller or the adapter, but thought I'd post here in case there is any possibility the problem is in the software (seems unlikely since it worked for a while)

Miscellaneous / Multi-booting Ubuntu and Android 4.3
« on: October 19, 2013, 03:45:31 PM »
This is an overview of how to multi-boot Ubuntu and Android 4.3 on the Eee PC 1015PEM netbook.  I am mainly writing this for my own reference, since I am likely to be changing the Android installation often.

1) Download the iso from  I grabbed version 4.3-20130725.

2) Burn the iso to disk or USB stick (I went with USB stick, and installed UNetbootin for the task... was having issues with Startup Disk Creator)

3) If you do not have a free partition on your computer, run gparted to resize one.  I made mine a couple GB large.  Format it as NTFS.  Take note of its designation (mine was /dev/sda4)

4) Plug in the USB stick or insert the disk, and reboot.  If using USB stick, press ESC during bootup and select the USB stick to boot from it.  If using CD, press F2 during bootup and verify the CD drive is listed before your hard drive.

5) Choose to install Android.  Select the device (e.g. sda4).  When asked if you wish to format it, select No.  When asked if you want to install GRUB, choose yes.  If you want a virtual SD card, choose to create one when asked (or you can alternately use a physical SD card if you have one).

6) When done, remove the USB stick or CD and reboot to verify Android is working.

7) Reboot, and in the GRUB menu, press 'e' to see the GRUB commands.  Write them down carefully.

8) Insert your Ubuntu Live CD or USB stick and reboot.  Select "Try Ubuntu without installing".

9) Open terminal, and enter:
Code: [Select]
    cd /
    sudo mount dev/sda1 /mnt
    sudo grub-install --recheck --root-directory=/mnt /dev/sda
(replace sda1 and sda with the device designation for where your main Ubuntu partition resides and which device you booting from -- in my case, Ubuntu is on /dev/sda1, and I boot from disk /dev/sda)

10) Reboot your computer, and go into Ubuntu.  Edit /etc/grub.d/40_custom and add an entry like:
Code: [Select]
menuentry "Android 4.3" {
    set root='(hd0,4)'
    linux /android-4.3-test/kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 video=-16 SRC=/android-4.3-test SDCARD=/data/sdcard.img
    initrd /android-4.3-test/initrd.img
Be sure to use the correct device identifier for the 'set root=' line to point to the partition where Android is installed.  In my case, /dev/sda4 translates to '(hd0,4)'.  The other two lines are the commands you wrote down in step 7.  Only change is to use the command "linux" instead of "kernel" for the first one (difference between GRUB1 vs GRUB2).

11) From terminal, run:
Code: [Select]
sudo update-grub
12) Reboot and verify you can boot into Android.

One more note, if you get stuck with "Detecting Android-x86 .........." continuously printing dots, check the 'SRC=' parameter in the linux command from step 10 (I had a small typo in mine that took forever to figure out it was the problem)

General Discussion / Mupen64Plus Libretro Fixes
« on: October 15, 2013, 09:01:53 PM »
Squarepusher has tracked down some long-standing bugs for his Libretro Mupen64Plus project, and we are pulling is code into our repository when possible.  I'll be using this thread to post tests for folks to try out and provide feedback.

This first build incorporates fixes in gles2n64 for the "green room" problem in OOT static background scenes, for getting Biohazard 2 ingame, for the black screen in Turok 1, for Banjo Kazooie whenever HUD appeares, for Waverace 64 intermission screens, and probably much more:

Gles2n64 Fixes Test

General Discussion / Any x86 testers available? (Razr I, for example)
« on: October 15, 2013, 09:51:30 AM »
We'd like to run a few tests on x86 Android devices, so if you have one and would like to test, let me know.  I have a couple users I emailed as well, but the more the better.  ;D

General Discussion / New anti-spam rules on host
« on: October 08, 2013, 06:24:39 AM »
I mentioned in chat that my home IP had been blocked from PaulsCode.Com for the past couple of days.  Turns out my hosting service had added strict anti-spam measures.  This is the explanation I got from the technician this morning:

After checking within the firewall, it appears you were blocked due to
Mod_security AntiSpam rules:

csf.deny: # lfd: (mod_security) mod_security (id:300079)
triggered by (US/United
States/ 5 in the last 3600 secs -
Sun Oct 6 16:24:56 2013

Here is the rule that appeared to trigger repeatedly:

[Sun Oct 06 16:24:53 2013] [error] [client] ModSecurity: Access
denied with code 403 (phase 2). Pattern match "(?:\\\\[ ?(url|link) ?=
?\\"? ?https?://.*\\\\[ ?(url|link) ?= ?\\"? ?https?://.*\\\\[
?(url|link) ?= ?\\"? ?https?://.*\\\\[ ?(url|link) ?= ?\\"?
?https?:/|(\\\\[ ?(url|link) ?\\\\]https?://.*\\\\[ ?/ ?(url|link)
?\\\\].*){4,})" at ARGS:message. [file
"/usr/local/apache/conf/modsec/30_asl_antispam.conf"] [line
"115"] [id "300079"] [rev "18"] [msg
" WAF AntiSpam Rules: Possible Spam: Multiple embedded urls
in argument (Disable if you wish to allow 4 or more URLs in a post)"]
Code: [Select]
test #1[/color][/b][/url][/s]
test #2[/color][/b][/url][/s]
test #3[/color][/b][/url] [url=http:/"] [severity "ERROR"]
[hostname ""] [uri "/forum/index.php"]

I'm hoping to get them to exempt my IP from this particular rule, because I need to be able to post more than 3 links per post (in particular the release builds thread is now unusable).  Still waiting on a response.  If not, I may have to mod the forum to allow me to bypass the particular regex they are using to identify URLs.  I do not want to be limited to 3 links per thread  :(

Announcements / Account Security
« on: September 15, 2013, 12:09:14 PM »
Hey everyone, just wanted to let you know that the server which the forum resides on was recently hacked.  The database resides on a separate server, which does not seem to have been touched.  But just to be safe, if you happen to use your PaulsCode.Com password on any other website, it might be wise to change it.

Pages: 1 [2] 3 4 ... 12