well i found an article at http://www.aa1car.com/library/ic10224.htm
An essential part of the OBD II system are the "readiness flags" that indicate when a particular monitor is active and has taken a look at the system it is supposed to keep watch over. The misfire detection, fuel system and continuous system monitors are active and ready all the time, but the non-continuous monitors require a certain series of operating conditions before they will set - and you can’t do a complete OBD II test unless all of the monitors are ready.
To set the converter monitor, for example, the vehicle may have to be driven a certain distance at a variety of different speeds. The requirements for the various monitors can vary considerably from one vehicle manufacturer to another, so there is no "universal" drive cycle that will guarantee all the monitors will be set and ready.
As a general rule, doing some stop-and-go driving around town at speeds up to about 30 mph followed by five to seven minutes of 55 mph plus highway speed driving will usually set most or all of the monitors (the converter and EVAP system readiness monitors are the hardest ones to set). So if you’re checking the OBD II system and find a particular monitor is not ready, it may be necessary to test drive the vehicle to set all the monitors.
The Environmental Protection Agency (EPA) realized this shortcoming in current generation OBD II systems.
So, when it created the rules for states that want to implement OBD II testing in place of tailpipe dyno testing, it allows up to two readiness flags to not be set prior to taking an OBD II test on 1996 to 2000 vehicles, and one readiness flag not to be set on 2001 and newer vehicles.
Some import vehicles have known readiness issues. Many 1996-’98 Mitsubishi vehicles will have monitors that read "not ready" because setting the monitors requires very specific drive cycles (which can be found in their service information). Even so, these vehicles can be scanned for codes and the MIL light without regard to readiness status.
On 1996 Subarus, turning the key off will clear all the readiness flags. The same thing happens on 1996 Volvo 850 Turbos. This means the vehicle has to be driven to reset all the readiness flags.
On 1997 Toyota Tercel and Paseo models, the readiness flag for the EVAP monitor will never set, and no dealer fix is yet available. Other vehicles that often have a "not ready" condition for the EVAP and catalytic converter monitors include 1996-’98 Volvos, 1996-’98 Saabs, and 1996-’97 Nissan 2.0L 200SX models.
That makes sense why my evap monitor is still "not ready" The last time i had it tested i think I still had 2 "not ready" tests, but now the evap is the only one. according to this article a 2001 vehicle is only allowed 1 "not ready".
I'll try having it tested again, according to this article I should be fine now.
I just wanted to post what I found in case someone might have this problem later on and might find this useful. I'll confirm tomorrow if I passed or not.
edit: my advice, don't disconnect your battery if your registration is about to expire, haha.