AFAIK, all M1 data supplied with Zorro has bar end timestamps. The discrepancy might be due to rounding differences. Here's a simple script for printing time stamps and prices:
function run()
{
BarPeriod = 1;
set(LOGFILE);
printf("#n%.5f %.5f %.5f %.5f", priceOpen(), priceHigh(), priceLow(), priceClose());
}
The price in parentheses in the log is indeed the open, and the close would probably make more sense - we'll change that in a future version and will also look in the rounding issue. When you set Verbose to 3, it prints the open, high, low, and close.