Jump to content

The Southsider

  • entries
    81
  • comments
    767
  • views
    138,550

Japan


cd-w

1,524 views

I haven't been very active on the AA site recently. This is not because I have lost interest - it is just that I have been travelling around the globe recently as part of my work. I have just returned from Japan, and I though I would write a little bit about it here. I won't bore you with the work side of things, instead I want to write about the three days that I had to myself in Tokyo.

 

This was my first trip to Japan, and I wasn't sure what to expect. The country has a kind of mythical status among computer gamers, being the source of so much gaming culture. The impression that one gets before visiting is that Japan is some kind of futuristic technological utopia - naturally the reality is somewhat different! It is certainly true that games and cartoons have a firm place in Japanese culture, but they are only a small part of the whole picture. From a technology point of view, Japan is roughly the same as the US or Europe, though they do have slighly better mobile phones (all G3) and musical toilets!

 

I don't want to shatter your illusions of Japan completely, so I will confirm that Tokyo is a very impressive city, and walking down its streets is an exhiliarating experience. This is mainly because the city itself is so huge and vibrant. I have visited New York many times, and so I though I knew what a big city was like, but Tokyo is something else. It is really lots of smaller cities all compressed into one huge mega-metropolis. Each sub-city in Tokyo has a different feel, but at no time did it feel intimidating or over-crowded (except on the subway). The people were all very friendly and helpful, and I had no trouble getting around, despite my mininal understanding of the language. Naturally, one of the first places that I went to visit was the Akihabara electric city.

 

cnc_nes__.eps_.zip

 

Akihabara is basically an area of around 5 blocks square completely filled with technology stores. It was a bit overwhelming at first as the place is filled with flashing signs, loud music, and shopkeepers all vying for attention. However, it doesn't take long to block it out and after a few minutes I was hunting for the good stuff, i.e. retro games. About 50% of the stores were selling electrical items (e.g. microwave ovens), and around 30% were mobile phone shops, so it was relatively easy to make progress. It didn't take long for me to locate the famous Super Potato store which is probably the most well-known place for retro games in Tokyo. It is basically two smallish rooms completely stuffed with consoles, games, and accessories. You can find just about anything from Nintendo, Sony, and Sega there, including lots of game-and-watch machines, weird console accessories, and various toys. They even had a Japanese Vectrex, and an Atari 2800, but they were very expensive. I had a great time just looking at everything, but in the end I bought very little as I didn't plan ahead properly, and my skills at decoding Katakana were very limited. I found a few other retro games stores in Akihabara, but Super Potato was definitely the best. I also picked up a Nintendo DS-lite and a copy of New Super Mario Bros just for good measure!

 

The rest of my time was spent sampling the excellent food, and looking at the various tourist attractions in Tokyo. In the end, 3 days was nowhere near enough and I am already attempting to engineer a return visit. I would highly recommend anyone to go there if they haven't already been. It is definitely a cultural experience and very different from western norms.

 

On another note, I have made a bit of progress with my Juno First game. The latest version is attached to this message. It doesn't look too different, but the code has been substantially restructured and improved. Basically the previous version had completely exhausted the available memory and cycles, so it was necessary to do a lot of unrolling and optimising before any further progress could be made. This took a lot of time, and required cycle counting for almost the whole game! However, this version should now have enough free space to enable me to complete the game. As usual, let me know if you find any bugs, or have any suggestions.

 

Chris

 

cnc_nes.zipcnc_nes__.al_.zip

8 Comments


Recommended Comments

I didn't think you lost interest in Atari. Welcome back. A lot of us have dreamed of visiting Japan, so we appreciate the report. Your description of Tokyo as a conglomeration of smaller cities reminds me of Los Angeles, although the two are certainly different in their own ways.

Link to comment

Welcome back - it sounds like it was a cool trip. Thanks for posting the write-up. :)

 

Question about Juno First... what does "unrolling" mean? I've read it a bunch of times in programming threads, but have never seen it explained.

Link to comment
I didn't think you lost interest in Atari. Welcome back. A lot of us have dreamed of visiting Japan, so we appreciate the report. Your description of Tokyo as a conglomeration of smaller cities reminds me of Los Angeles, although the two are certainly different in their own ways.

 

Thanks for the kind words. I haven't visited Los Angeles yet so I can't compare, but Tokyo is definitely an experience that I would recommend to anyone.

 

Question about Juno First... what does "unrolling" mean? I've read it a bunch of times in programming threads, but have never seen it explained.

 

It is a fairly straightforward concept that improves speed at the expense of memory. If you have a loop with a fixed (and usually small) number of iterations, then the contents of the loop can be expanded out. This removes the need for a loop counter and can often enable additional optimisations across loop iterations. The following Java code is a simple demonstration of loop unrolling:

 

public class unroll
{
 public static void main(String[] args)
 {
// Normal Loop
for (int x = 4; x > 0; x--)
  System.out.println("Hello World " + x);

// Unrolled
System.out.println("Hello World 4");
System.out.println("Hello World 3");
System.out.println("Hello World 2");
System.out.println("Hello World 1");
 }
}

 

Chris

Link to comment

I think I've found a bug, though I can't be sure it's not an emulator artifact (I don't think so, though). When thrusting forward and firing, if you move to the left and then attempt to move to the right (while still thrusting forward and firing), nothing happens. Conversely, if I'm thrusting and moving to the right, and while doing so I attempt to fire, nothing happens.

 

Going *backwards* is fine -- all this only happens while going forwards.

 

So, in sum: Up+right = can't fire, up+fire = can't go right.

 

(I'm using Stella 2.1 on OS X, for what it's worth)

Link to comment

I think I've found a bug, though I can't be sure it's not an emulator artifact (I don't think so, though). When thrusting forward and firing, if you move to the left and then attempt to move to the right (while still thrusting forward and firing), nothing happens. Conversely, if I'm thrusting and moving to the right, and while doing so I attempt to fire, nothing happens.

Going *backwards* is fine -- all this only happens while going forwards.

So, in sum: Up+right = can't fire, up+fire = can't go right.

(I'm using Stella 2.1 on OS X, for what it's worth)

 

I am unable to reproduce this bug on my machine, though similar things will happen if you hold both left/right or up/down (which are not possible on a joystick). It sounds like there is some problem with the up direction on your emulator - do you have this problem in any other games? Are you using the keyboard, or a joystick with the emulator? I will have another look at the code and see if I can spot any potential problems.

 

Thanks,

Chris

Link to comment

Chris,

 

It turns out that the problem's completely on my end, and was caused a USB keyboard I've got plugged into my laptop that, for whatever reason, can't handle the key combinations in question. When I tried it using the laptop's own keyboard, everything worked fine. (I got the keyboard fairly recently, and I guess I'd never had occasion to try that particular combination of keys, but when I went and tried Battlezone just now I ran into the exact same problem...)

 

My apologies for taking up your time with this!

Link to comment

Chris,

It turns out that the problem's completely on my end, and was caused a USB keyboard I've got plugged into my laptop that, for whatever reason, can't handle the key combinations in question. When I tried it using the laptop's own keyboard, everything worked fine. (I got the keyboard fairly recently, and I guess I'd never had occasion to try that particular combination of keys, but when I went and tried Battlezone just now I ran into the exact same problem...)

My apologies for taking up your time with this!

 

No problem - I am just glad that it wasn't a bug in my code :) It sounds like the keyboard can't handle more than one key press at a time?

 

Chris

Link to comment

Not exactly, just some weird quirky interaction between those particular keys. Maybe they share a trace on the circuit board, and the designers didn't expect them all to be hit at the same time (??).

Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...