Tuesday, August 13, 2019

Playing Star Wars Rogue Squadron 3D in full HD...

Having to use modern OS such as Windows 10 means no classic games. I have an old game installer of Star Wars Rogue Squadron 3D.

Since I love the game so much, the solution:
Windows XP in VMWare.

Unfortunately, the game can be play on 1024x768 resolution max.

Luckily there's a patch for it.
Download it from here.

- Extract the zip file and run uniws.exe.
- Click Find it for me button, or you can search Rogue Squadron.EXE manually.
- Set New Resolution to 1920x1080 then click Patch button.
- Run Rogue Squadron, go to settings -> video and choose the custom resolution that has been patched.
- To revert back the patch, click Undo Patch button.
- Done! Enjoy the game.

UniWS patcher

Rogue Squadron 3D video settings

Game play screen

Note:
Since this is a virtual machine we're talking about, theoretically it should be fine in Ubuntu as host OS. However after installing VMWare Tools especially SVGA driver, Windows XP loads on blank screen with sound. For now, I just have the virtual machine under Windows 10.

Update - 21/09/2019:
I'm able to solve the VMWare Tools installation after run the command below on Ubuntu host OS.
sudo apt install libncursesw5

Saturday, August 10, 2019

How to change Linux swap partition to different disk...

The scenario:
I have two hard disks on my laptop,
- 256 GB SSD (nvmeOn1)
- 1 TB HDD (sda)

Installed Ubuntu, below is how my partition table looks like:
nvmeOn1
        EFI                                  100 MB
        Microsoft reserved partition          16 MB
        Basic data partition              217.35 GB
        /                                     20 GB
        Recovery                               1 GB
        Unallocated                        14.34 MB

    sda
        Basic data partition              465.76 GB
        /opt                                9.54 GB
        /usr                               37.96 GB
        linux-swap                             6 GB
        /home                             412.26 GB

I want to change swap partition from HDD to SSD. Here's the steps:
1. Boot the machine with Ubuntu Live USB
2. Delete existing linux-swap partition on HDD (Resize any existing partition to make use this new unallocated partition)
3. Resize / partition on SSD to make space for new swap partition
4. Create new swap partition
5. Shutdown, remove Ubuntu Live USB and restart the machine
6. Now in Ubuntu, open terminal and run the command below
$ sudo blkid

    # output would be something like this
    /dev/nvme0n1p6: UUID="581446b5-7fab-46b0-ba3a-569c0fc42be3" TYPE="swap" PARTUUID="646e1aba-ebff-40e7-86c2-155211f485d5"

7. Look for "swap" and copy UUID from the newly created swap partition
8. Edit /etc/fstab file by running command below (don't forget to backup first)
$ sudo nano /etc/fstab

9. Replace the old UUID for swap with the new one.
10. Save the file and reboot the machine.

To verify, we can use free command
$ free

    # output
                  total        used        free      shared  buff/cache   available
    Mem:       32774452     1315660    30136320       34844     1322472    31009776
    Swap:       6292476           0     6292476

Or swapon -s command
$ swapon 0s

    # output
    Filename    Type  Size Used Priority
    /dev/nvme0n1p6                          partition 6292476 0 -2

This is how my new partition table looks like:
nvmeOn1
        EFI                                  100 MB
        Microsoft reserved partition          16 MB
        Basic data partition              217.35 GB
        /                                     14 GB
        linux-swap                             6 GB
        Recovery                               1 GB
        Unallocated                        14.34 MB

    sda
        Basic data partition              465.76 GB
        /opt                                9.54 GB
        /usr                               43.96 GB
        /home                             412.26 GB

Sunday, August 4, 2019

Hello Disco Dingo, I'm back!




It's been a while since I last play around with Linux. Last version I used was Linux Mint 17.1. My Dell Studio XPS 16 overheated while my son played games on it. It's gone for good.

Last year, I bought an Acer Predator Helios 300 Special Edition. It's a nice laptop. I'm glad that it play nice with Linux. Found out that Canonical has ditched Unity and revert back to Gnome Shell.

It's a bit of a challenge to install Linux on this machine configuration at first, but once done everything is history. I will write how to's in my coming post. Stay tune.

Saturday, April 27, 2013

Installing Nginx and PHP on Linux Mint 13...

Step 1:
- Installing Nginx web/proxy server
$ sudo add-apt-repository ppa:nginx/$nginx
$ sudo apt-get update 
$ sudo apt-get install nginx
- Start the service
$ sudo service nginx start
- Then test the installation by opening web browser and type your ip address or localhost to the url text box. You should see a welcoming page.

Step 2:
- Installing PHP
$ sudo add-apt-repository ppa:ondrej/php5
$ sudo apt-get update
$ sudo apt-get install php5-fpm php5.cli
- Edit ini file
$ sudo nano /etc/php5/fpm/php.ini
- Change the cgi.fix_pathinfo=1 to cgi.fix_pathinfo=0

- Edit config file
$ sudo gedit /etc/nginx/sites-available/default 
- Uncomment highlighted lines below
server {
        listen 80;
        listen [::]:80 ipv6only=on default_server;

        root /usr/share/nginx/html;
        index index.html index.htm index.php;

        # Make site accessible from http://localhost/
        server_name localhost;

        location / {
            # First attempt to serve request as file, then
            # as directory, then fall back to displaying a 404.
            try_files $uri $uri/ /index.html;
            # Uncomment to enable naxsi on this location
            # include /etc/nginx/naxsi.rules
        }

        location /doc/ {
            alias /usr/share/doc/;
            autoindex on;
            allow 127.0.0.1;
            allow ::1;
            deny all;
        }

        # Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
        #location /RequestDenied {
        #   proxy_pass http://127.0.0.1:8080;    
        #}

        #error_page 404 /404.html;

        # redirect server error pages to the static page /50x.html
        #
        #error_page 500 502 503 504 /50x.html;
        #location = /50x.html {
        #    root /usr/share/nginx/html;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
        #   fastcgi_split_path_info ^(.+\.php)(/.+)$;
        #   # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
        #
        #   # With php5-cgi alone:
        #   fastcgi_pass 127.0.0.1:9000;
        #   # With php5-fpm:
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
            deny all;
        }
    }
