It can't be done (also, why would you think that would ever be a good idea?!)
The 8 pin chip on the ESP-01 is a 512kB SPI flash that runs at (at least) 40MHz. So to emulate that you would need:
More than 512kB of flash,
A slave SPI interface that can operate at a minimum of 40MHz, and
The knowledge, time and energy to write the firmware to emulate an SPI ...
Here's a working example that's on my Wemos D1 Mini. It stands up an AP until you provide credentials for your local LAN, then displays it's DHCP IP address on a 16x2 LCD and stands up a webserver. Once the credentials are stored it won't stand up the AP, it will just reconnect and do the main loop() of the sketch. To force the AP to restart you need to call ...
You don't. WifiManager does all that for you. You don't need anything like that in your code. Just follow the examples and read the documentation.
But if you do want to then you just need to remember that WifiManager is merely a library that configures the WiFi for you. If you want to query or alter the WiFi settings you can - exactly as you are right now. ...
The information is available on SDK level. If you include #include "user_interface.h", you can use function wifi_station_get_connect_status(). It returns one of:
The WiFi.status() function uses function wifi_station_get_connect_status(), but returns ...