Procedure to upgrade Access-Point IOS software is very easy. Is as difficult as upgrade Cisco Router IOS. Difference is that an AP has a directory in flash containing image software an directories for the web management interface. Upgrade needs to extract all those files into the flash, so we have a different command for this task.

Initial status of the AP used for this post is:

Cisco IOS Software, C1200 Software (C1200-K9W7-M), Version 12.3(4)JA, RELEASE SOFTWARE (fc2)

And the flash content:

sh flash:Directory of flash:/2 -rwx 618 Mar 1 2002 00:00:45 +00:00 env_vars
8 drwx 512 Aug 23 2005 17:25:19 +00:00 c1200-k9w7-mx.123-4.JA
3 -rwx 2072 Mar 1 2002 00:03:29 +00:00 private-multiple-fs
7741440 bytes total (2927104 bytes free)

Command is archive download-sw. With correct parameters as the TFTP server address and the IOS package name we can easily do the upgrade process:

ap# archive download-sw /overwrite /reload tftp://172.17.5.101/c1200-k9w7-tar.123-8.JEE.tar
examining image…
Loading c1200-k9w7-tar.123-8.JEE.tar from 172.17.5.101 (via BVI1): !
extracting info (274 bytes)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 5109760 bytes]
Image info:
Version Suffix: k9w7-.123-8.JEE
Image Name: c1200-k9w7-mx.123-8.JEE
Version Directory: c1200-k9w7-mx.123-8.JEE
Ios Image Size: 4372992
Total Image Size: 5110272
Image Feature: WIRELESS LAN
Image Family: C1200
Wireless Switch Management Version: 1.0
Not enough free space to download w/o first
deleting existing and/or current version(s)…
Deleting flash:/c1200-k9w7-mx.123-8.JEE…done.
Deleting flash:/c1200-k9w7-mx.123-4.JA…done.
Extracting files…
Loading c1200-k9w7-tar.123-8.JEE.tar from 172.17.5.101 (via BVI1): !extracting info (274 bytes)
c1200-k9w7-mx.123-8.JEE/ (directory) 0 (bytes)
c1200-k9w7-mx.123-8.JEE/html/ (directory) 0 (bytes)
c1200-k9w7-mx.123-8.JEE/html/level/ (directory) 0 (bytes)
c1200-k9w7-mx.123-8.JEE/html/level/1/ (directory) 0 (bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/appsui.js (557 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/back.shtml (506 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/cookies.js (5026 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/forms.js (17486 bytes)!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/sitewide.js (15991 bytes)!!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/stylesheet.css (3214 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/config.js (23591 bytes)!!!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/popup_capabilitycodes.shtml.gz (1015 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/filter.js.gz (1801 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/filter_vlan.js.gz (1315 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/filter_mac_ether.js.gz (1710 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/security.js.gz (957 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/vlan.js.gz (902 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ssid.js.gz (3989 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/dot1x.js.gz (982 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/network-if.js.gz (1833 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/stp.js.gz (911 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ap_assoc.shtml.gz (6032 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ap_event-log.shtml.gz (4366 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ap_home.shtml.gz (6160 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ap_network-if.shtml.gz (3885 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ap_network-map.shtml.gz (4326 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ap_services.shtml.gz (4186 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ap_system-sw.shtml.gz (3382 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/ap_contextmgr.shtml.gz (4187 bytes)!
c1200-k9w7-mx.123-8.JEE/html/level/1/images/ (directory) 0 (bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/ap_title_appname.gif (1883 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_button.gif (1211 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_button_1st.gif (1171 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_button_cbottom.gif (318 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_button_current.gif (1206 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_button_endcap.gif (878 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_button_encap_last.gif (333 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_button_last.gif (386 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_button_nth.gif (1177 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_leftnav_dkgreen.gif (869 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_leftnav_green.gif (879 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_leftnav_upright.gif (64 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/apps_leftnav_yellow.gif (881 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/arrowdown_red.gif (108 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/arrowup_green.gif (108 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/corner_ur_7.gif (53 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/dkgreenmask11_up.gif (113 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/dkgreenmask28_upright.gif (110 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/grn_vertlines_bottom.gif (149 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/grn_vertlines_top.gif (141 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/hinav_plus.gif (56 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/left_bkg.gif (146 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/list_data.gif (122 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/logo.gif (29454 bytes)!!!!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/pixel.gif (49 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/sitewide_downleft.gif (53 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/sitewide_help_off.gif (934 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/sitewide_help_on.gif (934 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/sitewide_print_off.gif (111 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/sitewide_print_on.gif (111 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/spacer.gif (49 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/whitemask11_botleft.gif (62 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/whitemask11_upright.gif (61 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/event_alert.gif (73 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/event_critical.gif (73 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/event_debugging.gif (73 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/event_emergency.gif (73 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/event_error.gif (73 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/event_information.gif (73 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/event_notification.gif (73 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/event_warning.gif (73 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/1/images/check_mark.gif (71 bytes)
c1200-k9w7-mx.123-8.JEE/html/level/15/ (directory) 0 (bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_assoc_adv.shtml.gz (4181 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_event-log_config-options.shtml.gz (6150 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_event-log_notif-options.shtml.gz (3156 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_express-setup.shtml.gz (10459 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_express-security.shtml.gz (13930 bytes)!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/def_broadcast-ssid.shtml.gz (1259 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/def_eap-security.shtml.gz (1787 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/def_no-security.shtml.gz (1578 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/def_wep-security.shtml.gz (1593 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/def_wpa-security.shtml.gz (1849 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_network-if_ipaddress.shtml.gz (5012 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_network-if_802-11.shtml.gz (6457 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_network-if_802-11_b.shtml.gz (6794 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_network-if_802-11_c.shtml.gz (20183 bytes)!!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/dBm_mW_translation_table.shtml.gz (1402 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_network-if_802-11_d.shtml.gz (4513 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_network-if_ethernet.shtml.gz (4762 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_network-if_ethernet_b.shtml.gz (5671 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_network-map_ap-adjacent-list.shtml.gz (4277 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec.shtml.gz (7631 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_ap-client-security.shtml.gz (24900 bytes)!!!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_ap-key-security.shtml.gz (12783 bytes)!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_local-admin-access.shtml.gz (7468 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_network-security_a.shtml.gz (10738 bytes)!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_network-security_b.shtml.gz (5798 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_lrs.shtml.gz (5558 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_lrs_b.shtml.gz (9045 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_lrs_c.shtml.gz (6689 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_ap-client-security-adv_a.shtml.gz (5472 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_ap-client-security-adv_b.shtml.gz (5553 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_ap-client-security-adv_c.shtml.gz (5158 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_ap-client-security-adv_d.shtml.gz (4090 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_ids_mfp.shtml.gz (4360 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_ids_mfp_stats.shtml.gz (4120 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_dot1x-security.shtml.gz (6877 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_sec_dot1x-certificates.shtml.gz (11171 bytes)!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_arp.shtml.gz (3501 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_cdp.shtml.gz (5484 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_console-telnet.shtml.gz (7138 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_dns.shtml.gz (4069 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_filters.shtml.gz (5712 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_filters-ip.shtml.gz (8948 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_filters-mac.shtml.gz (4491 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_filters-ether.shtml.gz (4343 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_hot-standby.shtml.gz (6032 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_http.shtml.gz (6304 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_mobile-ip-b.shtml.gz (7199 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_mobile-ip-c.shtml.gz (4619 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_mobile-ip-d.shtml.gz (5679 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_mobile-ip.shtml.gz (6568 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_qos-traffic.shtml.gz (8666 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_qos.shtml.gz (11662 bytes)!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_qos_adv.shtml.gz (4942 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_voice.shtml.gz (4578 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_voice-traffic.shtml.gz (6859 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_snmp.shtml.gz (8419 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_sntp.shtml.gz (6299 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_vlan.shtml.gz (12856 bytes)!!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_services_stp.shtml.gz (7016 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_stationview-client_ltest.shtml.gz (5961 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_system-sw_upgrade-b.htm (225 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_system-sw_upgrade-b.shtml.gz (6712 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_system-sw_upgrade.htm (223 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_system-sw_upgrade.shtml.gz (6746 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_system-sw_upgrade_poll.htm (228 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_system-sw_upgrade_poll.shtml (3590 bytes)
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_system-sw_sysconfig.shtml.gz (7150 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_stationview-client.shtml.gz (6069 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_contextmgr_ap.shtml.gz (5277 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_contextmgr_scm.shtml.gz (6177 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_contextmgr_scm-groups.shtml.gz (8003 bytes)!!
extracting c1200-k9w7-mx.123-8.JEE/html/level/15/ap_contextmgr_scm_summary.shtml.gz (5559 bytes)!
extracting c1200-k9w7-mx.123-8.JEE/c1200-k9w7-mx.123-8.JEE (3707172 bytes)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
extracting c1200-k9w7-mx.123-8.JEE/5001.img (131328 bytes)!!!!!!!!!!!!!!!!!!!!!!!!!!
extracting c1200-k9w7-mx.123-8.JEE/5101.img (131328 bytes)!!!!!!!!!!!!!!!!!!!!!!!!!!
extracting c1200-k9w7-mx.123-8.JEE/6301.img (131328 bytes)!!!!!!!!!!!!!!!!!!!!!!!!!
extracting c1200-k9w7-mx.123-8.JEE/6701.img (131328 bytes)!!!!!!!!!!!!!!!!!!!!!!!!!!
extracting c1200-k9w7-mx.123-8.JEE/6701_cal.img (131328 bytes)!!!!!!!!!!!!!!!!!!!!!!!!!!
extracting c1200-k9w7-mx.123-8.JEE/info (274 bytes)
extracting info.ver (274 bytes)!!
[OK - 5109760 bytes]
New software image installed in flash:/c1200-k9w7-mx.123-8.JEE
Configuring system to use new image…done.
Requested system reload skipped due to unsaved config changes.

At the end of the process we can read a message aying that the reload was skipped due to unsaved config changes. We can go on reloading the AP without problems.

ap# reloadSystem configuration has been modified. Save? [yes/no]: no
Proceed with reload? [confirm]

And after reboot we have this:

Cisco IOS Software, C1200 Software (C1200-K9W7-M), Version 12.3(8)JEE, RELEASE SOFTWARE (fc1)