It may not always be "1999" and time passes normally. As previous people stated the matrix has "rebooted" six times. The Architect noted on multiple occasions that "Neo" was faster than the others. This can also mean that the 100 years since the last matrix reboot could have been "faster" to happen. So you can assume that it has been at least 600 years, if not closer to 1000 or even more, since the matrix began. And who even knows when that happened.

Concerning the "time issue" of it always being 1999. It would interesting to see how that happens. When the Matrix reboots, we can assume that it goes on for at least 100 years. So would they start the matrix off near 1900, where the compuers have a recordable history of the humans, so they can easily keep track of events without having to deal with new things coming along. And what happens if it takes a long time for "the One" to come around? Goes well beyond 1999. Assuming that the Matrix prolly started around 2050 or beyond, this would give the machines 150 or so years of workable time. Also, I'm sure the machines could speed up or slow down the simulation on will to allow things to happen much easier.

But needless to say, this may all be answered in the next movie. Lots of questions really get opened up by things like this.
_________________________
- Damien - Mk2a 24G Blue SN: 120001043