- Start PHP service
$ sudo service php5-fpm start
- Restart Nginx service
$ sudo service nginx restart
- Test your installation by creating info.php file with source code below into your webserver root directory
<php?
    phpinfo();
?>
Step 3: Installing xdebug (optional)
$ sudo apt-get install php5-xdebug
- Get Loaded Configuration File (from your browser by opening info.php you've created earlier) and add the text below to php.ini
zend_extension=/usr/lib/php5/20100525/xdebug.so
xdebug.remote_enable=on
- Restart PHP and Nginx service

Important notes:
- To completely uninstall Nginx (including settings)
$ sudo apt-get purge nginx nginx-common nginx-full
- If you're getting the error below when you start Nginx service
$ nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
- Edit /etc/nginx/sites-available/default file by changing the text
from
listen [::]:80 default_server;

to
listen [::]:80 ipv6only=on default_server;

Tuesday, February 19, 2013

SAP PI TCodes...

0. SXMB_IFR -> Start Integration Builder
1. SXMB_MONI -> Integration Engine - Monitoring
2. SXI_MONITOR -> XI: Message Monitoring
3. SXI_CACHE -> To Access IS runtime cache
4. sxi_cache -> XI data directory cache
5. idx1 -> idoc adapter
6. idx2 -> idoc metadata
7. idx5 -> monitor idoc adapter
8. sm21 -> log di sistema
9. st22 -> dump abap
10. smq1 ->
11. smq2 ->
12. smicm -> J2EE administration
13. st06 -> cpu memory filesystem machine status - cpu, 14.memory and file system.
15. st03 -> workload.
16. scc4 ->
17. we20 -> partner profiles
18. sale - ale settings
19. rz10 - edit system profile
20. sm59 ->mantain rfc destinations
21. bd64 -> mantain distribution model (trasformazioni)
22. SU01 -> users
23. AL08 -> list all logged users(user login logon)
24. SE10 -> Change Request
25. SE09 -> Change Request
26. WE05 -> All idocs
27. WE19 -> IDoc Test Tool
28. WE21 -> port definition
29. SE11 -> Data dictionary
30. SM21 -> log sistem xi
31. se37 -> mantain funcion modules
32. SICF -> http server configuration
33. SMGW -> trace
34. BD13 ->
35. BD64 ->
36. pfcg -> Roles
37. tabella TSTC -> sap transactions codes
38. tabella TSTCT -> transaction descriptions
39. STMS -> transports management
40. SPAM -> apply ABAP support packages
41. SPAU -> manage objects after apply support packages
42. SE01 -> manage change requests
43. SLDCHECK -> Test SLD Connection
44. SLDAPICUST-> SLD API Customizing
45. SXMB_ADM -> Integration Engine - Administration
46. SXMB_MONI_BPE -> Process Engine - Monitoring

Friday, February 15, 2013

Post IDOC failed from ECC to SUS via PI...

Error log:
SM58 (in ECC) - EDISDEF: Port **** segment defn **** in IDoc type ****
SM21 (in PI) - Transaction Canceled IDOC_ADAPTER 155 ( "port" "segment" "parent segment" )

Root cause:
Inconsistency of IDOC metadata between ECC and PI.

Solution:
  • Login into PI ABAP stack
  • Open tcode IDX2
  • Expand IDOC types and look for parent segment as shown in log (under SM21)
  • Delete parent segment
  • Execute messages in SM58 in ECC

Opportunities come when you least expect it...

It's been a while since my last post in this blog. I've been busy learning new stuff. Most of the time in my career life I've been doing a lot of programming. Started jumping into integration pool in 2004 with Microsoft Biztalk for a year and then back to programming business again. Sometimes opportunities come when you least expect it.

Who might have thought that now I'm back into integration pool, but with a different technology. SAP PI (Process Integration), a product from SAP for integration. It might not be as cool as Microsoft Biztalk, but when dealing with integration between third party systems and SAP it might be one of the best (for more complex type of integration SAP does have another product called Business Process Management if I'm not mistaken).

Initially when I started development in PI, it is really a pain in the a$$ process. Having Biztalk as my background knowledge, I tend to make a lot of comparison between the two products. It "helps" a lot when I need to deal with "import" players (those jerks really suck the money out of the place where I work). Thank God, I finally managed to overcome with the dissatisfaction of using PI and started to appreciate it. However, my personal opinion is still the same, SAP really needs to hire a good designer for it's product. The UI really sucks.

There's more things to come in future. Life started to get interesting everyday. Now I have a new target for my career. InsyaAllah.