diff --git a/exec/msglist.js b/exec/msglist.js
index 784d459647854d6591dfaa8e8e1c061a1c75eab7..582b7c0cb80bb758b5eac010b6299cb6b49f6cb4 100644
--- a/exec/msglist.js
+++ b/exec/msglist.js
@@ -322,6 +322,14 @@ function help()
 	console.pause();
 }
 
+function pause()
+{
+	if(typeof options.pause == "number")
+		mswait(Number(options.pause) * 1000);
+	else if(options.pause !== false)
+		console.pause();
+}
+
 function list_msg(msg, digits, selected, sort, msg_ctrl, exclude, is_operator)
 {
 	var color = color_cfg.column[0];
@@ -1040,10 +1048,11 @@ function list_msgs(msgbase, list, current, preview, grp_name, sub_name)
 						case 'R':
 							if(mail) {
 								mail_reply(list[current], key == 'A');
-								console.pause();
+								pause();
 							} else {
 								console.clear();
 								bbs.post_msg(msgbase.subnum, list[current]);
+								pause();
 								return true;
 							}
 							break;
@@ -1064,7 +1073,7 @@ function list_msgs(msgbase, list, current, preview, grp_name, sub_name)
 							break;
 						case 'M':
 							mail_reply(list[current]);
-							console.pause();
+							pause();
 							break;
 						case 'D':
 							console.clearline();
@@ -1237,16 +1246,17 @@ function list_msgs(msgbase, list, current, preview, grp_name, sub_name)
 			case 'R':
 				if(mail) {
 					mail_reply(list[current], key.toUpperCase() == 'A');
-					console.pause();
+					pause();
 				} else {
 					console.clear();
 					bbs.post_msg(msgbase.subnum, list[current]);
+					pause();
 					return true; // reload msgs
 				}
 				break;
 			case 'M':
 				mail_reply(list[current]);
-				console.pause();
+				pause();
 				break;
 			case 'S':
 				if(sort == undefined)