diff --git a/firmware/application/apps/gps_sim_app.cpp b/firmware/application/apps/gps_sim_app.cpp
index 83f721aae078d7a70c29c82313cb3f92d6c8dbe9..6bb5683bf60dd2138a63bd43b3837cc532f6b377 100644
--- a/firmware/application/apps/gps_sim_app.cpp
+++ b/firmware/application/apps/gps_sim_app.cpp
@@ -82,7 +82,7 @@ void GpsSimAppView::on_file_changed(std::filesystem::path new_file_path) {
 	auto file_size = data_file.size();
 	auto duration = (file_size * 1000) / (1 * 2 * sample_rate);
 	
-	progressbar.set_max(file_size);
+	progressbar.set_max(file_size / 1024);
 	text_filename.set(file_path.filename().string().substr(0, 12));
 	text_duration.set(to_string_time_ms(duration));
 	
diff --git a/firmware/baseband/proc_gps_sim.cpp b/firmware/baseband/proc_gps_sim.cpp
index 230c0bda75573b729f69606526408faa44bb5118..344332fc6c0e346aff8dd4a12e075c50d8865e3d 100644
--- a/firmware/baseband/proc_gps_sim.cpp
+++ b/firmware/baseband/proc_gps_sim.cpp
@@ -58,34 +58,18 @@ void ReplayProcessor::execute(const buffer_c8_t& buffer) {
 	}
 	
 	// Fill and "stretch"
-	for (size_t i = 0; i < buffer.count; i++) {
-		/*if (i & 3) {
-			buffer.p[i] = buffer.p[i - 1];
-		} else {
-			auto re_out = iq_buffer.p[i >> 3].real() ;
-			auto im_out = iq_buffer.p[i >> 3].imag() ;
-			buffer.p[i] = { (int8_t)re_out, (int8_t)im_out };
-		}*/
-                /*
-                if (i % 8 != 0) {
-			buffer.p[i] = buffer.p[i - 1];
-		} else {
-			auto re_out = iq_buffer.p[i/8].real() ;
-			auto im_out = iq_buffer.p[i/8].imag() ;
-			buffer.p[i] = { (int8_t)re_out, (int8_t)im_out };
-		}*/
-                
-                auto re_out = iq_buffer.p[i].real() ;
-	        auto im_out = iq_buffer.p[i].imag() ;
+	for (size_t i = 0; i < buffer.count; i++) {               
+        auto re_out = iq_buffer.p[i].real() ;
+	    auto im_out = iq_buffer.p[i].imag() ;
 		buffer.p[i] = { (int8_t)re_out, (int8_t)im_out };
 	}
 	
 	spectrum_samples += buffer.count;
 	if( spectrum_samples >= spectrum_interval_samples ) {
 		spectrum_samples -= spectrum_interval_samples;
-		//channel_spectrum.feed(iq_buffer, channel_filter_pass_f, channel_filter_stop_f);
-		
-		txprogress_message.progress = bytes_read;	// Inform UI about progress
+
+		txprogress_message.progress = bytes_read / 1024;	// Inform UI about progress
+
 		txprogress_message.done = false;
 		shared_memory.application_queue.push(txprogress_message);
 	}